IBM Spectrum LSF 快速参考

快速参考 LSF 命令,守护程序,配置文件,日志文件和重要集群配置参数。

样本 UNIX 和 Linux 安装目录

样本 UNIX 和 Linux 安装目录

守护程序错误日志文件

守护程序错误日志文件存储在 LSF_LOGDIRlsf.conf 文件中定义的目录中。


LSF 基本系统守护程序日志文件 LSF 批处理系统守护程序日志文件
pim.log.host_name mbatchd.log.host_name
res.log.host_name sbatchd.log.host_name
lim.log.host_name mbschd.log.host_name

如果在 ego.conf 文件中定义了 EGO_LOGDIR 参数,那么 lim.log.host_name 文件将存储在 EGO_LOGDIR 参数定义的目录中。

配置文件

lsf.conflsf.sharedlsf.cluster.cluster_name 文件位于 lsf.conf 文件中 LSF_CONFDIR 参数指定的目录中。

lsb.paramslsb.queueslsb.moduleslsb.resources 文件位于 LSB_CONFDIR/cluster_name/configdir/ 目录中。


文件 描述
install.config LSF 安装和配置的选项
lsf.conf 描述集群配置和操作的通用环境配置文件
lsf.shared 所有集群共享的定义文件。 用于定义集群名称,主机类型,主机模型和站点定义的资源
lsf.cluster.cluster_name 用于定义站点定义的共享资源的主机,管理员和位置的集群配置文件
lsb.applications 定义应用程序概要文件以定义相同类型的作业的公共参数
lsb.params 配置 LSF 批处理参数
lsb.queues 批处理队列配置文件
lsb.resources 配置资源分配限制,导出和资源使用限制
lsb.serviceclasses LSF 集群中的服务级别协议 (SLA) 定义为服务类,用于定义 SLA 的属性
lsb.users 配置用户组,用户和用户组的分层公平共享以及用户和用户组的作业槽限制

lsf.conf 文件中的集群配置参数


参数 描述 UNIX 缺省值
LSF_BINDIR 包含 LSF 用户命令的目录,这些命令由同一类型的所有主机共享 LSF_TOP/version/OStype/bin
LSF_CONFDIR 所有 LSF 配置文件的目录 LSF_TOP/conf
LSF_ENVDIR 包含 lsf.conf 文件的目录。 必须由 root 用户拥有。 /etc (如果未定义 LSF_CONFDIR )
LSF_INCLUDEDIR 包含 LSF API 头文件 lsf.hlsbatch.h 的目录 LSF_TOP/version/include
LSF_LIBDIR LSF 库,由同一类型的所有主机共享 LSF_TOP/version/OStype/lib
LSF_LOGDIR (可选) LSF 守护程序日志的目录。 必须由 root 用户拥有。 /tmp
LSF_LOG_MASK 来自 LSF 命令的错误消息的日志记录级别 LOG_WARNING
LSF_MANDIR 包含 LSF 联机帮助页的目录 LSF_TOP/version/man
LSF_MISC 样本 C 程序和 shell 脚本以及外部 LIM 的模板 (elim) LSF_TOP/version/misc
LSF_SERVERDIR 所有服务器二进制文件和 shell 脚本以及由 LSF 守护程序启动的外部可执行文件的目录必须由 root 用户拥有,并且由同一类型的所有主机共享 LSF_TOP/version/OStype/etc
LSF_TOP 顶级安装目录。 LSF_TOP 的路径必须共享,并且可供集群中的所有主机访问。 它不能是根目录 (/)。 未定义

安装所需

LSB_CONFDIR LSF 批处理配置目录的目录,包含用户和主机列表,操作参数和批处理队列 LSF_CONFDIR/lsbatch
LSF_LIVE_CONFDIR bconf 命令写入的 LSF 实时重新配置目录的目录。 LSB_SHAREDIR/cluster_name/live_confdir
LSF_SHAREDIR 每个集群的 LSF 批处理作业历史记录和记帐日志文件的目录必须由主 LSF 管理员拥有 LSF_TOP/work
LSF_LIM_PORT 用于与 lim 守护程序通信的 TCP 服务端口 7879
LSF_RES_PORT 用于与 res 守护程序通信的 TCP 服务端口 6878
LSF_MBD_PORT 用于与 mbatchd 守护程序通信的 TCP 服务端口 6881
LSF_SBD_PORT 用于与 sbatchd 守护程序通信的 TCP 服务端口 6882

管理和记帐命令

只有 LSF 管理员和 root 用户才能使用这些命令。


命令 描述
lsadmin LSF 管理员工具,用于控制 LSF 集群中 LIM 和 RES 守护程序的操作, lsadmin help 显示所有子命令
lsfinstall 使用 install.config 输入文件安装 LSF
lsfrestart 在本地集群中的所有主机上重新启动 LSF 守护程序
lsfshutdown 关闭本地集群中所有主机上的 LSF 守护程序
lsfstartup 在本地集群中的所有主机上启动 LSF 守护程序
badmin LSF 用于控制 LSF 批处理系统 (sbatchdmbatchd,主机和队列) 操作的管理工具 badmin 帮助显示所有子命令
bconf 更改活动内存中的 LSF 配置

守护程序


