OpenPAI大规模人工智能平台安装部署文档
环境要求:
- 如果需要图形界面,需要在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
OpenPAI大规模人工智能平台安装部署文档的更多相关文章
- keepalived双机热备,安装部署文档
keepalived双击热备,安装部署文档: 下载目录:/apps/keepalived-1.2.7.tar.gz 1:---> yum install -y make wget 2:---&g ...
- LVS+Heartbeat安装部署文档
LVS+Heartbeat安装部署文档 发表回复 所需软件: ipvsadm-1.24-10.x86_64.rpmheartbeat-2.1.3-3.el5.centos.x86_64.rpmhear ...
- Sqlserver2008安装部署文档
Sqlserver2008部署文档 注意事项: 如果你要安装的是64位的服务器,并且是新机器.那么请注意,你需要首先需要给64系统安装一个.net framework,如果已经安装此功能,请略过这一步 ...
- EasyNVR无插件直播流媒体服务器云端集中管控的EasyNVS云管理平台安装使用文档
EasyNVS - EasyNVR云端集中管理服务 EasyNVS云管理平台是一套专门用于集中化管理EasyNVR 的解决方案. EasyNVR 采用主动注册的方式接入到 EasyNVS, 再由 Ea ...
- supervisor安装部署文档和管理实例
Supervisord是用Python实现的一款非常实用的进程管理工具,类似于monit(关于monit见我的博客:用monit监控系统关键进程),monit和supervisord的一个比较大的差异 ...
- zabbix3.0安装部署文档
zabbix v3.0安装部署 摘要: 本文的安装过程摘自http://www.ttlsa.com/以及http://b.lifec-inc.com ,和站长凉白开的<ZABBIX从入门到精通v ...
- MetaQ安装部署文档
一.MetaQ安装部署情况: 地点 IP Broker ID Master/Slave Slave ID:Group 合肥 192.168.52.23 Slave 1:meta-slave-group ...
- Oracle Grid Infrastructure安装部署文档
1. 部署环境步骤 1.1 软件环境 操作系统: CentOS release 6.5 oracle安装包: linux.x64_11gR2_grid.zip linux.x64_11gR2_data ...
- Oracle RAC安装部署文档
1. 部署环境步骤 1.1 软件环境 操作系统:CentOS release 6.5(推荐使用5.*的系统)192.168.1.151 racnode1 192.168.1.152 ...
随机推荐
- Process.waitFor()导致主线程堵塞问题
今日开发的时候使用jdk自带的运行时变量 RunTime.getRunTime() 去执行bash命令.因为该bash操作耗时比较长,所以使用了Process.waitFor()去等待子线程运行结束. ...
- 20181030NOIP模拟赛T3
2017种树 2017共有N棵树从0到N-1标号.现要把这些树种在一条直线上,第i棵树的种植位置X[i]如下确定: X[0] = X[0] MOD L: X[i] = (X[i-1]*A+B) MOD ...
- datatable去掉表头默认排序
禁用排序:"ordering":false 某一列禁用排序:"orderable":false 以某一列排序:"order":[[x,&qu ...
- easyui datagrid 异步加载数据时滚动条有时会自动滚到最底部的问题
在使用easyui 的datagrid异步加载数据时发现滚动条有时会自动滚到最底部.经测试发现,如果加载数据前没有选中行则不会出现这个问题.这样我们可以在重新异步加载数据前取消选中行就可以避免这个问题 ...
- 如何创建systemd定时任务
1. 如何创建一个定时任务,通过systemd系统 1. 如何创建一个定时任务,通过systemd系统 1.1. systemd中的timer 1.2. 自定义定时任务 1.2.1. 具体步骤 1.2 ...
- JavaScript - 异步的前世今生
在开始接触JavaScript的时候,书上有一句话我记忆深刻,JavaScript是一门单线程语言,不管从什么途径去获取这个消息,前端开发者都会记住,哦~~,JavaScript是一门单线程语言, ...
- [转]关于sdk更新Android SDK Tools 25.3.1版本后使用sdk manager闪退
昨天这两个manager还工作正常,今天更新了一下,发现不可用了,运行avd manager和sdk manager没反应,搜了好多文章,然后看到了下这篇文章<关于sdk更新Android SD ...
- centos7安装mysql5.7.18笔记
重装了一下系统,装了centos7,但是centos7下默认没有安装mysql,有MariaDB数据库,网上的解释是: “MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用 ...
- go学习笔记-错误处理
错误处理 通过内置的错误接口提供了非常简单的错误处理机制. error类型是一个接口类型 type error interface { Error() string } 可以在编码中通过实现 erro ...
- tensorflow简单实现卷积前向过程
卷积,说白了就是对应位置相乘再求和,卷积操作用广泛应用于图像识别,在自然语言处理中也开始应用,用作文本分类问题. 卷积操作最重要的部分就是卷积核或者说过滤器 1.常用过滤器尺寸为3*3或者5*5 2. ...