VNC和SSH访问门户¶
VNC和SSH访问门户是利用AIP REST API服务认证用户,协助用户在计算主机上提交和管理VNC桌面作业或者SSH作业的web门户。
安装¶
警告
安装由系统管理员用root账号执行。安装VNC和SSH访问门户自动在同一台主机上安装AIP的REST API服务:aiprestd。
如果在安装有Web门户的主机上,这个软件自动安装到/var/www/html/desktop下,用户可以通过https://<门户主机>/desktop访问。
选择一台AIP的登录计算主机或登录主机。如果这台主机是Web门户主机,跳过下一步。
安装nginx和httpd(或apache2)。
在EL上:
yum install -y httpd nginx
在Ubuntu上:
apt install apache2 nginx
在AIP包解压的目录中,运行vncportal-install脚本:
./vncportal-install
在AIP集群中有一个名为vnc的队列,这个队列中的主机是可以运行VNC或ssh作业的主机。如果是VNC主机,确保主机在做API配置时使用 脚本:host-setup --gui
用户VNC客户端¶
VNC门户提供浏览器方式访问VNC,用户也可以选择使用VNC客户端连接,客户端的图形效果略好。
VNC客户端可以用SkyForm CRV可以端直接访问桌面。AIP的安装包里带了SkyForm CRV Windows的软件,用户 可以点击“下载远程桌面客户端”,展开压缩包,安装桌面客户端。
登录¶
用浏览器连接到VNC和SSH访问主机 https://portal_ip*或者https://*portal_ip/desktop。
以操作系统中的用户和密码登录。
启动VNC桌面¶
点击蓝色的“新建远程桌面”,选择桌面资源规格,选择“提交”键启动一个桌面。
如果系统中有资源可以运行VNC桌面,几秒后,“客户端”和“浏览器访问”两个按钮就可以选择使用, 也可以下载文件后用其他VNC客户端、如RealVNC打开下载的文件连接桌面。
点击“浏览器访问”在浏览器中弹出一个标签页连接到VNC桌面,或者点击“客户端”打开远程桌面客户端。
关闭桌面可以在VNC桌面里面选择logout,或者在门户里面按红色“销毁”按钮。
启动ssh访问¶
点击绿色的“新建ssh访问”,选则资源,选择“提交”键启动一个ssh访问。
如果系统中有资源可以运行ssh访问,几秒后,“下载ssh私钥”和“ssh连接命令”两个按钮就可以 使用。
系统为每个ssh访问生成一个私钥。只有使用这个私钥才可以访问。
备注
门户中生成的ssh访问不能使用用户密码访问。
点击“下载ssh私钥”下载文件key.pem。下载后的密钥保存在一个目录中。
点击“ssh连接命令”,可以选择“拷贝”按钮拷贝命令行。
打开Windows的cmd或powershell终端。把当前目录切换到下载key.pem的目录中,粘贴上一个步骤拷贝的命令,连接ssh
ssh -i key.pem -p 16332 cadmin@192.168.10.10
VNC桌面和ssh会话的资源使用控制¶
VNC桌面和ssh会话中用户会运行很多命令,推荐在队列中配置cgroup参数来限制其资源使用,这样主机上的多个 卓面和会话不会把主机跑死。
在 cb.yaml 队列中设置cgroup参数,cgroup只控制本队列中的作业。例子:
queues:
- name: vnc # VNC和SSH队列
priority: 3
cgroup: cpu mem # 限制每个桌面和会话的CPU和内存使用
memlimit: percore # 每个作业内存上限是主机总内存除以CPU核数
访问桌面服务器上的文件(web门户联动功能)¶
备注
只有与web门户一起安装时才有该功能。
编辑/var/www/html/config.yaml里的userfiles配置。缺省的配置中每个用户(default)的可以访问自己的HOME,(topdir: ~)。
如果某个用户需要访问其他位置的文件,可以加一项这个用户的定义,如:
userfiles:
- name: default # 缺省每个用户都访问自己的HONME
role: user
topdir: "~"
- name: u001 # u001用户可以访问/
role: user
topdir: "/"
如果不希望用户通过门户访问服务器上的文件,可以注释掉整个userfiles配置。
桌面和ssh会话的资源规格配置(web门户联动功能)¶
备注
只有与web门户一起安装时才有该功能。
编辑/var/www/html/config.yaml里的submit_templates。每个可选规格有两个参数:description说明,即用户可选的规格说明;submit_params相应的作业提交参数(参考 csub )。例子:
submit_templates:
- description: 2核1G内存
submit_params: "-n 2 -R rusage[mem=1g] -M 1g" # 2个核,1G内存限制,以及1G内存预留,使用缺省队列
- description: 1核内存平均分配
submit_params: "-q vnc" # 单核,内存不限,或者由队列决定,使用vnc队列
以上例子中的两个规格:
1核主机内存根据核数平均分配。具体配置见上一小节中队列的配置。
2核1G内存,作业提交参数限制了会话总内存的使用,并在调度器内预留了内存。
用户只能使用VNC门户(web门户联动功能)¶
备注
只有与web门户一起安装时才有该功能。
编辑/var/www/html/config.yaml里admin_portal_for_users: no,这样普通用户(不是AIP集群管理员)就不能使用AIP Web门户,而只能使用远程桌面门户。