下载
在别的博客里找到了两个下载地址: http://www.adaptivecomputing.com/resources/downloads/torque/ (这个是官方的安装包 但是要注册 比较麻烦) http://wpfilebase.s3.amazonaws.com/torque/torque-6.1.1.1.tar.gz (6.1.1.1版本) (wget http://wpfilebase.s3.amazonaws.com/torque/torque-6.1.1.1.tar.gz 命令下载即可)
为了方便管理,将安装包下载至 /root/software/ 目录下,解压至/usr/local/src/目录下
管理节点安装
管理节点使用编译安装的方式
(注:程序文件安装在了 /usr/local/torque 下,配置则文件位于/var/spool/torque下)
安装过程
解压
cd /usr/local/src
tar -zxvf /root/software/torque-6.1.1.1.tar.gz #将上传的压缩包解压
安装torque依赖的其他相关库和编译器等环境
sudo yum install -y libxml2-devel openssl-devel gcc gcc-c++ boost-devel libtool
进入解压目录,配置安装信息
cd torque-6.1.1.1
# --prefix指定安装路径,--with-default-server指定默认管理节点(不指定也会默认ww-master)
./configure --prefix=/usr/local/torque --with-default-server=ww-master
# 若提示缺少某库或编译器,直接使用yum安装即可,然后再次运行改命令
配置完成后,会显示相关配置信息,并提示 “Ready for 'make' ”,表示需要的相关环境已满足,可以进行编译
编译、安装、打包
make
sudo make install #此步骤需要管理员权限
make packages #生成后面安装计算节时需要的文件,会生成5个可执行脚本文件
配置过程
配置环境变量,所有用户在/etc/profile里配置,当前用户在~/.bashrc里配置
vim ~/.bashrc
#torque
export TORQUE=/usr/local/torque
export LD_LIBRARY_PATH=$TORQUE/lib
export PATH=$PATH:$TORQUE/sbin:$TORQUE/bin
source ~/.bashrc #使其生效
把服务启动脚本pbs_server、pbs_mom、pbs_sched、trqauthd复制到 /etc/init.d 下,并设置开机启动。
#服务启动脚本在解压目录下的contrib/init.d下。
sudo cp contrib/init.d/{pbs_{server,sched,mom},trqauthd} /etc/init.d/
sudo chkconfig --add pbs_server
sudo chkconfig --add pbs_sched
sudo chkconfig --add pbs_mom
sudo chkconfig --add trqauthd
初始化,设置TORQUE的管理用户,pbs_server 不要启动起来,否则 ./torque.setup root 无法完成
sudo ./torque.setup wangwei #设置wangwei用户为管理用户
#torque.setup脚本是通过调用pbs_server –t指令来初始化serverdb,附加的帐号将被指定为TORQUE的进程管理员和执行者。
配置 /var/spool/torque/server_priv/nodes 文件(如果没有就手动添加),指定哪些节点作为计算节点,若管理节点不参与计算则去掉ww-master
ww-master np=8
ww-slave1 np=8
ww-slave2 np=8
# 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 # 查看物理CPU个数 cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l # 查看每个物理CPU中core的个数(即核数) cat /proc/cpuinfo| grep "cpu cores"| uniq # 查看逻辑CPU的个数 cat /proc/cpuinfo| grep "processor"| wc -l # 查看CPU信息(型号) cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c # 查看内存信息 cat /proc/meminfo # 查看内存槽数、那个槽位插了内存,大小是多少 dmidecode|grep -P -A5 "Memory\s+Device"|grep Size|grep -v Range # 查看最大支持内存数 dmidecode|grep -P 'Maximum\s+Capacity' # 查看槽位上内存的速率,没插就是unknown。 dmidecode|grep -A16 "Memory Device"|grep 'Speed'
创建/var/spool/torque/mom_priv/config文件
vim /var/spool/torque/mom_priv/config #内容如下,指定管理节点为ww-master
pbsserver ww-master
logevent 255
确保/var/spool/torque下的目录spool和undelivered的权限为777(默认就是777)
开启/重启服务,再此之前可以先用qterm命令关闭服务
May 23 18:01:01 ww-master systemd: Started Session 23 of user root. May 23 18:11:23 ww-master PBS_Server: LOG_ERROR::Permission denied (13) in chk_file_sec, Security violation with "/var/spool/torque/spool/" - /var/spool/torque/spool/ cannot be accessed May 23 18:11:23 ww-master PBS_Server: LOG_ERROR::PBS_Server, pbsd_init failed
以上问题表示因为两个文件的权限原因导致PBS_Server无法启动
解决办法
chmod -Rf 1777 /var/spool/torque/undelivered/ chmod -Rf 1777 /var/spool/torque/spool/
多了一位1,表示这一目录只能由创建者删除。
sudo service pbs_server start
#pbs_server是TORQUE集群中head node的核心守护进程,用于接收用户提交的作业请求,根据pbs_sched进程提供的可用节点资源清单进行作业分发和回收
sudo service pbs_sched start
#pbs_sched是TORQUE集群中head node的另外一个核心守护进程,用于监控compute node的运行状态,根据pbs_server传递过来的用户作业脚本要求在集群中寻找可用计算节点并反馈给pbs_server进程
sudo service pbs_mom start
sudo service trqauthd start
#trqauthd是TORQUE集群head node和compute node都需要运行的守护进程,用于授权pbs_mom进程与pbs_server进程之间建立互信连接
便捷命令
# qterm –t quick
# for i in pbs_server pbs_sched pbs_mom trqauthd; do service $i start; done
可以使用下面命令查询服务或进程状态
#服务状态查询
/etc/init.d/pbs_server status
/etc/init.d/pbs_sched status
/etc/init.d/pbs_mom status
/etc/init.d/trqauthd status
#相关进程查询
ps -e | grep pbs #显示pbs_server、pbs_sched、pbs_mom进程
ps -e | grep trqauthd #显示trqauthd进程
# for i in pbs_server pbs_sched pbs_mom trqauthd; do service $i restart; done
如果启动pbs_mom出现下面的错误
[root@ww-master init.d]# service pbs_mom status pbs_mom running but subsys not locked [FAILED]
解决办法
service pbs_mom stop service pbs_mom purge
https://my.oschina.net/zctzl/blog/1580071