在 LSF 中,我们经常会遇到某些应用在提交时必须提交到指定的 queues 中去运行的情况。
如遇到这种需求,我们需要对进程进行判断,然后将进程扔到配置好的 queues 中即可。
操作分 3 步。
1、配置 esub,开启此项功能
配置 ****/lsf/conf/lsf.conf,添加以下行:
LSB_ESUB_METHOD=check LSB_SUB_COMMANDNAME=Y
2、配置 esub 相关文件
建立配置文件:****/linux2.6-glibc2.3-x86_64/etc/esub.check。
编辑 esub.ckeck 文件
#!/bin/bash.$LSB_SUB_PARM_FILEexec 1>&2echo $LSB_SUB_COMMAND_LINE|grep 进程名 >/dev/nullif [ $? -eq 0 ];thenecho redierct job to queue: 指定的queuesecho LSB_SUB_QUEUE=\"指定的queues\">> $LSB_SUB_MODIFY_FILEfiexit 0
3、建立专用 queues 接收提交的任务
在 ****/lsb.queues 中建立新队列:
Begin Queue QUEUE_NAME = 队列名 //队列名 PRIORITY = 40 //队列优先级 RERUNNABLE = Y //RERUNNABLE UJOB_LIMIT = 40 //每用户可提交作业数量#RUN_WINDOW = 20:00-8:30#USERS = xxxx xxxx //指定用户可提交,用户名 以空格分隔 #HOSTS = xxxx xxxx xxxx xxxx xxxx //队列中包含哪些服务器,服务器名,以空格分隔DESCRIPTION = xxxx queues //队列描述 End Queue
重启,使配置生效
lsadmin reconfigbadmin reconfigbadmin mbdrestartbadmin hrestart
网友留言: