Kubernetes - 如何列出特定实例组中的所有 pods 运行?

Kubernetes - How to list all pods running in a particular instance group?

如何使用命令行列出特定实例组的节点中的所有 pods 运行?

例如,如果我有实例组 "Foo",假设有三个节点 N1、N2 和 N3,它们依次有 pods A 和 B 运行 N1,N2 上的 pods C、D 和 E 运行,N3 上的 pod F 运行 ....我如何使用 kops/kubectl 进行查询输入 "Foo" 并输出 "A, B, C, D, E, F"?

我知道您可以查询特定节点并列出其中的所有 pods,但我想查询一个包含许多节点的实例组,并获取所有 pods节点,没有命名空间约束。

谢谢!

一种方法是为实例组中的节点分配标签,也许使用实例组的名称(为简单起见),然后使用 kubectl 命令组合进行查询。

所以在您的 InstanceGroup 规范中,将 nodeLabels 设置为 ig: Foo(请参阅 https://github.com/kubernetes/kops/blob/master/docs/instance_groups.md#adding-taints-or-labels-to-an-instance-group)了解详细信息,然后 运行:

kubectl get pods -o wide --all-namespaces | grep -F -f <(kubectl get nodes -l ig=Foo --no-headers | awk '{print }')