首先准备两台服务器(必须为Ubuntu16.04 Server),一台作为master,一台作为worker(master和worker由我们自己指定)。每台服务器都必须要有的:

1、ssh服务(这在安装Ubuntu16.04 Server的时候有选择)

2、docker-ce

3、两台服务器必须要有相同的用户名以及密码

4、用于登录每台计算机的用户名应具有sudo权限

5、两台服务器要在同一个网段中

准备好之后,我们需要先在master的docker中执行以下命令:

sudo docker pull docker.io/openpai/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

sudo docker exec -it dev-box /bin/bash

cd /pai/pai-management 

第一条指令是拉dev-box的镜像

第二条指令是运行dev-box

第三条指令是进入dev-box

然后

cd quick-start

cp quick-start-example.yaml ../quick-start.yaml

cd ..

vi quick-start.yaml

 

master-ip写你指定的master的ip

worker-ip就是另外一台服务器的ip

ssh-username就是你的服务器的username

ssh-password就是相应的password

完成之后

python paictl.py cluster generate-configuration \
  -i quick-start.yaml \
  -o /path/to/cluster-configuration/dir

/path/to/cluster-configuration/dir 这个路径可以随意放置,建议写成 /cluster-configuration/

然后进入 /cluster-configuration/ 会发现有四个.yaml文件,一般是不用改的。

然后执行

python paictl.py cluster k8s-bootup \
  -p /path/to/cluster-configuration/dir

同样,这里的/path/to/cluster-configuration/dir 写成你放那四个.yaml配置文件的地方,/cluster-configuration/

这时可能要等一段时间,执行快完成的时候如果出现kube-proxy已经存在的错误的话,执行

python paictl.py cluster k8s-clean -p /cluster-configuration  这个paictl.py文件在/pai/pai-management/ 目录下

然后再执行第二步的命令就可以了。

此时你可以访问 

http://<master>:9090

这个网页

然后就是最后一步

python paictl.py service start \
  -p /path/to/cluster-configuration/dir

同样的/path/to/cluster-configuration/dir改为你放四个.yaml文件的目录,这里是 /cluster-configuration/

这里执行也要等一段时间,如果出现了driver-one-shot等待,这里可以等一段时间,如果等待时间过长的话,直接终止,然后执行

python paictl.py service delete -p /cluster-configuration

这里的/cluster-configuration改为你存放四个.yaml文件的目录,相当于清理容器内容

然后再执行

python paictl.py cluster k8s-clean -p /cluster-configuration

这个命令,相当于卸载k8s

然后再从第二步开始执行。

如果出现zookeeper错误的话,你执行 

`echo hostname`

 这个命令,然后进入你存放四个yaml文件的目录,查看cluster-configuration.yaml这个文件,看看machine-list中的master的hostname是否和执行上面的命令的hostname不一样,如果不一样则修改回和执行上面的命令一样的hostname。

如果你发现执行上面的命令和.yaml文件一样的hostname,那很遗憾,执行这两条命令吧:

python paictl.py service delete -p /cluster-configuration

python paictl.py cluster k8s-clean -p /cluster-configuration

 然后从第二步开始执行。

如果一直没报错的话,恭喜你安装成功可以访问

http://<master>:9286

这个网页,如果你发现你的GPU没有显示信息,很可能是因为你的GPU版本太低,楼主的GeForce GT 730就是不支持显示,但不代表没有GPU。

然后就是如何提交代码了。

我们这里使用vscode,首先安装vscode,最新版就可以,然后下载vs的插件https://marketplace.visualstudio.com/items?itemName=ms-toolsai.vscode-ai 点击install然后再vscode里面安装即可。

安装完成之后会有这些东西

然后右击PAI-Cluster  Add Configuration 

这个username 是 admin

password 是admin-password 

这个账号密码是默认的,如何添加新的账户,我还没研究好。

然后其他的uri将ip改为你的master的ip,端口别改。

然后点finish你会发现你的PAI-Cluster目录里面多了一个东西,然后右击它,点击submit job,会进入一个json文件,需要改的地方为

改为这个,*为通配符,这里是提交.py文件,如果你要提交其他东西的话,如名字为data.xls你可以再includes里面再加入"*.xls"即可。

这个是docker的镜像,你可以去docker-hub找到。

这个codeDir是存放代码文件的目录,你可以右击PAI-Clusters目录下的东西,然后点击open storage explorer,就可以看到一些目录,你可以自己创一个目录,或者使用里面已经有的目录,在codeDir添加上去就可以了。

然后这个command 就是你执行这个代码文件的命令,如python 123.py (如果有参数,可以添加)。

然后点击Finish就可以了,然后他就会上传。

如果出现submit fail 没有这个文件的是因为你的AI Storage Explorer里面没有这个目录,你可以自己添加进去。就像outputDir一样。

 

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