通过Prometheus监控磁盘

在Kubernetes集群中创建ECI Pod时,ECI Pod会运行在虚拟节点上。由于并不存在真实节点,磁盘是与Pod相关,而不是节点。因此,您需要额外配置Pod级别的磁盘监控,才能监控磁盘相关指标。本文介绍如何通过ARMS Prometheus监控ECI Pod相关的磁盘,在Grafana中自定义磁盘监控大盘。

前提条件

  • 已创建ACK Serverless集群,且集群已接入ARMS Prometheus监控。具体操作,请参见接入ARMS Prometheus监控

  • 已创建Grafana工作区(非共享版),完成数据迁移和云服务集成。具体操作,请参见快速使用可观测可视化 Grafana 版

    重要
    • 默认情况下,接入ARMS Prometheus监控后使用的Grafana工作区为共享版,共享版不支持自定义大盘。

    • 本文操作步骤以Grafana 10.0.X为例,如果您使用其他版本的Grafana,请参考配置项自行操作。

操作步骤

  1. 登录ARMS控制台

  2. 打开Grafana页面。

    1. 在左侧导航栏,选择Grafana服务>工作区管理

    2. 找到目标工作区,单击访问地址url处的地址,打开Grafana登录页面。

  3. 输入账号信息,登录Grafana。

    您可以使用admin账号和创建工作区时设置的密码登录Grafana,也可以使用其他账号。

  4. 在Grafana页面左上角单击grafana-1.png图标,然后在导航栏中单击仪表板

  5. 仪表板页面的右上角,单击新建,然后选择导入

  6. 单击Upload dashboard JSON file,然后上传JSON文件。

    JSON文件包含大盘相关配置,示例文件请下载ECI Pod Disk

  7. 修改大盘文件夹和数据源为目标集群。

    grafana-2.png

  8. 单击Import

    导入成功后,在新增的磁盘监控大盘中,您可以查看对应ECI Pod的磁盘相关监控信息。

    监控磁盘.png

  9. (可选)如果需要筛选查看Deployment级别或者StatefulSet级别的监控,您可以将当前磁盘监控大盘中的对应Panel复制到Deployment或者StatefulSet的大盘中,或者直接在该大盘中修改Dashboard Settings。

    在磁盘监控大盘中修改Dashboard Settings,添加筛选变量的操作如下:

    1. 在Grafana页面磁盘监控大盘中,单击右上角的设置图标。

    2. Settings页面的左侧导航栏,选择Variables

    3. 单击New Variable,编辑General和Query Options相关设置,然后单击Apply

      添加变量时,请根据需要变量类型设置Query。示例如下表所示。

      类型

      Query Type

      Label *

      Metric

      deployment

      Label_values

      deployment

      kube_deployment_created{namespace=~"$namespace"}

      statefulset

      Label_values

      statefulset

      kube_statefulset_created{namespace=~"$namespace"}

      下图以添加deployment变量为例:

      监控磁盘0.png

    4. 单击pod变量,修改Query,然后单击Apply

      请根据上一步添加的变量类型修改pod变量对应的Query。示例如下表所示。

      类型

      Query Type

      Query

      deployment

      Query_result

      kube_pod_info{namespace=~'$namespace',pod=~"$deployment.*"} >= 1

      statefulset

      Query_result

      kube_pod_info{namespace=~'$namespace',pod=~"$statefulset.*"} >= 1

      下图以deployment为例,修改pod变量对应的Query:

      监控磁盘00.png

    5. 调整deployment变量(或者statefulset变量)与pod变量的顺序,使deployment变量(或者statefulset变量)在pod变量之上。

      说明

      鼠标左键按住对应的grafana-5.png图标即可移动该Variable的位置。

      监控磁盘1.png

    6. 单击右上角的Save dashboard,输入描述后单击Save保存配置。

    7. 返回磁盘监控大盘页面,查看筛选功能是否生效。

      下图以生效Deployment级别的筛选功能为例:

      监控磁盘2.png