按 pod 名称过滤 Kubernetes API

0_o*_*0_o 2 logstash kubernetes kubernetes-apiserver

我有一个在 minikube 中运行的 Kubernetes 集群,我想通过 Kubernetes API 过滤掉所有 Logstash pod。Kubernetes API 文档有点令人困惑,我做了一些研究,发现我可以使用这样的东西,但到目前为止我还没有成功:

localhost:8000/api/v1/namespaces/default/pods?labelSelector=logstash
Run Code Online (Sandbox Code Playgroud)

有什么想法如何检索这个吗?任何帮助将非常感激。

Con*_*nst 7

有什么想法如何检索这个吗?

由于标签是成对定义的<name>=<value>,因此您需要提供两者,如文档中所述(请参阅参考资料API部分)

举个例子,假设您有:

  • 命名空间:默认
  • 您要选择的 Pod 上的标签:
    • 角色=操作员
    • 应用程序=logstash
  • kubectl 代理在 localhost:8000 上运行

那么你的 api 调用将如下所示:

curl localhost:8000/api/v1/namespaces/default/pods?labelSelector=role%3Dops,application%3Dlogstash
Run Code Online (Sandbox Code Playgroud)