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

如何使用Kubernetes Python Client获取Pod所在的节点?

查询Pod所在节点(Kubernetes Python Client)

核心思路

通过Kubernetes Python Client获取Pod的完整元数据,从Pod对象的status.nodeName字段直接提取节点名称,这和kubectl get pod -o wide展示的NODE列内容完全一致。

步骤与代码示例

  • 初始化Kubernetes客户端配置
    本地开发环境用load_kube_config()加载kubeconfig文件;集群内运行的Pod则用load_incluster_config()自动读取集群内配置。
  • 调用CoreV1Api的read_namespaced_pod()方法获取Pod详情
  • 从返回的Pod对象中提取status.nodeName

完整代码示例:

from kubernetes import client, config

# 初始化配置(根据运行环境二选一)
# 本地开发环境:加载本地kubeconfig
config.load_kube_config()
# 集群内运行环境:自动读取集群内配置
# config.load_incluster_config()

# 创建CoreV1Api实例
v1 = client.CoreV1Api()

# 替换为实际的Pod名称和命名空间
pod_name = "your-target-pod"
namespace = "default"

# 获取指定Pod的详情
pod_detail = v1.read_namespaced_pod(name=pod_name, namespace=namespace)

# 提取并打印节点名称
node_name = pod_detail.status.nodeName
print(f"Pod {pod_name} 所在节点: {node_name}")

补充说明

  • 若需批量查询多个Pod的节点信息,可使用list_namespaced_pod()方法,遍历返回的items列表逐个提取status.nodeName
  • 确保客户端拥有读取Pod状态的权限(需pods/get权限)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 08:10:30