微软HPC群集如何添加Linux计算节点
这篇文章将为大家详细讲解有关微软HPC群集如何添加Linux计算节点,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
本文以hpc pack 2016 update1为例
支持的linux版本:SUSE Linux Enterprise Server 12,Red Hat Enterprise Linux 7.1,CentOS 6.7,Ubuntu Server 14.04 LTS和16.04 LTS
环境介绍
08dc
10.0.0.2 255.0.0.0
hpc01-head.oa.com
windows server 2016数据中心版
Enterprise 10.0.0.8 255.0.0.0 dns 10.0.0.2
HPC 18.0.0.1 255.0.0.0
linuxnode1
Centos6.7
Enterprise 10.0.0.51 255.0.0.0 dns 10.0.0.2
HPC 18.0.0.3 255.0.0.0
总结的配置步骤如下
为linux主机修改主机名
在windows dns服务器上添加linux主机DNS记录,确保安装过程中head主机可以找到linux计算节点
为linux主机导入windows环境根证书,头节点证书公钥,确保证书可以验证,linux主机可以正确打开https://头节点fqdn(此步骤需重启生效)
在linux主机上面添加头节点主机名和FQDN名称进入/etc/resolv.conf,最好使用永久生效方式,确保互相正常解析
通过FileZilla或其它工具,将hpc pack linux aget tar gz,setup.py,头节点带私钥证书拷贝进入linux目录
在linux主机安装hpc pack agent代理需要联网通过yum install下载依赖组件,因此需要让安装过程linux主机可以临时联网下载组件
通过python命令开始安装setup.py,正常情况下centos或redhat安装完成后都有这个命令,如果在终端输入python无效,需自行下载安装
严格按照setup.py脚本指示安装代理
检查安装过程日志,以及nodemanager.json,如果出现主机名,需修改为FQDN,因为主机名称无法通过SSL验证
一切顺利,安装成功后,经过一杯茶的时间,可以在头节点看到被添加进来的linux计算节点,联机即可
1.为linux主机修改主机名,最好安装时指定,否则可以使用hostname linuxnode01修改
2.在windows dns服务器上添加linux主机DNS记录
3.导出windows CA根证书与头节点安装证书,不带私钥版本,导出格式选择Base64编码
导出完成后得到两个文件,一个是头节点安装证书不带私钥的cer,一个是企业根信任证书的cer,如果是自签名证书仅导出安装证书不带私钥的cer即可
直接将文件后缀重命名为pem,便于我们在linux上面导入证书
通过filezilla工具,拷贝这两张证书,放置到centos或redhat的/etc/pki/ca-trust/source/anchors路径下
在centos或redhat上面进入bin目录下,输入update-ca-trust,更新证书列表,会将我们放进anchors的证书导入
导入之后重启操作系统,在浏览器栏输入https://hpc01-head.oa.com ,出现以下结果,即代表配置成功
如果出现证书不受信任的提示,则一定要重新配置,检查证书位置,以及是否导入,务必确保地址可以正确打开,因为linux里面对于证书要求非常严格,如果SSL证书不信任,是不允许直接打开SSL网站的
但是我们在linux上面安装hpc pack代理,最后一步,要通过json里面NamingServceUri写出的 https://hpc01-head.oa.com:443/HpcNaming/api/fabric/resolve/singleton/
路径,去联系头节点注册计算节点,如果这一步信任不做,那么最后一步这个地址是没办法打开的,这样即便linux端安装代理成功了,但是linux计算节点也不会显示在windows 头节点中
4.在linux主机上面添加头节点主机名和FQDN名称进入/etc/resolv.conf,这一步是为了让linux主机能够正常解析头节点主机,其实我们在linux上面设置了dns后,理论上来说应该就已经可以解析了,ping头节点主机名和FQDN都可以ping通,但是之前曾经有外国朋友提到过这是一个bug,告知我们仍需添加/etc/resolv.conf,作为双保险我们最好还是加上
添加方法使用linux vi编辑器
终端中输入vi /etc/resolv.conf打开编辑器 ,输入完成后键入ESC,然后键入:w保存文档
此为临时性修改方法,一旦重启后即失效,虽可以确保代理安装过程无误,但如果有了解linux的朋友还是建议使用永久修改方法
添加完成后尝试在头节点ping linux节点主机名,主机名加域名,在linux节点ping头节点主机名,FQDN名,都能ping通即配置成功
5.通过FileZilla或其它工具,将hpcnodeagent.tar.gz,setup.py,头节点安装时带私钥证书拷贝进入一个linux目录
hpcnodeagent.tar.gz,setup.py可以在hpc pack 头节点安装包解压目录中找到
HPCcom.pfx是我们安装hpc pack 头节点时申请的证书,导出那张证书,带私钥一起导出
6.在linux主机安装hpc pack agent代理需要联网通过yum install下载依赖组件,因此需要让安装过程linux主机可以临时联网下载组件
hpc pack liunx agent安装的时候需要联机下载一些必备组件,实验中老王临时把HPC网络接入了vmwareNAT网络,实际企业环境建议临时让其中一个网络联网,或临时新加入一个网卡
如果安装linux hpc pack代理时不能联网,则会出现以下错误
7.通过python命令开始安装setup.py,正常情况下centos或redhat安装完成后都有这个命令,如果在终端输入python无效,需自行下载安装
进入setup.py所在目录运行python命令
python setup.py -install -connectionstring:'hpc01-head'-certfile:'/opt/HPCcom.pfx' -certpassword:'123.com' -managehosts
如果怕麻烦可以直接输入python setup.py,会弹出setup.py帮助内容,直接可以复制粘贴,再修改为我们的内容
严格按照setup.py说明安装代理,一个参数和大小写都不能错,最好是直接复制示例内容然后修改
在安装步骤进行到大约这里时
打开/opt/hpcnodemanager/nodemanager.json,检视NamingServceUri一栏,如果是hpc01-head这样的主机名,请一定把它改成hpc01-head.oa.com
因为我们在windows端绑定的证书名称是fqdn名称,因此我们导入到linux的证书,也只会匹配fqdn名称,如果这里以主机名访问,则会因为名称与证书不匹配而无法直接打开网页,导致没办法向头节点注册
安装成功后,经过一杯茶的时间,可以在头节点看到被添加进来的linux计算节点
安装过程日志排错
Linux Node
/opt/hpcnodemanager/logs/nodemanager.txt,hpclinuxagent.log
/opt/hpcnodemanager/nodemanager.json
头节点
安装目录 Microsoft HPC Pack 2016 \ Data \ LogFiles \ Scheduler \ HpcScheduler*.bin
使用hpctrace将bin文件转换txt查看
联机linux计算节点,现在linux计算节点已经成功加入到微软HPC群集中,可以正常承载头节点派发给它的作业任务
支持直接在群集管理器对linux节点执行命令
支持使用clusrun提交作业直接在linux计算节点执行
支持通过群集管理器汇总显示linux计算节点数据
支持通过客户端程序,portal,提交参数扫描作业至linux节点
Linux计算节点不支持的场景
linux计算节点仅支持单头节点的部署,如果采用群集头节点,则无法使用linux计算节点
要在Linux节点上运行MPI应用程序,您必须在节点上安装自己的MPI。包含在HPC Pack中的Microsoft MPI(MS-MPI)仅在Windows节点上运行。调度程序必须在Linux节点之间建立互信,HPC Pack 2016 Update 1会自动为用户生成密钥对。
不支持GPU和SOA工作负载 - 目前HPC Pack不支持在Linux节点上调度GPU或运行SOA工作负载
除上述场景外,其它体验均与windows计算节点一致
关于"微软HPC群集如何添加Linux计算节点"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。