Difference between revisions of "GPU-Cluster(Docker)3.0 User Guide"

From IIIS-Systems
Jump to: navigation, search
(注意事项)
(使用GPU资源)
Line 34: Line 34:
 
1)连接VPN,访问 http://10.1.1.1:81/ui
 
1)连接VPN,访问 http://10.1.1.1:81/ui
  
2)使用申请的帐号和密码登录。登录后,单击左侧导航栏中的“应用管理”,单击右上角的“加号”,在界面中点击“json模式”,单击“从文件中读取”按钮,上传json文件。
+
2)使用申请的帐号和密码登录。登录后,单击左侧导航栏中的“应用管理”,单击右上角的“+创建应用”,在界面中点击“json模式”,单击“从文件中读取”按钮,上传json文件。
  
json文件的下载地址为:http://pan.baidu.com/s/1bpvawH5 在上传json文件之前,请修改json文件内容第2行"id"值中的xxx(其他内容不用修改),把xxx修改成“应用名”。
+
json文件的下载地址为:http://pan.baidu.com/s/1bpvawH5 上传json文件之后,请修改json文件内容第2行"id"值中的xxx(其他内容不用修改),把xxx修改成“应用名”。
  
应用名由用户命名,应用名中可以包含小写字母或数字,不能包含大写字母及标点符号,应用名不能重名。
+
应用名由用户命名,应用名中可以包含小写字母或数字,不能包含大写字母及标点符号,应用名不能重名。然后点击“创建”按钮,便可以创建应用。
  
上传json文件后,点击“创建”按钮,便可以创建应用。应用创建后,单击左侧导航栏中的“应用管理”,在“我的应用”中,单击应用名称,即可看到应用所在主机的IP地址和端口号。
+
应用创建后,单击左侧导航栏中的“应用管理”,在“我的应用”中,单击应用名称,即可看到应用所在主机的IP地址和端口号。
  
 
使用命令“ssh -p 端口号  VPN帐号名@IP地址” ,密码与VPN帐号的密码相同 , 即可登录。
 
使用命令“ssh -p 端口号  VPN帐号名@IP地址” ,密码与VPN帐号的密码相同 , 即可登录。

Revision as of 14:25, 23 November 2016

清华大学交叉信息研究院GPU-Cluster(Docker)3.0用户操作指南


申请GPU资源

需要使用GPU资源的用户,请把如下信息发送给尹伟老师,尹伟老师的邮箱是yw@mail.tsinghua.edu.cn,尹老师建立帐号并授权后,即可使用GPU资源。

1)帐号名

2)姓名

3)邮箱

4)电话

5)申请资源目的

6)使用期限

VPN的配置及使用

访问GPU集群时,需要连接VPN。关于VPN的配置及使用,请参见以下链接2.1节内容:http://wiki.iiis.systems/w/index.php/OpenStack_User_Guide

修改帐号的密码

1)连接VPN,访问 http://10.1.1.1:81/ui

2)使用申请的帐号和密码登录。登录后,单击右上角的第二个按钮,可以看到“个人中心”,在个人中心界面,用户可以修改帐号的密码。

使用GPU资源

用户使用GPU资源,操作步骤,如下:

1)连接VPN,访问 http://10.1.1.1:81/ui

2)使用申请的帐号和密码登录。登录后,单击左侧导航栏中的“应用管理”,单击右上角的“+创建应用”,在界面中点击“json模式”,单击“从文件中读取”按钮,上传json文件。

json文件的下载地址为:http://pan.baidu.com/s/1bpvawH5 上传json文件之后,请修改json文件内容第2行"id"值中的xxx(其他内容不用修改),把xxx修改成“应用名”。

应用名由用户命名,应用名中可以包含小写字母或数字,不能包含大写字母及标点符号,应用名不能重名。然后点击“创建”按钮,便可以创建应用。

应用创建后,单击左侧导航栏中的“应用管理”,在“我的应用”中,单击应用名称,即可看到应用所在主机的IP地址和端口号。

使用命令“ssh -p 端口号 VPN帐号名@IP地址” ,密码与VPN帐号的密码相同 , 即可登录。

注意事项

1)GPU集群通过docker为用户提供GPU资源,使用docker时,请把重要数据存放在用户的家目录下,即“/home/用户名”目录,该目录挂接ceph存储系统。即便容器出现问题,存放在该目录下的数据不会丢失。

2)用户基于基础镜像启动容器后,在容器中安装了新软件或搭建了实验环境,在更新或扩展该容器时,用户自己安装的软件或实验环境会被自动清除。如果用户希望保留自己安装的软件或实验环境,请参见本文档“自定义镜像”内容。

