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

如何通过Ansible获取Pod所在Node名称(禁用kubectl及命令/Shell)

用Ansible的k8s_info模块获取Pod所在Node名称的解决方案
  • Pod的节点信息实际存在于返回结果的spec.nodeName字段中,只需正确提取即可。
  • 编写Ansible Playbook捕获并提取目标字段:
    - name: 获取指定Pod的详细信息
      k8s_info:
        kind: Pod
        namespace: default
        name: testpod
      register: pod_details
    
    - name: 输出Pod运行的Node名称
      debug:
        msg: "目标Pod运行节点: {{ pod_details.resources[0].spec.nodeName }}"
    
  • 补充说明:
    • 若需要节点IP,可提取pod_details.resources[0].status.hostIP字段
    • 若返回的resources为空,先验证Pod名称、命名空间是否正确,确保Pod处于正常运行状态
    • 检查kubernetes.core集合版本,旧版本可能存在字段兼容问题,更新命令:ansible-galaxy collection install kubernetes.core --upgrade

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 17:39:53