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 导入队列设置