本文档适用于 11 月 3 日发布的最新版 Anthos Clusters on Azure。如需了解详情,请参阅版本说明

Cloud Monitoring

本主题介绍 Anthos clusters on Azure 如何与 Cloud Monitoring 集成,以及如何查看指标。

准备工作

  1. 配置 Google Cloud CLI 并在 Google Cloud 项目中启用所需的 API。

  2. 授权 Cloud Logging / Cloud Monitoring 以设置对 Google Cloud 运维套件的权限。

概览

Anthos Clusters on Azure 内置了与 Cloud Monitoring 集成的功能,可用于节点、pod 和容器的系统指标。这样,您就可以轻松查看集群中工作负载的资源消耗量、构建信息中心以及配置提醒。

Anthos clusters on Azure 会在集群中安装指标收集器 gke-metrics-agent。此代理基于 OpenTelemetry 收集器,并在集群中的每个节点上运行。它会每分钟对指标进行采样,并将测量结果上传到 Cloud Monitoring。

上传集群的指标后,它们将位于您的 Google Cloud 项目中。您可以汇总所有集群的数据、构建自定义信息中心、浏览单个集群的数据、查看折线图、设置提醒等等。

使用 Metrics Explorer

如需使用 Metrics Explorer 查看受监控资源的指标,请按照以下步骤操作:

  1. 在 Google Cloud 控制台中,转到 Monitoring 中的 Metrics Explorer 页面。
  2. 进入 Metrics Explorer

  3. 选择 Configuration(配置)标签页。
  4. 展开选择一个指标菜单,在过滤栏中输入 Kubernetes Container,然后使用子菜单选择特定的资源类型和指标:
    1. 活跃资源菜单中,选择 Kubernetes 容器
    2. 活跃指标类别菜单中,选择容器
    3. 活跃指标菜单中,选择 CPU 使用时间
    4. 点击应用
  5. 可选:如需配置数据的查看方式,请添加过滤条件并使用分组依据聚合器和图表类型菜单。例如,您可以按资源或指标标签进行分组。如需了解详情,请参阅使用 Metrics Explorer 时选择指标
  6. 可选:更改图表设置:
    • 对于配额和每天报告一个样本的其他指标,请将时间范围设置为至少一周,并将绘制类型设置为堆积条形图
    • 对于分布值指标,请将绘制类型设置为热图

收集哪些指标

使用以下三种受监控的资源类型之一收集指标。这些类型与执行测量的 Kubernetes 对象相对应:

例如,有关 pod 的测量结果将使用受监控的资源类型 k8s_pod。因此,这些指标将包括 pod_namenamespace_name 的标签,用于标识特定 Pod。

每个受监控的资源类型用于一组不同的指标类型。如需详细了解这些指标类型,请参阅 GKE 系统指标

默认情况下,Anthos clusters on Azure 会收集以下指标:

k8s_container

  • kubernetes.io/container/cpu/limit_utilization
  • kubernetes.io/container/cpu/request_utilization
  • kubernetes.io/container/cpu/core_usage_time
  • kubernetes.io/container/memory/limit_utilization
  • kubernetes.io/container/memory/used_bytes
  • kubernetes.io/container/restart_count
  • kubernetes.io/container/ephemeral_storage/limit_bytes
  • kubernetes.io/container/ephemeral_storage/request_bytes
  • kubernetes.io/container/ephemeral_storage/used_bytes
  • kubernetes.io/container/cpu/limit_cores
  • kubernetes.io/container/memory/limit_bytes
  • kubernetes.io/container/memory/request_bytes
  • kubernetes.io/container/memory/request_utilization
  • kubernetes.io/container/memory/page_fault_count
  • kubernetes.io/container/cpu/request_cores
  • kubernetes.io/container/uptime

k8s_node

  • kubernetes.io/node/cpu/allocatable_utilization
  • kubernetes.io/node/cpu/core_usage_time
  • kubernetes.io/node/memory/allocatable_utilization
  • kubernetes.io/node/memory/used_bytes
  • kubernetes.io/node/cpu/total_cores
  • kubernetes.io/node/cpu/allocatable_cores
  • kubernetes.io/node/ephemeral_storage/allocatable_bytes
  • kubernetes.io/node/memory/allocatable_bytes
  • kubernetes.io/node_daemon/cpu/core_usage_time
  • kubernetes.io/node/ephemeral_storage/used_bytes
  • kubernetes.io/node/ephemeral_storage/inodes_free
  • kubernetes.io/node_daemon/memory/used_bytes
  • kubernetes.io/node/pid_limit
  • kubernetes.io/node/pid_used
  • kubernetes.io/node/ephemeral_storage/total_bytes
  • kubernetes.io/node/ephemeral_storage/inodes_total
  • kubernetes.io/node/memory/total_bytes

k8s_pod

  • kubernetes.io/pod/network/received_bytes_count
  • kubernetes.io/pod/network/sent_bytes_count
  • kubernetes.io/pod/volume/total_bytes
  • kubernetes.io/pod/volume/used_bytes
  • kubernetes.io/pod/volume/utilization

后续步骤