环境要求:
- 如果需要图形界面,需要在Ubuntu系统安装,否则centos系统安装时是没有问题的(web端和命令行进行任务提交)
- 安装过程需要有另外一台控制端机器(注意:区别于集群所在的任何一台服务器!!!),控制端和集群服务器确保ssh服务开通
- 集群中个节点的账户和密码确保一致
- 集群中每台服务器确保有sudo权限
- 安装服务器所在机器要能*,国内网络下载不了k8s镜像,如果翻不出去,请按照下表自行下载对应tag的镜像
gcr.io/google_containers/hyperkube |
v1.9.9 |
gcr.io/google_containers/kube-controller-manager |
v1.9.9 |
gcr.io/google_containers/kube-apiserver |
v1.9.9 |
gcr.io/google_containers/kube-scheduler |
v1.9.9 |
gcr.io/google_containers/etcd |
3.2.17 |
gcr.io/google_containers/kubernetes-dashboard-amd64 |
v1.8.3 |
gcr.io/google_containers/pause-amd64 |
3.0 |
第1步:准备工作(在集群节点以外的任意机器上操作)
1)拉取dev-box镜像(默认已经安装docker):
sudo docker pull docker.io/openpai/dev-box
启动dev-box容器
sudo docker run -itd \
-e COLUMNS=$COLUMNS -e LINES=$LINES -e TERM=$TERM \
-v /var/lib/docker:/var/lib/docker \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /pathHadoop:/pathHadoop \
-v /pathConfiguration:/cluster-configuration \
--pid=host \
--privileged=true \
--net=host \
--name=dev-box \
docker.io/openpai/dev-box
2)进入dev-box容器
sudo docker exec -it dev-box /bin/bash
3)转到命令操作路径
cd /pai/pai-management
4)制作启动文件
拷贝模板文件:
cd quick-start/quick-start-example.yaml ../quick-start.yaml
修改模板文件:
Machines:第一个IP是为master,后面的默认为worker;如果master和worker在同一台机器上,写1个ip 就ok
第2步:生成配置文件
python paictl.py cluster generate-configuration \
-i quick-start.yaml \
-o /path/to/cluster-configuration/dir
出现该图表示配置文件生成,在/path/to/cluster-configuration/dir路径可以查看,四个yaml文件
第3步:配置并安装k8s
python paictl.py cluster k8s-bootup \
-p /path/to/cluster-configuration/dir
该地方会有较长时间的停顿,检测python和docker环境安装
k8s镜像下载及容器启动,视网速情况而定,过程时间较长,耐心等待,曙光就在眼前
安装完成
此时,访问该web端:http://<master>:9090
第4步:安装pai相关服务
python paictl.py service start \
-p /path/to/cluster-configuration/dir
恭喜你,安装完成
耐心等待,正在拉取镜像,如果着急的话可以手动拉取
待上述组件安装完成后访问web端:http://<master>:9286
安装过程注意事项:
1)为了充分利用GPU所在的服务器,在以集群模式安装部署时,将master节点部署在普通(没有GPU)节点,worker节点全部部署在GPU所在服务器,达到硬件资源的充分利用。
具体方式为第一步配置文件中的第一个IP为master节点,后面的所有IP都为worker
2)在安装过程如果遇到问题,卸载掉重新再来
卸载open pai 组件:
python paictl.py service delete -p /path/to/cluster-configuration/dir
卸载k8s组件:
python paictl.py cluster k8s-clean -p /path/to/cluster-configuration/dir
3)安装完了以后出现类似的情况,不能彻底卸载pai需要删除etcd文件库,需要:rm –rf /var/etcd/data,然后重新安装
服务安装后出现类似的错误:Failed create pod sandbox