守护程序名称 描述
lim 装入信息管理器 (LIM): 收集有关集群中所有服务器主机的装入和资源信息,并通过 LSLIB 向应用程序提供主机选择服务。 LIM 维护有关静态系统资源和动态负载索引的信息
mbatchd 管理 批处理守护程序 (MBD): 接受并保存所有批处理作业。 MBD 通过联系 管理 主机 LIM 定期检查所有服务器主机上的装入索引。
mbschd 管理 批处理调度程序守护程序: 执行 LSF 的调度功能,并将作业调度决策发送至 MBD 以进行分派。 在 LSF 管理 主机上运行
sbatchd 服务器 批处理守护程序 (SBD): 接受来自 MBD 的作业执行请求,并监视作业进度。 控制作业执行,实施批处理策略,向 MBD 报告作业状态以及启动 MBD。
pim Process Information Manager (PIM): 监视已提交作业在运行时使用的资源。 PIM 用于实施资源限制和负载阈值,以及用于公平共享调度
res 远程执行服务器 (RES): 接受来自所有负载共享应用程序的远程执行请求,并处理远程主机上用于负载共享进程的 I/O。

用户命令

查看有关集群的信息。
命令 描述
bhosts 显示主机及其静态和动态资源
blimits 显示有关正在运行的作业的资源分配限制的信息
bparams 显示有关可调批处理系统参数的信息
bqueues 显示有关批处理队列的信息
busers 显示有关用户和用户组的信息
lshosts 显示主机及其静态资源信息
lsid 显示当前 LSF 版本号,集群名称和 管理 主机名
lsinfo 显示负载共享配置信息
lsload 显示主机的动态装入索引

监视作业和任务。
命令 描述
bacct 报告已完成 LSF 个作业的记帐统计信息
bapp 显示有关附加到应用程序概要文件的作业的信息
bhist 显示有关作业的历史信息
bjobs 显示有关作业的信息
bpeek 显示未完成的作业的标准输出和 stderr
bsla 显示有关面向目标的服务级别协议调度的服务类配置的信息
bstatus 读取或设置外部作业状态消息和数据文件

提交和控制作业。
命令 描述
bbot 相对于队列中的最后一个作业移动暂挂作业
bchkpnt 对可设置检查点的作业设置检查点
bkill 向作业发送信号
bmig 迁移可检查点或可重新运行的作业
bmod 修改作业提交选项
brequeue 终止作业并重新排队
bresize 释放插槽并取消暂挂的作业调整大小分配请求
brestart 重新启动检查点作业
bresume 恢复已暂挂的作业
bstop 暂挂作业
bsub 提交作业
bswitch 将未完成的作业从一个队列移至另一个队列
btop 相对于队列中的第一个作业移动暂挂作业

bsub 命令

bsub [options] 命令[arguments] 命令的所选选项


选项 描述
-ar 指定作业可自动调整大小
-H 保留提交时处于 PSUSP 状态的作业
-I|-Ip|-Is 提交批处理交互式作业。 -Ip 创建伪终端。 -Is 以 shell 方式创建伪终端。
-K 提交作业并等待作业完成
-r 使作业可重新运行
-x 互斥执行
-app 应用程序概要文件名称 将作业提交到指定的应用程序概要文件
-b 开始时间 以 [[month:]day:]:minute 格式在指定日期和时间上或之后分派作业
-C core_limit 设置属于此作业的所有进程的每个进程 (软) 核心文件大小限制 (KB)
-c cpu_time[/host_name | /host_model] 限制作业可以使用的总 CPU 时间。 CPU 时间格式为 [hour:]minutes
-cwd "current_working_directory" 指定作业的当前工作目录

-D 数据限制

设置属于作业的每个进程的每个进程 (软) 数据段大小限制 (KB)

-E "pre_exec_command [自变量]" 在作业运行之前在执行主机上运行指定的 pre-exec 命令
-Ep "post_exec_command [自变量]" 在作业完成后在执行主机上运行指定的 post-exec 命令
-e 错误文件 将标准错误输出附加到文件
-eo 错误文件 将作业的标准错误输出覆盖到指定文件
-F 文件限制 为属于作业的每个进程设置每个进程 (软) 文件大小限制 (KB)
-f "local_file op[remote_file]" ... 在本地 (提交) 主机和远程 (执行) 主机之间复制文件。 奥普 is one of >, <, <<, ><, <>
-i input_file | -is 输入文件 从指定文件获取作业的标准输入
-J "job_name[index_list]%job_slot_limit" 将指定的名称分配给作业。 作业数组 index_list 的格式为 start[-end[:step]] ,%job_slot_limit 是可以同时运行的最大作业数。
-k "chkpnt_dir [chkpnt_period] [method=method_name]" 使作业检查点可执行,并指定检查点目录,周期 (以分钟为单位) 和方法
-M 内存限制 设置每个进程 (软) 内存限制 (KB)
-m "host_name [@cluster_name] [[!] | + [pref_level]] | host_group[[!] | + [pref_level]] | compute_unit[[!] | + [pref_level]] ..." 在其中一个指定主机上运行作业。 主机或组的名称后面的加号 (+) 指示首选项。 (可选) 正整数指示首选项级别。 数字越大,表示首选度越高。
-n min_proc[,max_proc] 指定并行作业所需的最小和最大处理器数
-o 输出文件 将标准输出附加到文件
-oo 输出文件 将作业的标准输出覆盖到指定的文件
-p 进程限制 限制整个作业的进程数
-q "queue_name ..." 将作业提交到其中一个指定队列
-R "res_req" [-R "res_req" ...] 指定主机资源需求
-S stack_limit 为属于作业的每个进程设置每个进程 (软) 堆栈段大小限制 (KB)
-sla 服务类名 指定要在其中运行作业的服务类
-T 线程限制 设置整个作业的并发线程数限制
-t term_time 以 [[month:]day:]hour:minute 格式指定作业终止截止期限
-v swap_limit 设置整个作业的总进程虚拟内存限制 (KB)
-W run_time[/host_name |/host_model] 以 [hour:]minute 格式设置作业的运行时限制
-h 将命令用法打印到 stderr 并退出
-V LSF 发行版打印到 stderr 并退出