PBS是由NAS(National Academy of Sciences)开发的面向批作业调度以及系统资源管理的软件包。它主要用于管理使用UNIX或Linux的同构
或异构的机群系统。PBS是一个商用软件,拥有完善的解决方案和技术支持,但是价格昂贵。tourque是对PBS系统的开源实现,遵循开源软件
的相关约定,所以任何个人和组织都可以自由获得其源代码并修改之。torque目前的最新版本为torque3.0.2。
请注意,在使用torque3.0.2提交作业时,提交者用户名长度不能大于15个字符。
一、 OpenPBS的结构
torque主要由三个主要部件组成:
PBS服务守护进程: pbs_server 负责接收作业提交,位于服务节点
PBS调度守护进程: pbs_sched 负责调度作业,位于服务节点
PBS MOM守护进程: pbs_mom 负责监控本机并执行作业,位于所有计算节点
二、在单个节点上安装torque
本节介绍的是通过编译源代码的方式安装torque
由于整个torque都被安装在一台计算机上,所以上述pbs_server、pbs_mom和pbs_sched都会被安装在一起。
具体步骤如下:
1. 安装前提:
a)机器上安装有合适版本的Linux(包括Redhat9、AS3、AS4等)、gcc编译器以及其他所需的包;
b)安装者能以root帐户登录计算机;
c)下载合适的源码形式安装包,如pbs.tar.gz
2. 以root帐号登录计算机
3. 用tar zxf pbs.tar.gz命令释放安装包到指定位置,譬如:/opt/OpenPBS_2_3_16/
4. 进入解压得到的目录,执行命令:
a)./configure –disable-gui –set-server-home={YOUR_PBS_HOME}
说明:有的环境下可能是—with-server-home,具体可以通过./configure –-help查看
b) ./configure –enable-docs –disable-gui
其中:
–disable-gui:说明不安装GUI组件,因为该组件不常用,且对linux的tcl等库的版本颇为挑剔,往往使安装进程无法继续
–set-server-home: 指定OpenPBS的工作目录,默认是 /usr/spool/PBS/
5. 执行make
6. 执行make install,这样就可以把torque安装到指定工作目录中
7. 下面设置torque(假设工作目录为/var/spool/torque/)
a)设置服务器名:编辑/var/spool/torque/server_name文件,填写本机机器名(如cngrid217)
b)设置机群所有机器名:编辑/var/spool/torque/server_priv/nodes文件,填写本机机器名
c)设置MOM进程配置文件:编辑 /var/spool/torque/mom_priv/config文件,写入如下内容
$logevent 0×1ff
$clienthost server_host
其中server_host是本机的机器名,譬如mydemocluster
8. 启动torque
a)启动mom进程:(任意路径下)执行命令 pbs_mom
b)启动调度器进程:执行命令 pbs_sched
c)启动torque服务器进程,创建pbs数据库
执行命令 pbs_server -t create
其参数 -t create 只在首次启动server进程时才需要
9. 创建并设置作业队列:
a) 用qmgr创建队列normal
qmgr -c “c q normal”
其中:
-c 表示其后是命令
c 表示创建
q 表示队列
b) 设定队列的类型为可执行队列
qmgr -c “s q normal queue_type=Execution”
其中s表示设置。
c) 设定队列中任务的最大运行时间为24小时(CPU时间)
qmgr -c “s q normal resources_max.cput=24:00:00″
d) 设定该队列中任务最小运行时间为1秒(CPU时间)
qmgr -c “s q normal resources_min.cput=1″
e) 设定该队列中任务默认运行时间为12分钟(CPU时间)
qmgr -c “s q normal resources_default.cput=12:00″
f) 使队列生效
qmgr -c “s q normal enabled=true”
g) 启用队列
qmgr -c “s q normal started=true”
h) 将normal队列设定为默认队列
qmgr -c “s s default_queue=normal”
i) 在创建完成normal队列后,还可按照a~h各步骤创建拥有其他属性的队列
j) 为了方便安装过程,同时也避免重复操作时出错,可使用已有的配置文件完成队列设置工作:
i. 设配置文件名为 pbsconf
ii. 使用命令 qmgr < pbsconf 导入队列设置
10. 将PBS做成系统服务,以便随时启动、关闭它
a编辑/etc/pbs.conf文件,填入如下内容:
pbs_home=/usr/spool/PBS
pbs_exec=/usr/local
start_server=1
start_sched=1
start_mom=1
b) 将OpenPBS解压目录中的 ……/src/tools/init.d/pbs文件复制到/etc/init.d/pbs
c) 执行命令chkconfig –add pbs
d) 用chkconfig –list | grep pbs 命令查看pbs服务是否已被加入
e) 现在就可以使用如下命令启动、关闭pbs了:
i. 启动pbs: service pbs start
ii. 关闭pbs: service pbs stop
iii. 重启pbs: service pbs restart
11. 检查安装是否成功:
a) 进入一个非root帐户
b) 执行命令 echo hostname >test.pbs 创建一个返回机器名的pbs脚本ben
c) 执行qsub test.pbs 命令,提交作业
d) 如果在test.pbs所在目录下出现test.pbs.o×(其中×是以0开始的某个非负整数),且其内容为本机机器名,则说明openPBS已
经开始正常工作
除了以上各点
还需要注意的是:
在root用户下:
cd Desttop/torque3.0.2
./configure
make
make install
将/etc/host的内容改为
127.0.0.1 montecarlo montecarlo.localdomain //假设机器名为montecarlo
./torque.setup root
设置MOM进程配置文件
创建/var/spool/torque/mom_priv下config 文件
内容为:
$pbsserver server.torque.com
$logevent 255
设置机群所有机器名:
在/var/spool/torque/server_priv创建nodes文件
内容为:
montecarlo np=4 all
查看queue的状态
qstat -s
删除任务
qdel
查看所有queue列表
qstat -Qf queue
阅读(590) | 评论(0) | 转发(0) |