You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过PromQL按nodegroup_name分组统计Kubernetes集群节点总数?

按NodeGroup分组查询Kubernetes节点总数的PromQL语句

核心查询语句

如果你的Kubernetes节点带有nodegroup_name标签(云厂商托管集群或自建集群手动添加),可以用以下PromQL按节点组统计总节点数:

count(kube_node_info) by (nodegroup_name)

语句说明

  • kube_node_info:由kube-state-metrics提供的节点元信息指标,每个节点对应一条时间序列,包含节点的所有标签(包括nodegroup_name)
  • count():聚合函数,统计每个分组下的节点数量(即时间序列条数)
  • by (nodegroup_name):指定按nodegroup_name标签进行分组聚合

适配不同集群的调整

不同云厂商的节点组标签键可能不同,需要替换为实际标签:

  • AWS EKS:标签键为eks.amazonaws.com/nodegroup,查询语句为:
    count(kube_node_info) by (eks_amazonaws_com_nodegroup)
    
  • GKE:标签键为cloud.google.com/gke-nodepool,查询语句为:
    count(kube_node_info) by (cloud_google_com_gke_nodepool)
    

扩展:统计Ready状态的节点数

如果需要按节点组统计处于Ready状态的节点,可使用:

count(kube_node_status_condition{condition="Ready", status="true"}) by (nodegroup_name)

前提条件

确保集群已部署并正确配置kube-state-metrics,Prometheus已完成该指标的采集配置。

内容的提问来源于stack exchange,提问作者kafka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 07:09:38