HPC是什么
提起高性能计算(HPC),
你最先想到什么?
是全球超算TOP 500
六连冠的天河二号?
还是帮助中国实现戈登·贝尔奖
零突破的神威·太湖之光?
超高运算速度,
超大运算资料量,
HPC正以前所未有的迅捷性,
促进人类信息处理能力再攀升。
有人说了,HPC如此高大上,要实现肯定很困难吧。
资深IT老司机告诉你:“不难,一点都不难,只要一台笔记本,咱们自己就能整!”
不过……
咱们整的是HPC演示环境啦!
1搭建前的准备
高性能计算机也被称作并行计算机,由很多台计算机同时并行计算,以解决一个复杂的问题。搭建高性能计算的演示环境之前,需要有一些考虑和准备。
首先是HPC集群软件的选择。
目前,HPC系统越来越多运行的是Linux OS,入围世界Top500的超级计算机100%采用的都是Linux系统。为了帮助用户更方便地搭建和使用HPC,Linux基金会成立了OpenHPC项目组,将软件包预先编译搭建好,这样用户就可以通过标准的Linux安装流程,快速安装部署一套HPC系统。
因此本次HPC演示环境搭建采用了OpenHPC软件,其网址为http://openHPC.community。以下是OpenHPC集群的架构图:
其次是OpenHPC软件模块。
OpenHPC可以支持的操作系统有CentOS,SuSe Linux,集群管理软件有Warewulf和xCAT,作业调度软件有PBSpro和Slurm等。考虑到CentOS用户比较多,Warewulf相对简单,PBSpro在国内有商业厂商支持,所以本次安装OpenHPC选择了CentOS、Warewulf和PBSpro的组合。
最后是笔记本上的虚拟平台。
笔者日常工作的笔记本是1台Dell Latitude 5490,Inteli5 1.7GHz CPU,16GB内存,500GB的SSD硬盘,运行Windows10 Enterprise。
由于需要创建虚拟主机,可以考虑采用的虚拟主机平台主要有三种:VMware Workstation 15 Player, Oracle VM VirtualBox 和微软的Hyper-VManager。
由于VMware Workstation Player免费版本不可以同时支持多个VM(虚拟机)的运行,Oracle VirtualBox 的VM安装CentOS7.6时会出现鼠标点击无效的Bug,所以本次部署采用的是Windows10 Hyper-V。
万事俱备,即刻开始搭建HPC运行环境!
2HPC运行环境搭建八步走
1Windows10 Hyper-V虚拟平台的设置
① 开启Hyper-V模式支持:
在搜索栏输入“turn windows features”,进入配置窗口,勾选Hyper-V复选框,随后重启Windows10。
② 运行Hyper-V:
在搜索栏输入“Hyper-V Manager”,启动Hyper-V manager,随后将Hyper-V Manager连接到服务器:点击右侧的连接到服务器,选择本地,即这台笔记本电脑,本电脑的名字为“*DST2”。
2创建OpenHPC的管理节点——sms,并安装CentOS 7.6 操作系统
① 点击左侧的服务器“*DST2”,随后点击右侧的“New”,在弹出的菜单栏中选择“Virtual Machine”。
② 按照创建VM导航,创建OpenHPC的管理节点,在”name“处输入sms,作为VM的名字;随后选择Hyper-V支持的VM类型:第一代“Generation 1”,申请内存空间为2GB(CentOS最少需要2GB的内存,硬盘容量建议为40GB)。
③ 配置网络连接为连接外部网络”external”交换机,配置VM的本地硬盘为40GB。
④ OpenHPC支持的最新版本为CentOS7.6,可以在
http://vault.centos.org/7.6.1810/isos/x86_64/CentOS-7-x86_64-DVD-1810.iso将CentOS7.6下载到本地。然后在Image file (.iso)处,指定CentOS ISO 文件的本地路径。
⑤ 完成设置后进入总结页面,点击“Finish”完成。
⑥ 开启sms的VM,在Virtual Machines的窗口中选择sms后,点击右侧菜单“action”下属“sms”的“connection”,连接完成后,点击弹出窗口“action”下的“start”开始。
⑦ 开始在sms vm虚拟机上安装CentOS7.6。选择”English”语言,时区可以选择“Shanghai,China”,在“Language Support”支持语言中点击“简体中文”。在software selection 中,安装最小包——带有Gnome Application图形界面的软件包。
⑧ 随后按照提示步骤进行配置,配置“Installation Destination”,然后等待大约2分钟,检测“Installation Source”完成,就会出现以下界面。
⑨ 点击“Begin Installation”开始安装,约安装1398个软件包,在此期间需要设置root的密码口令:
估计运行14分钟,就可以完成OS的安装。按“reboot”重启,在”Initial Setup”中,接受License许可。配置主机名和网络,将主机名设定为”sms”,网络eth0设置为”ON”开启。
⑩ 这里需要添加一个用户名,如“test“,输入口令,跳过google等用户注册,完成CentOS7.6 的安装。随即以“test“用户登录到系统,我们需要用root登录,点击右上角的开关按钮,选择”logout”退出用户“test”,然后用root重新登录系统。
3配置OpenHPC sms 管理节点的网络
① 配置Hpyer-v Switch网络
进入Hyper-v manager,通过“Virtual switch manager”创建2个网络,一个是“External”的OpenHPC External,用于连接外网Internet的访问,将连接sms的eth0网卡;一个是“Private”的OpenHPC Private,用于HPC集群的内部管理。
② 在Windows10的网络配置中,将OpenHPC External和vEthernet (default)设为共享。右键v Ethernet ,OpenHPC External 的网卡,点击Properties ->Sharing,在Internet Connection Sharing的下拉菜单中选择vEthernet(Default Switch)。
③ 配置sms节点的网络接口。在sms控制台上创建2个网络接口卡eth0,连接external网,eth1,连接private 网络。
重新连接sms,并start,用root登录后,启动一个terminal,运行
#pingwww.sohu.com,或者其他网络网址如www.sina.cn,可以ping通。(www.sohu.com或www.sina.cn是代表互联网上的一个主机名字,对应各自的IP地址,如果可以ping通,即表示可以和Internet网络连接。)
#yum list installed, 可以显示yum 运行正常。
4sms节点的配置和OpenHPC发行版本软件安装
① 设置再次确认和配置主机名
#hostnamectl set-hostname sms
#hostname
可以显示主机名已经修改;
重新启动一个terminal,可以在提示符处,看到名字改为sms;
② 设置eth1网络接口IP地址为172.16.0.1/16,可以通过网络配置工具。
③ 配置/etc/hosts文件
#echo172.16.0.1 sms >> /etc/hosts
可以检查一下
#cat/etc/hosts
④ 禁用selinux
#sestatus
#vim/etc/selinux/config
selinux=disabled
#reboot
⑤ 安装OpenHPC release包:
#yum install http://build.openhpc.community/OpenHPC:/1.3/CentOS_7/x86_64/ohpc-release-1.3-1.el7.x86_64.rpm
⑥ 安装docs-ohpc包:
#yum install docs-ohpc
5创建计算节点vm,4台c1-c4
① 创建vmc1与sms的创建类似,需要配置2GB的内存和40GB的硬盘。此外,在配置网络时需要选择OpenHPCPrivate网络:
② 在安装选项中,选择后安装Operating System:
③ 配置c1的BIOS,引导为pxe,由legacy Network Adapter 最先引导;
④ 配置c1,添加网卡,选择添加Legacy Network Adapter, 并添加到OpenHPC Private网络中。
⑤ 设置Legacy Network Adapter 的MAC地址,c1的MAC地址的最后两位为01。
⑥ 依次创建c2-c4vm,并修改其MAC地址的最后2位分别为02-04。
6在sms管理节点安装OpenHPC软件
① 编辑input.local 文件
[sms]##cp /opt/ohpc/pub/doc/recipes/centos7/input.local input.local
[sms]#cp -p/opt/ohpc/pub/doc/recipes/centos7/x86_64/warewulf/pbspro/recipe.sh .
修改input.local文件,将计算节点private网络,进行pxe引导的网卡MAC输入到文件中:
#vim input.local
c_mac[0]=00:00:00:00:00:01
c_mac[1]=00:00:00:00:00:02
c_mac[2]=00:00:00:00:00:03
c_mac[3]=00:00:00:00:00:04
② 安装OpenHPC 软件
[sms]#export OHPC_INPUT_LOCAL=./input.local
[sms]#./recipe.sh
安装大约需要45分钟,具体时间由网络速度和CPU速度决定,此过程一结束,OpenHPC就成功安装到sms节点上。要注意的是,我们vmc1-c4计算节点没有BMC控制端口,需要在vm中手动开启。
7启动计算节点
① 在Hpyer-v Server,启动c1计算节点。随后依次开启c2,c3。不过开启c4的时候将会出错,这是因为笔记本电脑的内存无法支持第四个vm。
② 现在,笔记本电脑上已经完成了OpenHPC软件的部署,运行了3个计算节点,由一个sms管理节点进行管理。
8测试
① 测试节点是否正常运行
#pdsh-w c[1-3] hostname
② 用PBS队列交互式执行
[root@sms]#su– test
[test@sms]#mpicc-O3 /opt/ohpc/pub/examples/mpi/hello.c
[root@sms]#qsub-I -l select=3:mpiprocs=4
[root@sms]#prun./a.out
这个命令的意思是在3个节点上,每个节点执行4次程序,结果在屏幕上显示。
③ 用PBS队列批处理执行
这个命令的意思是在2个节点上,每个节点执行4次程序,结果输出到job.out文件中。
至此,OpenHPC已经遵循手册要求在笔记本电脑上全部安装完成!
3安装经验
➤ 操作前先查阅一下OpenHPC的相关资料,包括安装手册、input.local和recipe.sh 3个文件;
➤ Windows10 Hyper-V 虚拟机sms的Internet访问,需要将网卡设置为”external”,并在Windows10 的网络设置中将“external”和”default”共享;
➤ Hyper-V计算节点vm c1-c3,引导网卡是“Legacy Network Adapter”,其内存需要2GB,另外硬盘方面的需求也比较大,笔者这次配置的是40GB;
➤ vm的名字和IP等按照input.local进行设定,会比较简单且易于维护;
➤ 结束前的代码。输入一段html内容到httpd的html目录:
[root@sms]#echo “
style=”color:red;text-align:center;margin:1em;font-size:3em;”>我爱祖国!
”>> /var/www/html/index.html
随后打开浏览器,输入sms的地址,可以显示刚刚输入的内容。
以上就是本期高性能计算演示环境的搭建过程了,感兴趣的童鞋可以动手操作一下!