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

如何获取AKS集群中就绪(Ready)节点数量?求可用命令或API

获取AKS集群就绪节点数量的可行方案

方案1:纯kubectl原生命令(无需依赖grep/jq/awk)

利用kubectl内置的jsonpath筛选器,精准匹配状态条件Ready为True的节点,再统计数量:

方式A(依赖wc,多数环境支持)

kubectl get nodes -o jsonpath='{range .items[?(@.status.conditions[?(@.type=="Ready" && @.status=="True")])]}x{end}' | wc -c

方式B(无外部工具依赖)

通过bash数组存储符合条件的节点名称,直接输出数组长度:

nodes=($(kubectl get nodes -o jsonpath='{.items[?(@.status.conditions[?(@.type=="Ready" && @.status=="True")])].metadata.name}'))
echo ${#nodes[@]}

方案2:Azure原生工具/API(更适合AKS场景)

针对AKS集群,可直接通过Azure官方工具获取就绪节点数,无需解析kubectl输出:

Azure CLI命令

# 获取每个节点池的就绪节点数
az aks nodepool list --resource-group <你的资源组名> --cluster-name <你的AKS集群名> --query '[].readyCount'

# 获取集群总就绪节点数
az aks nodepool list --resource-group <你的资源组名> --cluster-name <你的AKS集群名> --query 'sum([].readyCount)'

Azure REST API

调用AKS节点池管理API,返回的每个节点池对象中readyCount字段即为该池的就绪节点数:

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{clusterName}/agentPools?api-version=2023-08-01

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 09:10:10