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

如何从AKS集群的节点中正确获取nodepool名称

获取AKS节点对应NodePool名称的正确方法

核心思路

AKS会为每个节点打上专属标签关联对应的NodePool,优先通过节点标签获取,比从节点名称提取更可靠。

具体操作方法

  1. 查看单个节点的NodePool标签
    执行命令直接查看目标节点的标签,找到agentpool或kubernetes.azure.com/agentpool标签值:
kubectl get node aks-customName-234234234-vmss00011 --show-labels

输出中类似agentpool=customName的字段值就是该节点所属的NodePool名称。

如果用kubectl describe命令,在输出的Labels区块里也能找到这个标签:

Labels: agentpool=customName
kubernetes.azure.com/agentpool=customName
...

  1. 批量列出所有节点与NodePool对应关系
    用自定义列格式直接输出所有节点及其所属NodePool:
kubectl get nodes -o custom-columns=NAME:.metadata.name,NODEPOOL:.metadata.labels.agentpool

若上述标签不存在,改用完整命名空间的标签:

kubectl get nodes -o custom-columns=NAME:.metadata.name,NODEPOOL:.metadata.labels.'kubernetes\.azure\.com/agentpool'
  1. 按NodePool分组节点
    要将节点按所属NodePool分组,可通过以下方式实现:
  • 简单分组排序:
kubectl get nodes -o=custom-columns=NODEPOOL:.metadata.labels.agentpool,NAME:.metadata.name | sort
  • 用jq生成结构化分组结果:
kubectl get nodes -o json | jq '.items | group_by(.metadata.labels.agentpool) | map({nodepool: .[0].metadata.labels.agentpool, nodes: [.[].metadata.name]})'

注意事项

之前通过节点名称提取或错误属性获取结果不准确,是因为节点名称里的前缀虽然通常对应NodePool名称,但标签是AKS官方维护的关联标识,在NodePool名称含特殊字符或有修改场景下更可靠。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 12:01:02