OpenPBS-Torque安装手册 联系客服

发布时间 : 星期四 文章OpenPBS-Torque安装手册更新完毕开始阅读b31f1a1dc281e53a5802ff4a

OpenPBS/Torque安装手册

原文出处:http://webhpc.vegasoft.com.cn/blog/?p=65 WebHPC官方网站:http://webhpc.vegasoft.com.cn/

PBS是由NAS(National Academy of Sciences)开发的面向批作业调度以及系统资源管理的软件包。它主要用于管理使用UNIX或Linux的同构或异构的机群系统。PBS是一个商用软 件,拥有完善的解决方案和技术支持,但是价格昂贵。OpenPBS是对PBS系统的开源实现,遵循开源软件的相关约定,所以任何个人和组织都可以自由获得 其源代码并修改之。OpenPBS目前的最新版本为2.3.16。本文介绍的对象即为OpenPBS 2.3.16版,为简洁起见,本文下面不再另行说明版本,默认是2.3.16版。

请注意,在使用OpenPBS 2.3.16提交作业时,提交者用户名长度不能大于15个字符。

一、 OpenPBS的结构

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

PBS服务守护进程: pbs_server 负责接收作业提交,位于服务节点 PBS调度守护进程: pbs_sched 负责调度作业,位于服务节点

PBS MOM守护进程: pbs_mom 负责监控本机并执行作业,位于所有计算节点

二、在单个节点上安装OpenPBS

本节介绍的是通过编译源代码的方式安装OpenPBS。

由于整个OpenPBS都被安装在一台计算机上,所以上述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,这样就可以把OpenPBS安装到指定工作目录中 7. 下面设置OpenPBS(假设工作目录为/usr/spool/PBS/)

a)设置服务器名:编辑/usr/spool/PBS/server_name文件,填写本机机器名(如cngrid217)

b)设置机群所有机器名:编辑/usr/spool/PBS/server_priv/nodes文件,填写本机机器名

c)设置MOM进程配置文件:编辑 /usr/spool/PBS/mom_priv/config文件,写入如下内容

$logevent 0×1ff

$clienthost server_host

其中server_host是本机的机器名,譬如mydemocluster

8. 启动OpenPBS

a)启动mom进程:(任意路径下)执行命令 pbs_mom b)启动调度器进程:执行命令 pbs_sched c)启动OpenPBS服务器进程,创建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已经开始正常工作

三、在多节点机群上安装OpenPBS

本节介绍的是在一个由多个节点组成的计算机机群上安装OpenPBS。在这多个节点之间应有一个节点作为服务节点,负责调度作业,其他节点是计算节点,负责接收作业并计算之。(服务节点自身也可承担计算任务) 由于OpenPBS由三个部件组成,则在机群内应根据角色不同在节点上安装不同的OpenPBS组件。详细而言,在服务节点上应安装PBS服务守护进程 (pbs_server)、MOM进程(pbs_mom)和作业调度器(pbs_sched),而在从节点上应该只安装MOM进程。

不过为了安装和以后变换节点角色方便,这里可以在所有节点上都安装这三个组件,只不过在启动OpenPBS时,服务节点三个组件全部启动,而计算节点只启动MOM进程。

这里假设有N台节点机,机器名分别为node1、node2、??、nodeN;确定node1为服务节点,所有节点都是计算节点。 具体安装步骤:

1. 安装前提:

a) 各节点上都有合适版本的Linux和gcc编译器; b) 各节点之间能互连

c) 安装者能在每个节点上以root身份登录 d) 已下载合适的pbs源码安装包

2 在所有节点上执行:

a) 用root身份登录;

b) 用tar zxf pbs.tar.gz命令释放安装包到指定位置,譬如:/opt/OpenPBS_2_3_16/