实现DCGM指标的全面监控
对运维人员来说,实现对Kubernetes的大规模GPU设备可监测能力至关重要。通过监测GPU相关指标能够了解整个集群的GPU使用情况、健康状态、工作负载性能等,从而实现对异常问题的快速诊断、优化GPU资源的分配、提升资源利用率等。除运维人员以外,其他人员(例如数据科学家、AI算法工程师等)也能通过相关监控指标了解业务的GPU使用情况,以便进行容量规划和任务调度。
新一代NVIDIA支持使用数据中心GPU管理器(DCGM)来管理大规模集群中的GPU。CCE AI套件(NVIDIA GPU)插件(版本2.7.40及以上)基于NVIDIA DCGM构建,提供了更强大的GPU监控功能。DCGM提供了种类丰富的GPU监控指标,功能特性如下:
- GPU行为监控
- GPU配置管理
- GPU Policy管理
- GPU健康诊断
- GPU级别统计和线程级别统计
- NVSwitch配置和监控
本文基于CCE云原生监控插件和dcgm-exporter实现丰富的GPU观测场景,常用指标请参见DCGM提供的GPU监控指标。关于dcgm-exporter的更多信息,请参见dcgm-exporter。
前提条件
集群中已有正常运行的NVIDIA GPU节点。
约束与限制
- 启用dcgm-exporter组件时,要求CCE AI套件(NVIDIA GPU)插件版本在2.7.40及以上。
- 采集DCGM指标信息时,要求云原生监控插件版本在3.12.0及以上。
步骤一:启用dcgm-exporter组件
- 登录CCE控制台,单击集群名称进入集群,在左侧导航栏中选择“插件中心”,在右侧找到CCE AI套件(NVIDIA GPU)插件,单击“安装”或“更新”。
- 选择“启用dcgm-exporter组件进行DCGM指标观测”,开启后将以DaemonSet形式在GPU节点上部署dcgm-exporter组件。
- 设置插件支持的其他参数配置,单击“安装”或“更新”。参数配置详情请参见CCE AI套件(NVIDIA GPU)。
步骤二:采集DCGM指标信息
默认情况下,dcgm-exporter暴露的指标不会被Prometheus自动采集和上报。您需要在安装云原生监控插件之后,前往“配置中心”手动开启相关数据采集功能,具体存在以下两种情形:
- 未开启“系统预置采集”:如果暂未安装云原生监控插件,或安装云原生插件后暂未在“配置中心”开启“系统预置采集”,则可以在“配置中心”的ServiceMonitor开启dcgm-exporter数据采集。
- 已开启“系统预置采集”:如果您已安装云原生监控插件,并且已在“配置中心”中开启“系统预置采集”,则需要在“系统预置采集”中开启dcgm-exporter数据采集。
如果您暂未安装云原生监控插件,或安装云原生插件后暂未在“配置中心”开启“系统预置采集”,请参考本节步骤配置。
- 登录CCE控制台,单击集群名称进入集群。
- 在左侧导航栏中选择“集群 > 插件中心”,在右侧找到云原生监控插件,单击“安装”。在“安装插件”页面上方,选择“插件版本”,版本要求在3.12.0及以上。如果需要将采集的GPU数据上报AOM服务,请开启“监控数据上报至AOM服务”,并选择“指标上报的AOM实例”。此处采集的GPU数据属于自定义指标,上传至AOM会涉及一定费用,具体请参见价格详情。
关于云原生监控插件的其他配置,请参见云原生监控插件。
- 插件配置完成后,单击“安装”。插件显示“运行中”,则说明安装成功。
- 在左侧导航栏中选择“集群 > 配置中心”,切换至“监控运维配置”页签。在“采集配置”中找到“ServiceMonitor”,单击“管理”。
- 在“采集配置”页面中单击搜索栏,选择“名称”,在下拉框中单击“dcgm-exporter”,并在搜索结果中选择“启用”。
如果您已安装云原生监控插件,并在“配置中心”启用了“系统预置采集”功能,系统预置的ServiceMonitor和PodMonitor将被删除,导致无法通过ServiceMonitor采集dcgm-exporter的数据。若您需要采集dcgm-exporter的相关监控数据,请按照以下步骤配置:
- 登录CCE控制台,单击集群名称进入集群。
- 在左侧导航栏单击“集群 > 配置中心”,在右侧切换至“监控运维配置”页签。在“采集配置 > 系统预置采集”中单击“管理”。
- 在“采集配置”页面单击搜索栏,选择任务名称,在下拉框中选择dcgm-exporter。在搜索结果的“指标采集”列选择“采集全量指标”,并选择“启用”。
步骤三:在AOM中查看DCGM指标信息
如果您需要在AOM中查看DCGM指标信息,请确保已在云原生监控插件中开启“监控数据上报至AOM服务”。此处采集的GPU数据属于自定义指标,上传至AOM会涉及一定费用,具体请参见价格详情。
- 进入AOM管理页面,在实例列表中选择所上报的AOM实例。
- 进入“指标管理”,在上方“集群”中选择使用的集群名称,在搜索栏输入“DCGM”,查看DCGM指标。
步骤四:使用Grafana查看DCGM指标信息
如果您需要使用Grafana配置DCGM指标看板,请先安装Grafana插件,后在Grafana可视化页面进行相关配置,具体请参见以下步骤:
- 在左侧导航栏中选择“插件中心”,安装Grafana。在安装界面,需要开启“数据源对接AOM”和“公网访问”。其中,“对接的AOM实例”请选择云原生监控插件中使用的AOM实例。
- 插件配置完成后,单击“安装”。插件显示“运行中”,则说明安装成功。安装完成后,在该插件模块中单击“访问”,进入Grafana可视化界面。首次访问Grafana可视化界面,需要输入用户名和密码,默认用户名与密码均为admin。输入用户名和密码后,您可以根据界面提示重置密码。
- 在Grafana可视化界面左上角单击
,单击“Connections”左侧的
,单击“Data sources”,进入Data sources界面。
- 在数据源列表中,单击“prometheus-aom”。在“prometheus-aom”数据源页面底部单击“Save&test”,测试数据源是否连通。若提示“Successfully queried the Prometheus API”,则说明连通测试通过。
- NVIDIA提供了NVIDIA DCGM Exporter Dashboard来展示DCGM相关指标信息,您可以进入NVIDIA DCGM Exporter Dashboard,在右侧单击“Download JSON”。
返回Grafana可视化界面,左上角单击
,打开左侧菜单栏。单击“Dashboards”。在“Dashboards”页面右上角,单击“New”,下拉菜单中单击“Import”。在“Import dashboard”页面上传刚下载的Json文件,并在“Prometheus”中选择“prometheus-aom”数据源,单击“Import”。
Grafana导入Dashboard的更多方法,请参见Manage dashboards。
- 导入完成后,您可以直接看到对应面板。在右上角单击
,即可保存看板。
附录:dcgm-exporter组件故障排查
运行状态检查