Cloud Monitoring
本主题介绍 Anthos clusters on Azure 如何与 Cloud Monitoring 集成,以及如何查看指标。
准备工作
配置 Google Cloud CLI 并在 Google Cloud 项目中启用所需的 API。
授权 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 查看受监控资源的指标,请按照以下步骤操作:
- 在 Google Cloud 控制台中,转到 Monitoring 中的 Metrics Explorer 页面。
- 选择 Configuration(配置)标签页。
- 展开选择一个指标菜单,在过滤栏中输入
Kubernetes Container
,然后使用子菜单选择特定的资源类型和指标:- 在活跃资源菜单中,选择 Kubernetes 容器。
- 在活跃指标类别菜单中,选择容器。
- 在活跃指标菜单中,选择 CPU 使用时间。
- 点击应用。
- 可选:如需配置数据的查看方式,请添加过滤条件并使用分组依据、聚合器和图表类型菜单。例如,您可以按资源或指标标签进行分组。如需了解详情,请参阅使用 Metrics Explorer 时选择指标。
- 可选:更改图表设置:
- 对于配额和每天报告一个样本的其他指标,请将时间范围设置为至少一周,并将绘制类型设置为堆积条形图。
- 对于分布值指标,请将绘制类型设置为热图。
收集哪些指标
使用以下三种受监控的资源类型之一收集指标。这些类型与执行测量的 Kubernetes 对象相对应:
例如,有关 pod 的测量结果将使用受监控的资源类型 k8s_pod
。因此,这些指标将包括 pod_name
和 namespace_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