[LSF 最佳实践] IBM Spectrum LSF推荐配置参数详解
详解lsf.conf和lsb.params中的推荐配置参数及其作用
|
wanlinwang
|
5 min read
概述
本文介绍 IBM 官方推荐的 LSF 配置参数,包括 lsf.conf 和 lsb.params 文件中的常用设置。部分参数显式设置为默认值,可根据实际环境进行调整。
lsf.conf 推荐配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
| # CPU核心定义方式(默认值)
EGO_DEFINE_NCPUS=cores
# 启用交换空间报告
EGO_PIM_SWAP_REPORT=Y
# 作业年份显示
LSB_DISPLAY_YEAR=Y
# 启用性能指标日志
LSB_ENABLE_PERF_METRICS_LOG=Y
# 共享位置增强
LSB_SHARE_LOCATION_ENH=Y
# 显示提交命令名称
LSB_SUB_COMMANDNAME=Y
# 接受的客户端数量(默认值)
LSF_ACCEPT_NUMCLIENTS=6
# 丢弃日志(默认值)
LSF_DISCARD_LOG=Y
# GPU资源忽略(需要时启用)
#LSF_GPU_RESOURCE_IGNORE=Y
# 智能CPU绑定
LSF_INTELLIGENT_CPU_BIND=Y
# Linux cgroup账户(需要时启用)
#LSF_LINUX_CGROUP_ACCT=Y
# 日志队列大小
LSF_LOG_QUEUE_SIZE=100000
# 使用SSH进行lslogin
LSF_LSLOGIN_SSH=Y
# 启用进程跟踪
LSF_PROCESS_TRACKING=Y
# SSH配置(禁用密码认证和严格主机检查)
LSF_RSH="ssh -o 'PasswordAuthentication no' -o 'StrictHostKeyChecking no'"
# 严格检查模式(仅在集群完全关闭时更改)
LSF_STRICT_CHECKING=Y
# 域名剥离(根据实际域名配置)
#LSF_STRIP_DOMAIN=.example.com:.domain.example.com
|
lsf.conf 参数说明
| 参数 |
说明 |
EGO_DEFINE_NCPUS |
定义CPU核心计算方式,cores表示按物理核心计数 |
EGO_PIM_SWAP_REPORT |
启用后PIM会报告交换空间使用情况 |
LSB_DISPLAY_YEAR |
在作业输出中显示年份 |
LSB_ENABLE_PERF_METRICS_LOG |
记录性能指标到日志文件 |
LSF_INTELLIGENT_CPU_BIND |
启用智能CPU绑定,优化作业性能 |
LSF_LOG_QUEUE_SIZE |
日志队列大小,影响日志处理能力 |
LSF_LSLOGIN_SSH |
使用SSH进行lslogin连接 |
LSF_PROCESS_TRACKING |
启用进程跟踪,用于作业资源监控 |
LSF_STRICT_CHECKING |
严格参数检查模式 |
cgroup 配置注意事项
启用 LSF_LINUX_CGROUP_ACCT 前:
- RHEL 6.2+:需要更新
/cgroup/* 和 /etc/fstab
- RHEL 7:查看
/proc/cgroups 中当前挂载的资源控制器
详见 IBM 文档 Process tracking through cgroups
lsb.params 推荐配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
| # 作业调度间隔(验证现有设置)
JOB_SCHEDULING_INTERVAL=0
#JOB_SCHEDULING_INTERVAL=250ms
# 账户文件归档配置
ACCT_ARCHIVE_AGE=30 # 30天
ACCT_ARCHIVE_SIZE=10000000 # 10 GB
MAX_ACCT_ARCHIVE_FILE=10
#ACCT_ARCHIVE_TIME=23:55 # 晚上11:55归档
# 默认项目(默认值)
DEFAULT_PROJECT=default
# 默认资源需求顺序(默认值)
DEFAULT_RESREQ_ORDER=r15s:pg
# 默认用户组(需要时启用)
#DEFAULT_USER_GROUP=staff
# 启用诊断查询
ENABLE_DIAGNOSE=query
# 启用主机交集
ENABLE_HOST_INTERSECTION=Y
# 强制用户组树
ENFORCE_UG_TREE=Y
# 作业依赖评估(需要时启用)
#EVALUATE_JOB_DEPENDENCY=100
# 扩展作业异常通知
EXTEND_JOB_EXCEPTION_NOTIFY=Y
# 作业分布策略(默认值)
JOB_DISTRIBUTE_ON_HOST=any
# 作业信息事件转储间隔(默认值)
JOB_INFO_EVENT_DUMP_INTERVAL=15
# 作业信息内存缓存大小(默认值)
JOB_INFO_MEMORY_CACHE_SIZE=1024
# 预执行重试配置
LOCAL_MAX_PREEXEC_RETRY=5
LOCAL_MAX_PREEXEC_RETRY_ACTION=EXIT
# 最大作业重新排队次数
MAX_JOB_REQUEUE=5
# 孤儿作业终止宽限期
ORPHAN_JOB_TERM_GRACE_PERIOD=60
# 抢占策略(需要时启用)
#PREEMPT_FOR=LEAST_RUN_TIME
# 放宽作业调度顺序
RELAX_JOB_DISPATCH_ORDER=ALLOC_REUSE_DURATION[0 30]
# 启用调度指标
SCHED_METRIC_ENABLE=Y
# 简化保证模式
SIMPLIFIED_GURANTEE=Y
|
lsb.params 参数说明
| 参数 |
说明 |
JOB_SCHEDULING_INTERVAL |
作业调度间隔,0表示尽快调度 |
ACCT_ARCHIVE_AGE |
账户文件归档周期(天) |
ACCT_ARCHIVE_SIZE |
账户文件大小阈值(KB) |
ENABLE_DIAGNOSE |
启用诊断功能,query允许查询诊断 |
ENABLE_HOST_INTERSECTION |
启用主机交集功能 |
ENFORCE_UG_TREE |
强制执行用户组树结构 |
EXTEND_JOB_EXCEPTION_NOTIFY |
扩展作业异常通知功能 |
LOCAL_MAX_PREEXEC_RETRY |
本地预执行最大重试次数 |
LOCAL_MAX_PREEXEC_RETRY_ACTION |
重试超限后的动作 |
MAX_JOB_REQUEUE |
作业最大重新排队次数 |
ORPHAN_JOB_TERM_GRACE_PERIOD |
孤儿作业终止前的等待时间(秒) |
SCHED_METRIC_ENABLE |
启用调度性能指标收集 |
配置生效
修改配置后需要执行:
1
2
3
4
5
| # 重新加载配置
badmin reconfig
# 验证配置
bparams -a
|
参考资料
- IBM Documentation - Additional configuration settings
- IBM Documentation - Best practices and tips for LSF
- IBM Documentation - Process tracking through cgroups
Support the Creator
If you found this article helpful, consider supporting.