部署
以下在本地部署的服务组件,除非机器硬件故障造成服务卡死或网络故障,几乎无需运维。对于不同厂家如NVIDIA/华为的GPU,系统会自动识别
需在本地部署的3个服务组件 :
worker agent
: 在GPU机器上部署的主机管理程序,用于获取该机器的GPU、CPU数量,内存大小,和管理用户创建的容器的生命周期(创建→销毁)ft agent
: 在GPU机器上部署的用于跨主机之间传输数据的程序,主要用于拷贝实例功能 。部署时会随worker agent一同部署以及管理proxy agent
: 用于代理用户访问容器实例的网络桥接服务,访问路径为:用户 → proxy agent → 容器, 而非用户 → 容器,当有若干用户与容器时具备集中管理的优势
以上3个服务在整套系统中的作用和位置请参考:
服务说明(必看)
worker agent 与 ft agent
本地服务器环境要求:
- Ubuntu或CentOS系统
- 安装有GPU驱动(如果是GPU主机)
- 可访问互联网(不需要公网IP)
服务介绍:
-
每台GPU服务器上均需要部署,此外agent程序会自动识别是NVIDIA还是华为的GPU(前提是机器上已经安装有对应GPU驱动)
-
该服务仅对当前所在服务器进行管理,因此服务异常时仅影响当前主机的使用,服务异常的来源可能有GPU驱动异常,GPU硬件异常、网络异常等
-
该服务在安装时会检查docker/nvidia-docker,如环境未满足要求的会自动进行安装(该过程不会影响当前服务器中的数据,可以放心执行)
-
不会对磁盘进行再格式化,不影响当前主机上存在的任何数据
proxy agent
本地服务器环境要求:
- Ubuntu系统
- 2核心,4GB内存以上的配置即可
- 可访问互联网(是否需要公网IP取决于您的需求,请看下方说明)
服务说明:
-
一个集群仅需部署一个该服务
-
该服务占用CPU/内存资源很低,如果无专用CPU机器,可以直接部署于某台GPU服务器之上,但需要注意的是该服务出现异常会导致所有容器无法访问,因此推荐您部署在一台相对稳定的机器上
-
开放必要的端口,7007和20000 ~ 60000端口。由于proxy agent所在主机的IP仅有一个,访问不同容器则需利用不同的端口加以区分,因此该主机需要开放一定范围的端口,推荐您开放:20000 ~ 60000端口。可用端口的数量会决定可创建的容量数量,如一个容器需要ssh、jupyterlab等服务,每个服务需要一个端口映射出去,因此每个容器需要3个左右的端口,以此估算可创建的容器数量规模,评估是否可以满足您的需求
-
该服务决定了您访问容器实例时的IP(或域名)地址,以及决定您的用户可以在哪里能访问容器。场景举例:
场景一: 如果您仅希望用户在实验室或办公室可以访问和使用容器,那么可以将该服务部署于只能在实验室/办公室局域网访问的某台机器上(注意所有GPU机器都需能访问到该proxy agent所在主机),这样用户必须在可以访问proxy agent所在主机的内网环境才可访问容器实例
场景二: 如果您希望用户在任何地方都可以通过公网访问到容器,那么将该服务部署于具有公网IP的主机上即可
开始安装
以下可对照 视频教程 安装
安装前请登录私有云管理员账号,找到菜单:配置
→ agent服务配置
。将会看到worker agent
与proxy agent
的配置文件(ft agent会自动随worker agent一起安装)。该配置文件有敏感信息,请勿泄露
安装worker agent 与 ft agent
以下在每台GPU服务器上进行安装:
Step.1 找到上面agent服务配置
页面中的worker agent
配置内容,根据您机器的实际情况以及配置中的注释说明进行相应修改,最后将配置内容保存于文件/etc/privatecloud/worker-agent.yaml
中
Step.2 执行命令开始安装(如果机器已经有docker也可以正常执行安装)
# 先下载安装程序pct (private cloud tools),此版本为X86_64版本程序
sudo curl -L -o /usr/local/bin/pct https://autodl-cloud.oss-cn-beijing.aliyuncs.com/privatecloud/tools/pct_x86_64
# 如果下载ARM 64版本的pct,使用下面的命令
sudo curl -L -o /usr/local/bin/pct https://autodl-cloud.oss-cn-beijing.aliyuncs.com/privatecloud/tools/pct_arm64
# 增加可执行权限
sudo chmod +x /usr/local/bin/pct
# 执行安装worker-agent
# 如果您需要指定docker的root dir,那么使用--docker-root-dir参数,比如:sudo pct install worker-agent --docker-root-dir /data/docker
sudo pct install worker-agent
# 验证是否正常启动,显示running为已启动
sudo systemctl status worker-agent.service
安装完成后,即可在AutoDL私有云管理后台看到有新的主机记录生成,然后编辑相关主机信息即可上架该主机
安装proxy agent
以下仅需在一台合适的服务器上进行部署:
Step.1 找到上面agent服务配置
页面中的proxy agent
配置内容,将配置内容保存于文件/etc/privatecloud/proxy-agent.yaml
中
Step.2 执行命令开始安装
# (如已安装请跳过)先下载安装程序pct (private cloud tools),此版本为X86_64版本程序
sudo curl -L -o /usr/local/bin/pct https://autodl-cloud.oss-cn-beijing.aliyuncs.com/privatecloud/tools/pct_x86_64
# 如果下载ARM 64版本的pct,使用下面的命令
sudo curl -L -o /usr/local/bin/pct https://autodl-cloud.oss-cn-beijing.aliyuncs.com/privatecloud/tools/pct_arm64
# 增加可执行权限
sudo chmod +x /usr/local/bin/pct
# 执行安装proxy-agent
sudo pct install proxy-agent
# 验证是否正常启动,显示running为已启动
sudo systemctl status proxy-agent.service
Step.3 系统后台设置IP地址和可分配端口范围
最后,需要将此机器的IP和开放的端口范围在您的管理后台录入生效。配置入口:配置
→ 初始化配置
→ proxy agent IP地址和端口范围
注意:需要确保该proxy所在主机的7007
端口和配置的端口范围中的端口是对外开放的,使用云主机时经常需要开放相应的安全组来开放端口