自定义镜像

1)用户什么时候需要自定义镜像?

用户基于基础镜像启动容器,并在容器中配置了实验环境,希望再启一个容器,容器中带有自己的实验环境,此时需要用到“自定义镜像”。

用户基于基础镜像启动容器,并在容器中安装了软件或配置了实验环境,在更新容器时,容器会删除用户安装的软件或实验环境,恢复到基础镜像提供的系统状态。如果用户希望

保留自己安装的软件或实验环境,需要用到自定义镜像。

2)制作自定义镜像的步骤

用户在容器环境内(用户发布应用所对应的环境),依次执行如下命令:

1> 登录镜像仓库:sudo docker login 10.1.0.180 使用VPN帐号名和VPN帐号的密码进行登录,当出现Login Succeeded提示,说明登录成功。

2> 基于当前容器产生镜像:sudo docker commit 容器主机名 10.1.0.180/项目名/镜像ID:镜像tag

上述命令中的“容器主机名”,用户可以执行hostname命令,进行查看;命令中的“项目名”需要用户自己在镜像仓库中创建项目,操作为:使用浏览器访问10.1.0.180,使用VPN帐号和密码登录,

在“项目”界面,选择“我的项目”或“公开项目”,然后点击“新增项目”按钮,创建项目,创建项目后,点击项目的“公开”属性,决定是否将该项目公开,如下图;

命令中的镜像ID,用户自己命名,只要不重名即可;命令中的镜像tag,自用自己定义,一般写成latest。

Harbor.jpg

3> 将产生的镜像push到镜像仓库:sudo docker push 10.1.0.180/项目名/镜像ID:镜像tag

上述命令成功后,用户可以通过浏览器登录到10.1.0.180,在相应项目下查看刚刚上传的镜像。

3)使用自定义镜像启动容器

修该json文件第23行,"image": "2breakfast/deeplearning:ldap-py-caffe0.15-cuda8.0-cudnn5-devel-ubuntu14.04",把2breakfast/deeplearning:ldap-py-caffe0.15-cuda8.0-cudnn5-devel-ubuntu14.04替换成用户的自定义镜像,即10.1.0.180/项目名/镜像ID:镜像tag,使用该json文件发布新应用即可。

提示:基于自定义镜像发布应用,使用ssh第一次登录后,执行如下命令sudo /etc/init.d/autofs restart ,之后退出ssh登录,重新使用ssh登录即可正常使用容器,后续访问容器时,

无需再次执行sudo /etc/init.d/autofs restart命令。

访问容器提供的服务

如何从用户终端上访问容器中提供的服务?

下面以web服务进行说明,用户可以根据该说明,修改相关设置,实现访问其他服务的功能。比如用户希望访问容器提供的web服务,web端口号为80,则操作步骤为:

在json文件第39行"portMappings"部分,加入80端口映射内容,见下例

 "portMappings": [
               {
                   "containerPort": 22,
                   "hostPort": 0,
                   "servicePort": 0,
                   "protocol": "tcp"
               },
               {
                   "containerPort": 80,
                   "hostPort": 0,
                   "servicePort": 0,
                   "protocol": "tcp"
               } 
           ],

基于该json文件发布应用,建立应用后,在“应用管理”界面,能看到刚发布的应用对应的端口,第一个端口为ssh对应的端口,第二个端口为web对应的端口。见下图:

如果用户希望查看端口的映射关系,可以单击实例ID,查看详情。

下图例子中,应用发布在IP地址为10.1.0.138服务器上,web对应的端口为31956,则:用户在浏览器中输入10.1.0.138:31956 即可访问容器提供的web服务。

Portmap.jpg

常见问题及解决办法

1)用户在容器中使用python时,执行import操作,会提示无法找到模块,比如import caffe时,提示:ImportError: No module named caffe

解决办法:

sudo -i

python

>>> import caffe

2)用户在容器,使用apt-get install安装软件时,如果下载速度不高,则可以考虑更换apt源。

cp /etc/apt/sources.list /etc/apt/sources.list.bak

vi /etc/apt/sources.list 更换源

apt-get update

3)在发布的应用中,执行apt-get update时,提示如下错误:

W: GPG error: http://developer.download.nvidia.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY F60F4B3D7FA2AF80

解决办法为:

执行如下命令添加公钥

wget -qO - http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub | sudo apt-key add -

然后再执行apt-get update

4)用户在安装软件时,如果提示访问https站点有问题,或server certificate verification failed,请修改/etc/apt/sources.list文件,修改源。然后执行命令apt-get update