sun grid engine简单使用

1. 安装sge

安装master节点:

安装执行主机:

1.配置主机的host表。

2.把要安装的目标主机添加为管理主机: qconf –ah hkdev-4

3.在目标节点上新建sgeadmin用户,拷贝整个安装包到目标主机

4.配置service 端口:

Vim /etc/service添加两行:

sge_qmaster 50001/tcp
sge_execd 50002/tcp

5. 把头节点的/opt/gridengine拷贝到计算节点,运行./install_execd,默认安装即可。

6. 设置环境变量vim /etc/profile.d/sge.sh

SGE_ROOT=/home/sgeadmin/sgeroot; export SGE_ROOT

ARCH=`$SGE_ROOT/util/arch`
DEFAULTMANPATH=`$SGE_ROOT/util/arch -m`
MANTYPE=`$SGE_ROOT/util/arch -mt`

SGE_CELL=sgetest; export SGE_CELL
SGE_CLUSTER_NAME=p50001; export SGE_CLUSTER_NAME
unset SGE_QMASTER_PORT
unset SGE_EXECD_PORT

if [ "$MANPATH" = "" ]; then
MANPATH=$DEFAULTMANPATH
fi
MANPATH=$SGE_ROOT/$MANTYPE:$MANPATH; export MANPATH

PATH=$SGE_ROOT/bin/$ARCH:$PATH; export PATH
# library path setting required only for architectures where RUNPATH is not supported
case $ARCH in
sol*|lx*|hp11-64)
;;
*)
shlib_path_name=`$SGE_ROOT/util/arch -lib`
old_value=`eval echo ‘$’$shlib_path_name`
if [ x$old_value = x ]; then
eval $shlib_path_name=$SGE_ROOT/lib/$ARCH
else
eval $shlib_path_name=$SGE_ROOT/lib/$ARCH:$old_value
fi
export $shlib_path_name
unset shlib_path_name old_value
;;
esac
unset ARCH DEFAULTMANPATH MANTYPE

注意:1.sge整个安装包的用户和组权限应该是sgeadmin,sge目录应该保证其他用户可读。

2.要求关闭防火墙或者打开端口,我选择了关闭防火墙

2.添加队列:

新建一个队列hiseq.q:

[root@hkdevlogin-1 ~]# qconf -aq hiseq.q //队列名

qname hiseq.q //队列名
hostlist @hiseqhosts //主机组,定义这个队列中包含的所有主机
seq_no 0

slot 100 //可以使用的资源

notify 00:00:60
owner_list NONE
user_lists dms //用户列表,这个列表中的用户允许使用该队列,其他的用户不允许使用该队列
xuser_lists NONE

qconf –sql 可以查看所有的队列

[root@hkdevlogin-1 ~]# qconf -sql
all.q
hiseq.q
prs.q

qconf –sq 队列名 可以查看某一个队列的配置信息

定义@hiseqhosts主机组:

[root@hkdevlogin-1 ~]# qconf -mhgrp @hiseqhosts

group_name @hiseqhosts
hostlist hkdev-1.genomics.org.cn hkdev-2.genomics.org.cn\ //多个主机需要换行时需要加”\”

hkdev-3.genomics.org.cn

qconf –shgrpl 可以查看所有的主机组

[root@hkdevlogin-1 ~]# qconf -shgrpl
@allhosts
@hiseqhosts
@prshosts

qconf –shgrp 组名 可以查看某个主机组信息

定义用户列表 dms:

[root@hkdevlogin-1 ~]# qconf -mu dms

name dms //用户组名称
type ACL DEPT
fshare 0
oticket 0
entries dms //该用户组中的用户,多个用户用逗号隔开

qconf -sul 可以查看所有的用户组

[root@hkdevlogin-1 ~]# qconf -sul
arusers
deadlineusers
defaultdepartment
dms
prs
test

qconf -su 用户组名 可以查看某个用户组的信息

[root@hkdevlogin-1 ~]# qconf -su prs
name prs
type ACL DEPT
fshare 0
oticket 0
entries prs

注 :要使用sge,必须在每个节点上都建立同一个帐号,相同的uid和gid

查看队列中主机的情况:

qselect –q 队列名称

[root@hkdevlogin-1 ~]# qselect -q hiseq.q
[email protected]
[email protected]
[email protected]

3. qstat使用:

qstat –f

qstat –explain

qstat –j jobid

4. qmod使用:

qmod –cq 队列名

qmod -cj job名

5. 修改默认shell

[root@hkdevlogin-1 ~]# qconf –mconf //编辑sge的配置文件

login_shells bash,sh,ksh,csh,tcsh //把默认shell改为bash

[root@hkdevlogin-1 ~]# qconf -mq all.q //编辑队列配置文件

shell /bin/bash //把默认的shell改为bash

6. 限制单个计算节点可以使用的资源

[root@hkdevlogin-1 ~]# qconf -me hkdev-1

hostname hkdev-1.genomics.org.cn
load_scaling NONE
complex_values slots=24,virtual_total=32G //这个值不设置的话默认可以使用的值为无限大,任务较多的时候容易把节点跑死掉。
user_lists NONE
xuser_lists NONE
projects NONE
xprojects NONE
usage_scaling NONE
report_variables NONE

7. sge简单使用

qsub –cwd –l vf=1G –q common.q –l h=compute-0-0 test.sh

test.sh:

#!/bin/bash

#$ –S /bin/bash

sleep 100;

8. 启用-l vf参数

[root@qcs script]# qconf –mc

#name shortcut type relop requestable consumable default urgency
#—————————————————————————————-

virtual_free vf MEMORY <= YES YES 0 0

你可能感兴趣的:(Engine,安装,主机)