[LSF 最佳实践] mbatchd性能指标监控与分析
详解LSF mbatchd性能指标配置和日志分析方法
|
wanlinwang
|
6 min read
概述
LSF mbatchd 性能指标帮助管理员识别 mbatchd 性能问题的根本原因,以便采取适当的纠正措施。这些指标在问题与集群环境相关时特别有用,例如共享存储或网络连接的性能问题。
启用方式
| 方法 |
说明 |
| lsf.conf 配置 |
设置参数后重启 mbatchd |
| badmin perflog |
动态启用,无需重启 |
在 lsf.conf 中配置
在 lsf.conf 文件中设置以下参数,然后运行 badmin mbdrestart 使配置生效:
1
2
3
4
5
6
7
8
| # 启用性能日志
LSB_ENABLE_PERF_METRICS_LOG=Y
# 设置性能日志目录
LSB_PERF_METRICS_LOGDIR=<directory>
# 采样周期(秒)
SCHED_METRIC_SAMPLE_PERIOD=300
|
使用 badmin perflog 启用
1
| badmin perflog [-t sample_period] [-d duration] [-f log_file_name] [-o]
|
启用后,mbatchd 将定期将性能数据写入性能日志文件。
性能日志格式
日志示例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| Oct 7 08:57:11 2022 8036 6 8.0.1 sample period: 300 307
Oct 7 08:57:11 2022 8036 6 8.0.1 job_submission_log_jobfile logJobInfo: 2741 0 104 0 632 0 10 0 10 0 10 0 80
Oct 7 08:57:11 2022 8036 6 8.0.1 job_submission do_submitReq: 3023 0 166 0 2753 0 10 0 480 0 10 0 230
Oct 7 08:57:11 2022 8036 6 8.0.1 job_status_update statusJob: 0 0 0 0 0 0 0 0 0 0 0 0 0
Oct 7 08:57:11 2022 8036 6 8.0.1 job_rusage_update rusageJob: 0 0 0 0 0 0 0 0 0 0 0 0 0
Oct 7 08:57:11 2022 8036 6 8.0.1 sched_get_new_job doSchedGetJobReq: 59 45 143 93 5 0 0 0 0 0 0 0 0
Oct 7 08:57:11 2022 8036 6 8.0.1 sched_get_resource doSchedGetRsrcReq: 59 129 3483 382 22 0 10000 169 10 0 0 0 0
Oct 7 08:57:11 2022 8036 6 8.0.1 job_dispatch_read_jobfile readLogJobInfo: 0 0 0 0 0 0 0 0 0 0 0 0 0
Oct 7 08:57:11 2022 8036 6 8.0.1 job_dispatch EM_executeJobCtrlDecsn: 0 0 0 0 0 0 0 0 0 0 0 0 0
Oct 7 08:57:11 2022 8036 6 8.0.1 sched_publish_decision doSchedPublishDecision: 0 0 0 0 0 0 0 0 0 0 0 0 0
Oct 7 08:57:11 2022 8036 6 8.0.1 sched_publish_pending_reason doSchedPublishReason: 0 0 0 0 0 0 0 0 0 0 0 0 0
Oct 7 08:57:11 2022 8036 6 8.0.1 mbd_call_sbd call_server: 0 0 0 0 0 0 0 0 0 0 0 0 0
Oct 7 08:57:11 2022 8036 6 8.0.1 mbd_update_load RB_updateLoad: 18 1880 3836 2613 47 0 0 0 0 0 0 0 0
Oct 7 08:57:11 2022 8036 6 8.0.1 mbd_query_job fork: 263 353 2596 1206 317 0 0 0 0 0 10000 228 60
Oct 7 08:57:11 2022 8036 6 8.0.1 mbd_clean_job clean: 14 1 3 2 0 0 0 0 0 0 0 0 0
Oct 7 08:57:11 2022 8036 6 8.0.1 mbd_event_switch switchEvent: 0 0 0 0 0 0 0 0 0 0 0 0 0
Oct 7 08:57:11 2022 8036 6 8.0.1 job_dependency_eval checkJgrpDep: 59 12 2313 0 0 0 0 0 0 0 0 0
Oct 7 08:57:11 2022 8036 6 8.0.1 mbd_channel chanSelect/chanPoll: 2375 3 2012 299484 0 10000 4 10 0 10000 4 10
|
日志字段说明
每行日志包含以下字段:
| 字段 |
说明 |
| Metric category name |
指标类别名称 |
| Function name |
函数名称 |
运行时间指标 (rt_*)
| 字段 |
说明 |
Count |
采样周期内函数调用总次数 |
rt_min |
单次函数调用的最小运行时间 |
rt_max |
单次函数调用的最大运行时间 |
rt_avg |
函数调用的平均运行时间 |
rt_total |
所有函数调用的总运行时间 |
用户态 CPU 时间指标 (ut_*)
| 字段 |
说明 |
ut_min |
单次调用的最小用户态 CPU 时间 |
ut_max |
单次调用的最大用户态 CPU 时间 |
ut_avg |
调用的平均用户态 CPU 时间 |
ut_total |
所有调用的总用户态 CPU 时间 |
系统态 CPU 时间指标 (st_*)
| 字段 |
说明 |
st_min |
单次调用的最小系统态 CPU 时间 |
st_max |
单次调用的最大系统态 CPU 时间 |
st_avg |
调用的平均系统态 CPU 时间 |
st_total |
所有调用的总系统态 CPU 时间 |
主要指标类别
| 类别 |
函数 |
说明 |
job_submission_log_jobfile |
logJobInfo |
作业提交日志写入 |
job_submission |
do_submitReq |
作业提交请求处理 |
job_status_update |
statusJob |
作业状态更新 |
job_rusage_update |
rusageJob |
作业资源使用更新 |
sched_get_new_job |
doSchedGetJobReq |
调度器获取新作业 |
sched_get_resource |
doSchedGetRsrcReq |
调度器获取资源 |
job_dispatch_read_jobfile |
readLogJobInfo |
读取作业文件 |
job_dispatch |
EM_executeJobCtrlDecsn |
作业调度执行 |
sched_publish_decision |
doSchedPublishDecision |
发布调度决策 |
sched_publish_pending_reason |
doSchedPublishReason |
发布等待原因 |
mbd_call_sbd |
call_server |
mbatchd 调用 sbatchd |
mbd_update_load |
RB_updateLoad |
更新负载信息 |
mbd_query_job |
fork |
作业查询 |
mbd_clean_job |
clean |
作业清理 |
mbd_event_switch |
switchEvent |
事件切换 |
job_dependency_eval |
checkJgrpDep |
作业依赖评估 |
mbd_channel |
chanSelect/chanPoll |
通道轮询 |
性能分析技巧
识别慢操作
检查 rt_max 值较高的记录,可能指示:
识别高负载操作
检查 Count 和 rt_total 值:
- 高
Count:操作频繁调用
- 高
rt_total:累计消耗时间多
关注关键操作
- job_submission:作业提交性能
- mbd_update_load:负载更新效率
- mbd_query_job:查询处理性能
- mbd_channel:通信性能
参考资料
- IBM Documentation - Performance metrics for mbatchd
- IBM Documentation - Best practices and tips for LSF
Support the Creator
If you found this article helpful, consider supporting.