实现GPU基础、虚拟化及Pod级资源指标的全面监控
监控GPU资源指标能够优化计算性能、快速定位故障并合理分配资源,从而提升GPU利用率、降低运维成本。通过Prometheus和Grafana,您可以实现对GPU资源的全面监测,精确捕捉资源使用情况。本文将对Prometheus和Grafana的配置流程进行详细介绍。
关于GPU指标更多信息,请参见CCE提供的GPU监控指标。
前提条件
- 集群中已安装云原生监控插件。
- 集群中已安装CCE AI套件(NVIDIA GPU)插件,且插件版本不低于2.0.10。
- 集群中已有NVIDIA GPU节点。
- 如果需要监控GPU虚拟化监控指标,集群中需要已安装Volcano调度器插件,且插件版本不低于1.10.5。
操作流程
步骤 |
步骤说明 |
费用说明 |
---|---|---|
在集群中部署使用GPU能力的工作负载后,GPU相关指标将自动上报。 |
不涉及费用 |
|
通过访问Prometheus,可以直接查看GPU监控指标。 |
|
|
通过访问Grafana,可以通过内置仪表盘查看GPU监控指标。同时,您也可以根据业务自定义创建GPU仪表盘。 |
该方式需要绑定ELB,涉及相关费用。 |
部署GPU工作负载
创建一个使用GPU的工作负载,等待工作负载正常运行后,可以通过访问Prometheus或Grafana监控GPU资源指标。
- 登录CCE控制台,单击集群名称,进入集群“概览”页。
- 在左侧导航栏中选择“工作负载”,在右上角单击“创建工作负载”。
- 在“容器配置 > 容器信息 > 基本信息 ”中,设置“GPU配额”,此处以“GPU整卡”为例,且“GPU数量”设置为1张。
图1 设置GPU配额
- 填写其他工作负载参数后,单击“创建工作负载”。当工作负载的状态变为运行中时,则说明GPU工作负载创建成功。
访问Prometheus
通过访问Prometheus查看GPU相关指标,需要云原生监控插件在“数据存储配置”中已开启“本地数据存储”,具体请参见安装插件。
云原生监控插件安装完成后,会在集群中部署一系列工作负载和Service。其中Prometheus的Server端会在monitoring命名空间下以有状态工作负载进行部署。您可以创建一个公网LoadBalancer类型Service,从而实现从外部访问Prometheus。
- 在集群左侧导航栏中选择“服务”,在右上角单击“YAML创建”,创建一个公网LoadBalancer类型的Service。
apiVersion: v1 kind: Service metadata: name: prom-lb #服务名称,可自定义 namespace: monitoring labels: app: prometheus component: server annotations: kubernetes.io/elb.id: 038ff*** #请替换为集群所在VPC下的ELB实例ID,且ELB实例为公网访问类型 spec: ports: - name: cce-service-0 protocol: TCP port: 88 #服务端口号,可自定义 targetPort: 9090 #Prometheus的默认端口号,无需更改 selector: #标签选择器可根据Prometheus Server实例的标签进行调整 app.kubernetes.io/name: prometheus prometheus: server type: LoadBalancer
- 创建完成后在浏览器访问“负载均衡公网IP地址:服务端口”,访问Prometheus。
图2 访问Prometheus
- 在页面上方单击“Graph”,即可在搜索栏中搜索需要的GPU指标,查看相关信息。
图3 查看GPU监控指标
- 单击“Status > Targets”,您可以查看Prometheus监控的所有指标。
图4 查看监控目标
访问Grafana
通过访问Grafana查看GPU相关指标,需要安装Grafana插件,且启用“公网访问”,具体安装步骤请参见安装Grafana。同时,Grafana支持配置AOM数据源或Prometheus数据源:
- 使用AOM数据源:需要在云原生监控插件中启用“监控数据上报至AOM服务”,并在Grafana插件中启用“数据源对接AOM”,同时确保两者选择的AOM实例一致。Grafana将自动生成“prometheus-aom”数据源。
- 使用Prometheus数据源:需要在云原生监控插件中开启“本地存储模式”,此时可直接使用Grafana自带的“prometheus”数据源。
- 测试数据源的连通性。需要保证“prometheus-aom”或“prometheus”数据源与Grafana的连通性,连通性测试通过才可在Grafana中正常使用相关数据源。
- 在集群左侧导航栏中,单击“集群 > 插件”。在右侧插件列表中,在Grafana插件模块单击“访问”,进入Grafana可视化界面。
- 首次访问Grafana可视化界面,需要输入用户名和密码,默认用户名与密码均为admin。输入用户名和密码后,您可以根据界面提示重置密码。
- 在Grafana可视化界面左上角单击
,单击“Connections”左侧的
,单击“Data sources”,进入Data sources界面。
- 在数据源列表中,单击“prometheus-aom”或“prometheus”。在数据源页面底部单击“Save&test”,测试数据源是否连通。若提示“Successfully queried the Prometheus API”,则说明连通测试通过。
图5 连通测试通过
- 在左侧导航栏中单击DashBoard,在右侧选择“GPU XGPU View”仪表盘,即可查看GPU相关资源状态。同时,您也可以根据需求自定义相关仪表盘。
云原生监控插件暂不支持自动采集表3 GPU Pod监控指标。若您需要在Grafana查看相关数据,请参见文档“最佳实践 > 监控 > GPU Pod监控指标采集及Grafana仪表盘搭建”,搭建对应仪表盘。
图6 查看GPU资源指标