kubernetes k8s上的ansible获取运行pod的节点

dfty9e19  于 2023-03-22  发布在  Kubernetes
关注(0)|答案(1)|浏览(240)

需要通过ansible获取pod运行的节点名称,但不使用kubectl或命令/shell
ansible my_k8s -m k8s_info -a "kind=pod namespace=default name=testpod"
它给予了关于此Pod不带节点信息的ansible_facts
谢谢
k8s模块也没有关于节点的内容

vsdwdz23

vsdwdz231#

正如你所说,Ansible K8s模块不提供节点信息。
但是,您可以通过运行以下命令将Ansible Playbook运行到所有K8s节点(可能通过创建专用主机文件)来解决此问题:

hostname && ls -l /var/log/pods | awk '{print $9}' | grep -i NAMESPACE | grep -i POD_NAME

保存输出将为您提供所需的主机名/pod关联。为此,您可以按照以下链接中描述的步骤操作:Ansible: Store command's stdout in new variable?

相关问题