GPU服务器环境搭建

前言

最近,因个人兴趣做了一点视频类的项目实践,部分流程需要GPU服务器,所以写一篇文章记录一下购买GPU服务器后,需要做的一些操作。

首先,因为各种模型的资源主要在海外,所以一开始选择AWS上的GPU,但因为有soft limit(AWS避免用户不小心使用这些比较贵的资源,需要申请,才能创建相应的EC2实例类型,申请需要时间),所以又换回了阿里云。

阿里云购买方式很简单,选择对应的GPU机器,然后勾选安装CUDA环境,这样阿里云在初始化实例化会自动帮我们安装好CUDA这些基础环境,方便我们搭建深度学习环境。

我的配置是:

  • ubuntu 22.04

  • GPU A10

  • 硬盘100G

大概11块钱一小时。

设置http代理

国内的服务器下载海外资源是很慢的,之前我在 [国内服务器如何下载海外资源](https://mp.weixin.qq.com/s/-qeuaT5GMOdoIaz90XFBjQ)一文中提过解决方案,这次也依旧用这种方式,最为简单。

首先,开启阿里云1080端口,用于设计proxy。a0014478e5958790aaed1b4365c929a7.png

然后在本地(我的是Mac,所以命令是Unix的,如果你是windows可能需要调整)通过ssh命令开启远程流量转发。

ssh -i ~/.ssh/rsa_key -fnqgNTR server_ip:1080:localhost:7890 root@server_ip

因为ssh默认只能监听localhost,需要开启GatewayPorts才能监听其他ip,所以我们需要改一下配置文件。

> vim /etc/ssh/sshd_config

# GatewayPorts: no

------ 改成  -----

GatewayPorts: yes

然后在服务器上设置http与https的proxy,则可使用MacOS的代理来访问海外资源,从而提升下载速度了。

export http_proxy="127.0.0.1:1080"
export https_proxy="127.0.0.1:1080"

可以通过curl -vv http://www.google.com命令判断一下http_proxy是否生效。

设置conda代理

很多AI项目都建议使用anaconda来安装环境,访问download url:https://www.anaconda.com/download

找到你的平台,比如ubuntu就是Linux平台。

b38cd03a5ea64053d116391c58a54fbb.png

复制链接,在服务器上,使用wget命令下载,因为设置了proxy,所以下载速度不错:

wget https://repo.anaconda.com/archive/Anaconda3-2023.09-0-Linux-x86_64.sh

下载后,执行命令安装,conda init相关的都选yes,这个shell脚本就会帮你弄好所有的设置。

base Anaconda3-2023.09-0-Linux-x86_64.sh

安装后,再设置一下conda的proxy,毕竟conda默认从海外拉资源,要设置conda proxy,首先需要先创建.condarc文件:

vim ~/.condarc

然后在文件中,写入如下配置:

proxy_servers:
  http: http://127.0.0.1:1080
  https: http://127.0.0.1:1080

ssl_verify: false

这样conda获取资源速度也会比较快了。

下载google云盘上的资源

很多项目会将自己的模型放到gogle云盘上,一般我们下载到MacOS本地,然后再通过scp将模型上传到服务器上,另外一个方法就是使用gdown(https://github.com/wkentaro/gdown)。

具体可以看gdown的文档,主要是学习一下怎么获得资源在google云盘上的唯一id,然后就可以通过gdown去下载了。

17f5ede0e9a6fd9307d24d08646685d8.png

基础命令

我一般会使用vscode的ssh功能去链接服务器,这样可以直接通过类似GUI的形式访问项目中的各种文件,也方便我修改代码。

此外,我还会安装一下小工具帮助我管理服务器。

apt update
apt install jnettop htop

jnettop:流量查看工具,通过它可以看到某些软件在拉取数据时,网络情况。比如某些流程卡主了,就可以看看,是不是在拉取网络数据,从而判断是不是因为网络问题导致这里卡主了,我感觉在国内这样的开发环境,快速的判断网络是否ok是一个硬技能...

htop:top工具增强版,动态查看当前活跃的、占用资源高的进程。有一些项目,启动预测时,但从命令行看,似乎卡死了,此时就可以开新的窗口,然后通过htop查看CPU使用情况,从而判断项目是不是在running。

结尾

以上就是我对阿里云GPU服务器会做的常规操作。

今天还体验了一下,怎么扩容,一开始默认买的是40G磁盘空间的服务器,实践3~4个项目,磁盘空间就满了,进行了扩容,阿里云有相应的视频教程,很清晰。

整体而已,除了受限于国内网络问题,阿里云还是挺好用的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
slurm-gpu集群搭建是一种用于创建高性能计算环境的解决方案,它能够有效地利用多个GPU来加速任务执行。以下是关于如何搭建slurm-gpu集群的简要步骤: 1. 购买所需硬件:首先,您需要购买足够数量的GPU服务器和交换机来组成集群。确保GPU服务器的型号和配置都兼容并且能满足您的计算需求。 2. 安装并配置操作系统:在每个服务器上安装您选择的操作系统,并确保操作系统和组件的版本兼容。建议选择一个常用的Linux发行版,如Ubuntu或CentOS。 3. 安装Slurm:使用包管理器或从源代码编译安装Slurm调度系统。Slurm是一个开源的高性能计算和作业调度系统,为集群提供了任务分配和管理功能。 4. 配置Slurm集群:编辑Slurm配置文件以设置集群的参数,例如节点名称、队列配置、资源限制等。确保每个节点都被正确地添加到Slurm的集群配置中。 5. 安装GPU驱动程序:为每个服务器上的GPU安装正确的驱动程序,并确保它们在操作系统中正确识别和配置。 6. 测试和优化:在完成集群配置后,进行一些基准测试,以确保GPU可以被正确地调用和使用。优化Slurm和GPU驱动程序的配置,以最大程度地提高集群的性能。 7. 添加用户和作业:为集群上的用户创建账户,并允许他们提交作业。根据需要,在Slurm中配置用户权限和资源限制。 总结:通过购买适当的硬件,安装并配置操作系统、Slurm和GPU驱动程序,以及进行测试和优化,您可以成功地搭建一个slurm-gpu集群。此集群能够高效地利用多个GPU来加速计算任务的执行,为您提供一个强大的计算环境。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

懒编程-二两

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值