Centos 6/7安装Torque(单节点)

Centos 6/7安装Torque(单节点)**

1、 简介

PBS(Portable Batch System)最初由NASA的Ames研究中心开发,主要为了提供一个能满足异构计算网络需要的软件包单节点,用于灵活的批处理,特别是满足高性能计算的需要,如集群系统、超级计算机和大规模并行系统。

PBS是功能最为齐全, 历史最悠久, 支持最广泛的本地集群调度器之一。PBS的主要特点有:代码开放,免费获取;支持批处理、交互式作业和串行、多种并行作业,如MPI、PVM、HPF、MPL。

PBS的目前包括:openPBS, PBS Pro和Torque三个主要分支.

  1. OpenPBS:是最早的PBS系统, 目前已经没有太多后续开发
  2. PBS pro:是PBS的商业版本, 功能最为丰富
  3. Torque:是Clustering公司接过了OpenPBS, 并给与后续支持的一个开源版本

应用PBS提交任务则会形成任务队列,依次执行,有效分配资源,避免资源竞争。否则CPU时间片会轮流分配给各个人的任务,从而影响所有人的正常作业。本文主要说明Torque的安装与配置,通过编译源代码的方式安装torque由于整个torque都被安装在一台计算机上,所以上述pbs_server、pbs_mom和pbs_sched都会被安装在一起。

Torque主要由三个主要部件组成:

  1. PBS服务守护进程: pbs_server 负责接收作业提交,位于服务节点
  2. PBS调度守护进程: pbs_sched 负责调度作业,位于服务节点
  3. PBS MOM守护进程: pbs_mom 负责监控本机并执行作业,位于所有计算节点

2、软件获取

版本 下载网址
torque-6.1.1.1 http://wpfilebase.s3.amazonaws.com/torque/torque-6.1.1.1.tar.gz
torque-6.1.2 http://wpfilebase.s3.amazonaws.com/torque/torque-6.1.2.tar.gz
官网下载 http://www.adaptivecomputing.com/support/download-center/torque-download

注:不同版本的安装和配置类似,本文以torque-6.1.1.1为例。

3、系统信息的查询

3.1 计算机核数查询

lscpu: 此命令用来显示cpu的相关信息(lscpu从sysfs和/proc/cpuinfo收集cpu体系结构信息)

主要信息
  CArchitecture: #架构PU(s)
  Thread(s) per core: #每个核心线程
  Core(s) per socket: #每个CPU物理核数
  CPU socket(s): #cpu插槽数
  Vendor ID: #cpu厂商ID
  CPU family: #cpu系列
  Model: #型号
  Stepping: #步进
  CPU MHz: #cpu主频
  Virtualization: #cpu支持的虚拟化技术
注:总的Threads数量(CPU逻辑核数) = 2(Sockets) × 4(Core(s)) × 2(Threads) = 16(CPU(s)).

[root@master ~]# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                16
On-line CPU(s) list:   0-15
Thread(s) per core:    2
Core(s) per socket:    4
Socket(s):             2
NUMA node(s):          2
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 44
Stepping:              2
CPU MHz:               2401.000
BogoMIPS:              4799.88
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              12288K
NUMA node0 CPU(s):     0-3,8-11
NUMA node1 CPU(s):     4-7,12-15

或者用nproc直接查看逻辑核数。

[root@master ~]# nproc
16

3.2 系统IP和主机名查询

hostname: 此命令用来显示主机名称。(默认主机名为:localhost)
ifconfig -a|grep “inet addr”:此命令用来显示主机IP。

[root@master ~]# hostname
master
[root@master ~]# ifconfig -a|grep "inet addr"
          inet addr:ip地址  Bcast:网关  Mask:子网掩码
          inet addr:127.0.0.1  Mask:255.0.0.0

3.3 更改主机名称

CentOS 6 :
需要更改两处:一处是/etc/sysconfig/network,另一处是/etc/hosts,只修改任一处会导致系统启动异常,需要保持两处一致。更改时需要切换到root用户。

[root@master ~]# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=master

更改HOSTNAME=后的内容为master

[root@master ~]# vi /etc/hosts
127.0.0.1   master ###添加到此处#####
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

在首行添加:“127.0.0.1 master” 或者 “主机IP master"。
注意:修改上面两个文件是永久的,重启系统后才生效。

CentOS 7:
可以直接用命令修改:

[root@centos7 ~]# hostnamectl set-hostname master

注意:这也是永久生效,但是不会立刻生效,需重启。
为避免重新启动可用“hostname”临时修改主机名:

[root@centos7 ~]# hostname master
[root@centos7 ~]# hostname
master

master主机名立刻生效,但它只是临时地修改主机名,系统重启后会恢复原样的。

4 、安装和配置Torque

4.1 安装Torque运行环境和依赖库

[root@master ~]# yum install libxml2-devel openssl-devel gcc gcc-c++ boost-devel libtool-y

4.2 Torque下载与解压

[root@master ~]# wget http://wpfilebase.s3.amazonaws.com/torque/torque-6.1.1.1.tar.gz
[root@master ~]# tar zxvf torque-6.1.1.1.tar.gz
[root@master ~]# cd torque-6.1.1.1

4.2 Torque编译与安装

