OpenPAI(开源人工智能集群管理平台)部署指南
OpenPAI 作为开源平台,提供了完整的 AI 模型训练和资源管理能力,能轻松扩展,并支持各种规模的私有部署、云和混合环境。环境要求:服务器操作系统Ubuntu 16.04。每台服务器都有静态 IP 地址,并确保服务器可以相互通信。确保服务器可以访问互联网,特别是 Docker Hub 或其镜像服务器。 在部署过程中需要拉取 OpenPAI 的 Docker 映像。确保...
环境要求:
-
服务器操作系统Ubuntu 16.04。
-
每台服务器都有静态 IP 地址,并确保服务器可以相互通信。
-
确保服务器可以访问互联网,特别是 Docker Hub 或其镜像服务器。 在部署过程中需要拉取 OpenPAI 的 Docker 映像。
-
确保 SSH 服务已启用,所有服务器使用相同的用户名、密码,并启用 sudo 权限。
-
确保 NTP 服务已启用。
-
建议不提前安装 Docker 组件,如果已安装,确保 Docker 版本高于 1.26。
-
OpenPAI 会保留部分内存和 CPU 资源来运行服务,须确保服务器有足够的资源来运行机器学习作业。 详情参考硬件要求。
-
OpenPAI 的服务器不能提供其它服务。 OpenPAI 会管理服务器的所有 CPU、内存和 GPU 资源。 如果服务器上有其它的服务负载,可能导致资源不足而产生各种问题。
1、安装操作系统
https://blog.csdn.net/weixin_40720226/article/details/87920049
2、安装docker
sudo curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun #安装docker
sudo systemctl start docker #启动docker
sudo systemctl enable docker #设置docker开机启动
3、安装dev-box
sudo docker pull docker.io/openpai/dev-box:v0.17.0
sudo docker run -itd \
-e COLUMNS=$COLUMNS -e LINES=$LINES -e TERM=$TERM \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /pathConfiguration:/cluster-configuration \
-v /hadoop-binary:/hadoop-binary \
--pid=host \
--privileged=true \
--net=host \
--name=dev-box \
docker.io/openpai/dev-box:v0.17.0
sudo docker exec -it dev-box /bin/bash
cd /pai
4、从模板生成配置
您也可以自己编写配置,具体操作参考https://github.com/microsoft/pai/blob/master/docs/zh_CN/pai-management/doc/customized-configuration.md
- 编辑模板文件
vim /pai/deployment/quick-start/quick-start.yaml
# quick-start.yaml
# (Required) Please fill in the IP address of the server you would like to deploy OpenPAI
# (必需)请填写要部署OpenPAI的服务器的IP地址
machines:
- 192.168.159.13
- 192.168.159.14
- 192.168.159.15
# (Required) Log-in info of all machines. System administrator should guarantee
#(必需)登录所有计算机的信息。系统管理员应保证
# that the username/password pair or username/key-filename is valid and has sudo privilege.
#用户名/密码对或用户名/密钥文件名有效且具有sudo权限。
ssh-username: root
ssh-password: ubuntu
# (Optional, default=None) the key file that ssh client uses, that has higher priority then password.
#(可选,默认值为None)ssh客户端使用的密钥文件,其优先级高于password。
#ssh-keyfile-path: <keyfile-path>
# (Optional, default=22) Port number of ssh service on each machine.
#(可选,默认值为22)每台计算机上的ssh服务端口号。
#ssh-port: 22
# (Optional, default=DNS of the first machine) Cluster DNS.
#(可选,默认值为第一台计算机的DNS)群集DNS。
#dns: <ip-of-dns>
# (Optional, default=10.254.0.0/16) IP range used by Kubernetes. Note that
#(可选,默认值为10.254.0.0/16)Kubernetes使用的IP范围。请注意
# this IP range should NOT conflict with the current network.
#此IP范围不应与当前网络冲突。
#service-cluster-ip-range: <ip-range-for-k8s>
#服务群集ip范围:<ip-range-for-k8s>
- 生成配置文件
cd /pai
python paictl.py config generate -i /pai/deployment/quick-start/quick-start.yaml -o ~/pai-config -f
- 更新docker tag以使用新版本
vi ~/pai-config/services-configuration.yaml
docker-tag: v0.x.y #需要将v0.x.y修改成您需要的版本
- 修改GPU的数量与类型
快速启动将生成具有1个gpu的通用类型的节点,这可能不适合您的情况,例如,如果您有两种类型的计算机,并且一种类型具有4张Tesla K80 gpu卡,另一种具有2张Tesla P100卡,则应修改~/pai-config/layout.yaml如下:
machine-sku:
k80-node:
mem: 40G
gpu:
type: Tesla K80
count: 4
cpu:
vcore: 24
os: ubuntu16.04
p100-node:
mem: 20G
gpu:
type: Tesla P100
count: 2
cpu:
vcore: 24
os: ubuntu16.04
machine-list:
- hostname: xxx
hostip: yyy
machine-type: k80-node
- hostname: xxx
hostip: yyy
machine-type: p100-node
5、部署Kubernetes
cd /pai
./paictl.py cluster k8s-bootup -p ~/pai-config
kubectl get node
kubectl get po -n kube-system
安装完成后,可以通过访问http://<master>:9090
来检查Kubernetes的状态。
注意:< master >表示主节点IP
6、启动openPAI服务
运行过程中需要输入集群的ID,默认为pai
cd /pai
python paictl.py config push -p ~/pai-config
python paictl.py service start
待运行完毕,没有报错信息则,则表示安装成功,可以使用http://<master>
来访问openPAI平台,默认用户:admin,默认密码:admin-password
更多推荐
所有评论(0)