通过Prometheus监控磁盘
在Kubernetes集群中创建ECI Pod时,ECI Pod会运行在虚拟节点上。由于并不存在真实节点,磁盘是与Pod相关,而不是Node。因此,您需要额外配置Pod级别的磁盘监控,才能监控磁盘相关指标。本文介绍如何通过ARMS Prometheus监控ECI Pod相关的磁盘,在Grafana中自定义磁盘监控大盘。
前提条件
已创建ASK集群,且集群已接入ARMS Prometheus监控。具体操作,请参见ASK接入ARMS Prometheus监控。
已创建标准版Grafana工作区,完成大盘和数据源迁移。具体操作,请参见快速使用Grafana服务。
默认情况下,接入ARMS Prometheus监控后使用的Grafana工作区为服务共享版,共享版不支持自定义大盘。
操作步骤
登录ARMS控制台。
打开Grafana页面。
在左侧导航栏,选择Grafana服务>工作区管理。
单击标准版工作区ID。
在工作区信息页面,单击连接信息处对应的URL地址,打开Grafana登录页面。
输入账号信息,登录Grafana。
您可以使用admin账号和创建工作区时设置的密码登录Grafana,也可以使用其他账号。
在Grafana页面的左侧导航栏,单击
图标,选择Import。
单击Upload JSON file,然后上传JSON文件。
JSON文件包含大盘相关配置,示例文件请下载ECI Pod Disk。
修改大盘文件夹和数据源为目标集群。
单击Import。
导入成功后,在新增的磁盘监控大盘中,您可以查看对应ECI Pod的磁盘相关监控信息。
(可选)如果需要筛选查看Deployment级别或者StatefulSet级别的监控,您可以将当前磁盘监控大盘中的对应Panel复制到Deployment或者StatefulSet的大盘中,或者直接在该大盘中修改Dashboard settings。
在磁盘监控大盘中修改Dashboard settings,添加筛选变量的操作如下:
在Grafana页面磁盘监控大盘中,单击右上角的
图标。
在Settings页面的左侧导航栏,选择Variables。
单击右上角的New,编辑General和Query Options相关设置,然后单击Update。
添加变量时,请根据需要变量类型设置Query。示例如下表所示。
类型
Query
deployment
label_values(kube_deployment_created{namespace=~"$namespace"},deployment)
statefulset
label_values(kube_statefulset_created{namespace=~"$namespace"},statefulset)
下图以添加deployment变量为例:
单击pod变量,在Edit页面修改Query,然后单击Update。
请根据上一步添加的变量类型修改Query。示例如下表所示。
类型
Pod对应的Query
deployment
query_result(kube_pod_info{namespace=~'$namespace',pod=~"$deployment.*"} >= 1)
statefulset
query_result(kube_pod_info{namespace=~'$namespace',pod=~"$statefulset.*"} >= 1)
调整deployment变量(或者statefulset变量)与pod变量的顺序,使deployment变量(或者statefulset变量)在pod变量之上。
下图以deployment变量为例:
单击Save dashboard,保存配置。
返回磁盘监控大盘页面,查看筛选功能是否生效。
下图以生效Deployment级别的筛选功能为例: