最近需要用到集群做实验,学习下集群相关的内容。
什么是服务器集群
服务器集群其实就是将很多服务器(或者简单理解为主机)集中起来一起进行同一种服务,在客户端看来就像是只有一个服务器。集群可以利用多个计算机进行并行计算从而获得很高的计算速度,也可以用多个计算机做备份,若使用过程中任何一个机器坏了,整个系统不影响正常使用,但是如果同时坏的机器过多,一般是半数以上,则需要维修了。
集群各服务器节点间通过高性能的互连网络连接;各节点除了可以作为一个单一的计算资源供交互式用户使用外,还可以协同工作并表现为一个单一的、集中的计算资源供并行计算任务使用。
集群的硬件基础
1 集群一般配制刀片计算节点的CPU或GPU作为计算节点
系统配备并行文件系统,各组刀片机之间的网络连接
系统配制登陆管理节点(一个性能强大的主机,类似台式机,主要负责管理节点,计算一般放在GPU上进行,另外配的有专门的存储装置,一般容量TB为计量),部署的集群管理系统。用户可根据登录节点IP,登录集群,提交作业,编译程序。
资源信息简表
计算资源信息如下表。
1 会将整个集群划分为若干个队列(Queue),并根据队列的资源配置情况进行相应的命名;
2 每个队列下有若干个计算节点(nodes),每个计算节点配制若干个CPU(ppn);
3 对集群的一些其他信息说明和限制情况说明,如,CPU的型号和核数,用户可提交的作业树,每个作业的最大运行时间等。
在往集群上投递任务之前,首先要了解一下,该任务所需的计算资源是否能被集群所满足。
PBS((Portable Batch System)任务管理系统
PBS 是一种常用的作业管理系统,其他类似的还有 LSF 和 SLURM。PBS会根据一个集群上的可用计算节点的计算资源管理和调度所有计算作业(无论是批处理作业还是交互式作业)。
PBS的目前包括openPBS, PBS Pro和Torque三个主要分支. 其中OpenPBS是最早的PBS系统, 目前已经没有太多后续开发,PBS pro是PBS的商业版本, 功能最为丰富. Torque是Clustering公司接过了OpenPBS, 并给与后续支持的一个开源版本。
其中,开源版本Torque主要包含下面的进程:
1 PBS服务守护进程: pbs_server 负责接收作业提交,位于服务节点
2 PBS调度守护进程: pbs_sched 负责调度作业,位于服务节点
3 PBS MOM守护进程: pbs_mom 负责监控本机并执行作业,位于所有计算节点
PBS — Torque 安装配置步骤
1 在 master(管理结点上)解压安装包
[root@master tmp]# tar zxvf torque-2.3.0.tar.gz
2 进入到解压后的文件夹
[root@master torque-2.3.0]# ./configure--with-default-server=master
[root@master torque-2.3.0]# make
[root@master torque-2.3.0]# make install
3 生成后面安装计算节时需要的5个脚本文件, 作为在其它机器上安装用的安装包,运行完后会生成几个torque-package-*