天天看點

作業送出系統Torque

PBS是功能最為齊全,曆史最悠久,支援最廣泛的本地叢集排程器之一。 PBS的目前包括openPBS,PBS Pro和Torque三個主要分支。 其中OpenPBS是最早的PBS系統,目前已經沒有太多後續開發,PBS pro是PBS的商業版本,功能最為豐富。Torque是Clustering公司接過了OpenPBS,并給與後續支援的一個開源版本。

下面是本人安裝torque的過程。

一、Torque安裝

在master(管理結點上)

1、解壓安裝包

[[email protected] tmp]# tar zxvf torque-2.3.0.tar.gz

2、進入到解壓後的檔案夾

./configure --with-default-server=master

make

make install

安裝完成後,将torque檔案夾中的bin、sbin加入到環境變量中

3、

(1)[[email protected] torque-2.3.0]#./torque.setup <user>

<user>必須是個普通使用者

(2)[[email protected] torque-2.3.0]#make packages

把産生的 tpackages , torque-package-clients-linux-x86-64.sh,

torque-package-mom-linux-x86-64.sh 拷貝到所有節點。

(3)[[email protected] torque-2.3.0]# ./torque-package-clients-linux-x86_64.sh --install

[[email protected] torque-2.3.0]# ./torque-package-mom-linux-x86_64.sh --install

(4)編輯/var/spool/torque/server_priv/nodes (需要自己建立)

     加入如下内容

master  np=4

node01 np=4

.......

node09 np=4

(5)啟動pbs_server,pbs_sched,pbs_mom,并把其寫到/etc/rc.local裡使其能開機自啟動。

(6)建立隊列

[[email protected] ~]# qmgr

create queue students

set queue students queue_type = Execution

set queue students Priority = 40

set queue students resources_max.cput = 96:00:00

set queue students resources_min.cput = 00:00:01

set queue students resources_default.cput = 96:00:00

set queue students enabled = True

set queue students started = True

4、在node0x (x=1-9,計算結點上)

[[email protected] torque-2.3.0]# ./torque-package-clients-linux-x86_64.sh --install

[[email protected] torque-2.3.0]# ./torque-package-mom-linux-x86_64.sh --install

然後啟動pbs_mom ,把pbs_mom寫入/etc/rc.local

二、Torque PBS使用

1、建立使用者

   在master的root下

   useradd test

passwd test

   輸入test密碼

到/var/yp下make一下

2、配置普通使用者的ssh

   su test

   cd

ssh-keygen -t dsa

cd .ssh

cat id_pub.dsa >>authorized_keys

chmod 600 authorized_keys

3、編寫作業腳本

[[email protected] t]vi pbsjob

#!/bin/tcsh

#PBS -o /home/test1/pbstest/t/output 标準輸出檔案

#PBS -e /home/test1/pbstest/t/error 錯誤輸出檔案

#PBS -l nodes=5:ppn=4 規定使用的節點數以及每個節點能跑多少核

#PBS –q students 把任務送出到students隊列中

cd $PBS_O_WORKDIR 到工作目錄下(此為PBS提供的環境變量)

mpirun –machine $PBS_NODEFILE -np 20 ./vasp

4、啟動mpd

mpdboot -n 10 -f mfa

mfa内容:

master:4

node01:4

….

node09:4

5、送出,查詢,删除作業

送出作業:qsub pbsjob

作業送出後會有一個作業号

[[email protected] pbstest]$ qsub pbsjob

48.master

查詢作業:qstat

[[email protected] pbstest]$ qstat

Job id                               Name                User            Time Use  S        Queue

------------------------- ---------------- --------------- --------  - -------------------------------

48.master                         pbstest               test1            00:00:00   R        students

删除作業:qdel 作業号

[[email protected] pbstest]$ qdel 48

====================================================================

下載下傳torque-2.3.0.tar包,置于HOME下

        tar xvf torque-2.3.0.tar

        cd torque-2.3.0

        ./configure

        make

        make install

        ./torque.setup

注1:這一步後面的user必須得是非root使用者。

注2:這一步之前要把/usr/local/sbin/加入到PATH中。

        make packages

将産生的 tpackages,torque-package-clients-linux-x86-64.sh和torque-package-mom-linux-x86-64.sh 拷貝到所有節點。

在所有節點上執行./torque-package-clients-linux-x86_64.sh --install和./torque-package-mom-linux-x86_64.sh --install,主節點上也執行一下。

編輯/var/spool/torque/server_priv/nodes

        格式為

        node1 np=8

        node2 np=8

        ……

編輯/var/spool/torque/server_name内容為主節點的名字。

在主節點啟動pbs_server,pbs_sched,pbs_mom,直接輸入這三個指令就可以了,在計算節點隻要啟動pbs_mom。

建立隊列,使用root使用者

        qmgr

        create queue students

        set queue students queue_type = Execution

        set queue students enabled = True

        set queue students started = True

注:這裡不能使用它預設的那個隊列,否者用ms送出任務時會出現權限問題,不知道為什麼。

至此配置完成,可以使用qstat/qstat -Q/qstat -q/qstat -f等指令檢視隊列狀态。

4配置MS網關

假設MS安裝在預設位置,在HOME下

設定使用PBS管理作業:

        cd ~/Accelrys/MaterialsStudio44/etc/Gateway/config/

        ./configure queue -queuepath PBS/dsd_pbs -activate

編輯../../Gateway/root_default/dsd/conf/gw-info.sbd

設定參數queuingsystem=PBS/dsd_pbs

編輯../../Gateway/root_default/dsd/conf/gwparams.cfg

設定參數gw_queuingsystem=PBS

重新開機網關~/Accelrys/MaterialsStudio44/etc/Gateway/msgateway_control_18888 restart

5Windows下的設定:

在Sever Console下重新整理伺服器,确認伺服器屬性中的queue裡有我們建立的students隊列。

在送出計算任務裡的queue選上students,就可以啦~~

PS:如果隊列一直顯示queued不開始,而确實伺服器上又沒有任務在計算的話,可以使用qrun jobid來開始任務。我第一次是這麼開始,之後就不用了,不知道為什麼

繼續閱讀