[root@master torque-6.1.1.1]# ./configure --prefix=/usr/local/torque --with-scp --with-default-server=master
[root@master torque-6.1.1.1]# make -j
[root@master torque-6.1.1.1]# make install
[root@master torque-6.1.1.1]# make packages
[root@master torque-6.1.1.1]# ./libtool --finish /usr/local/torque/lib

注意:prefix设置安装路径,with-default-server设置主机名,packages(打包)是为了方便于其他节点安装在这里插入图片描述

4.3 Torque配置

将contrib/init.d/目录下的pbs_server、pbs_sched、pbs_mom、trqauthd添加到系统初始化简脚本/etc/init.d/中,并设置为开机启动。

[root@master torque-6.1.1.1]# cp contrib/init.d/{pbs_{server,sched,mom},trqauthd} /etc/init.d/
[root@master torque-6.1.1.1]# for i in pbs_server pbs_sched pbs_mom trqauthd; do chkconfig --add $i; chkconfig $ion; done

设置环境变量。

[root@master torque-6.1.1.1]# vi /etc/profile.d/torque.sh

TORQUE=/usr/local/torque 
export PATH=$PATH:/usr/local/torque/bin:/usr/local/torque/sbin
###添加后保存###
[root@master torque-6.1.1.1]# source /etc/profile
[root@master torque-6.1.1.1]# echo '/usr/local/lib' > /etc/ld.so.conf.d/torque.conf
[root@master torque-6.1.1.1]# ldconfig

注意:ldconfig命令的用途主要是在默认搜寻目录/lib和/usr/lib以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(格式如lib.so),进而创建出动态装入程序(ld.so)所需的连接和缓存文件。如果没有这一步可能会出现libtorque.so.2库文件找不到错误。

将root设为Torque的管理账户

[root@master torque-6.1.1.1]# ./torque.setup root

安装mom、client

[root@master torque-6.1.1.1]# ./torque-package-mom-*.sh --install
[root@master torque-6.1.1.1]# ./torque-package-clients-*.sh --install

设置Torque(工作目录为/var/spool/torque/)
a)设置服务器名:编辑/var/spool/torque/server_name文件

[root@master torque-6.1.1.1]# vi /var/spool/torque/server_name

master

b)设置机群所有机器名和设置计算总核数:编辑/var/spool/torque/server_priv/nodes文件

[root@master torque-6.1.1.1]# vi /var/spool/torque/server_priv/nodes

master np=16

c)设置MOM进程配置文件:编辑 /var/spool/torque/mom_priv/config文件

[root@master torque-6.1.1.1]# vi  /var/spool/torque/mom_priv/config

  $pbsserver master
  $logevent 255

启动pbs_server、pbs_sched、pbs_mom、trqauthd几个服务

[root@master torque-6.1.1.1]# for i in pbs_server pbs_sched pbs_mom trqauthd; do service $i start; done

查看运行情况

[root@master torque-6.1.1.1]# ps -e | grep pbs
 2800 ?        00:00:23 pbs_mom
 2968 ?        00:00:00 pbs_sched
 3277 ?        00:00:05 pbs_server

创建设置作业队列

[root@master torque-6.1.1.1]# qmgr
Max open servers: 9
Qmgr: create queue test
Qmgr: set queue test queue_type = execution
Qmgr: set queue test started = true
Qmgr: set queue test enabled = true
Qmgr: set queue test resources_default.walltime = 240:00:00
Qmgr: set queue test resources_default.nodes = 1
Qmgr: set server default_queue = test
Qmgr: exit
[root@master torque-6.1.1.1]#qstat -q ###查看队列信息###
server: master

Queue            Memory CPU Time Walltime Node  Run Que Lm  State
---------------- ------ -------- -------- ----  --- --- --  -----
test              --      --       --      --    6   0 --   E R
batch             --      --       --      --    0   0 --   E R
                                               ----- -----
                                                   6     0

注意:创建的队列名称为test
查看节点的状态信息

[root@master torque-6.1.1.1]# qnodes
master
     state = free
     power_state = Running
     np = 16
     ntype = cluster
     jobs = 0-7/8.master
     status = opsys=linux,uname=Linux master 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013 x86_64,sessions=2424 2485 2641 2649 2751 2797 3257 3500 3504 3506 3518 3531 3552 3804 4571 4584 4630,nsessions=17,nusers=2,idletime=18777,totmem=36968804kb,availmem=35385368kb,physmem=24598892kb,ncpus=16,loadave=7.99,gres=,netload=608362704,state=free,varattr= ,cpuclock=OnDemand:2401MHz,version=6.1.1.1,rectime=1591878323,jobs=8.master
     mom_service_port = 15002
     mom_manager_port = 15003

切换到user用户提交任务

[root@master torque-6.1.1.1]# su user
[user@master torque-6.1.1.1]$ echo sleep 30 | qsub
1.master
[user@master torque-6.1.1.1]$ qstat
Job ID                    Name             User            Time Use S Queue
------------------------- ---------------- --------------- -------- - -----           
1.master                  STDIN            user                   0 R test            
[luys@master torque-6.1.1.1]$ qstat -a

master: 
                                                                                  Req'd       Req'd       Elap
Job ID                  Username    Queue    Jobname          SessID  NDS   TSK   Memory      Time    S   Time
----------------------- ----------- -------- ---------------- ------ ----- ------ --------- --------- - ---------
1.master               user        test      STDIN             29590     1      1       --  240:00:00 R  00:02:03

至此安装成功!!!

你可能感兴趣的:(linux,服务器,centos)