Linux安装PBS作业调度系统&PBS使用

CentOS 7.9安装torque-5.1.1

  1. torque-5.1.1的github下载地址: https://github.com/adaptivecomputing/torque
  2. 安装依赖: yum install libxml2-devel openssl-devel gcc gcc-c++ boost-devel libtool
  3. 设置主机名(torque的安装与主机名相关):
    1. 查看主机名: hostname (主机名必须字母开头且主机名不能是/etc/hosts文件里主机别名后,否则初始化torque时会报”First bad host”的错误)
    2. 设置主机名: hostnamectl set-hostname test
    3. 设置主机名与IP的对应关系:
      vim /etc/hosts
      IP test

单机安装torque

  1. 安装torque:

    1
    2
    3
    4
    5
    6
    tar xzf torque-5.1.1.tar.gz  
    cd torque-5.1.1
    ./autogen.sh
    ./configure --prefix=/opt/software/torque --with-scp --with-default-server=test
    make
    make install
  2. 设置环境变量:
    vim /etc/profile
    export PATH=/opt/software/torque/bin:/opt/software/torque/sbin:$PATH
    source /etc/profile

  3. 添加PBS服务并设置开机自启:

    1
    2
    cp contrib/init.d/{pbs_{server,sched,mom},trqauthd} /etc/init.d/  
    for i in pbs_server pbs_sched pbs_mom trqauthd; do chkconfig --add $i; chkconfig $i on; done
  4. 初始化并启动torque:
    ./torque.setup root
    服务名位置: /var/spool/torque/server_name

  5. 关闭服务: qterm (终止pbs_server)

  6. 设置计算节点:

    • 查看CPU的数量: nproc/lscpu
    • vim /var/spool/torque/server_priv/nodes (在管理节点设置,每次初始化都会清空该设置)
      test np=16
    • vim /var/spool/torque/mom_priv/config (在计算节点设置)
      pbsserver test
      logevent 255
      $spool_as_final_name true (标准和错误输出直接输出到指定的文件)
  7. 开启/关闭服务:
    for i in pbs_server pbs_sched pbs_mom trqauthd; do service $i start; done
    for i in pbs_server pbs_sched pbs_mom trqauthd; do systemctl start $i; done (CentOS7版本也可以这样写)
    for i in pbs_server pbs_sched pbs_mom trqauthd; do service $i stop; done

  8. 查看节点的状态: qnodes/pbsnodes (若state的状态为free说明安装成功)

集群安装torque

  1. 管理节点的/etc/hosts包含本节点及所有计算节点的信息;计算节点的/etc/hosts包含本节点及管理节点的信息
  2. 编译计算节点的安装包:
    make packages (同单机安装,在编译安装后执行)
    libtool --finish /opt/software/torque/lib
  3. 将编译的安装包拷贝至计算节点: scp torque-package-clients-linux-x86_64.sh torque-package-mom-linux-x86_64.sh test1:/opt/software/torque/
  4. 计算节点安装:
    ./torque-package-mom-linux-x86_64.sh --install
    ./torque-package-clients-linux-x86_64.sh --install

PBS各服务的作用

  • pbs_server 接收作业
  • pbs_sched 调度作业
  • pbs_mom 执行作业

*torque安装参考资料: https://support.adaptivecomputing.com/torque-resource-manager-documentation/


PBS简单使用

  1. 提交作业: qsub (不能以root提交作业)
    • 设置作业属性: 命令行参数传递给qsub
    • 脚本中以#PBS指定:
      1
      2
      3
      4
      5
      6
      7
      #!/usr/bin/bash  
      #PBS -N job #作业名
      #PBS -o job.log #标准输出
      #PBS -j oe #标准输出与标准错误合在一个文件
      #PBS -l walltime=7200:00:00,mem=8gb,nodes=1:ppn=2 #资源列表(时间,内存,节点:处理器个数)
      #PBS -q batch #队列名
      #PBS -V #qsub命令的所有环境变量都export到此作业
  2. 查看作业: qstat

    -a 查看系统所有作业
    -n 查看分配给作业的节点

  3. 删除作业: qdel 作业ID
Author: Giftbear
Link: https://giftbear.github.io/2022/01/06/Linux安装PBS作业调度系统&PBS使用/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.