首页 > 解决方案 > 按 pod 名称过滤 Kubernetes API

问题描述

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

localhost:8000/api/v1/namespaces/default/pods?labelSelector=logstash

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

标签: kuberneteslogstashkubernetes-apiserver

解决方案


任何想法如何检索这个?

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

例如,假设您有:

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

然后您的 api 调用将如下所示:

curl localhost:8000/api/v1/namespaces/default/pods?labelSelector=role%3Dops,application%3Dlogstash

推荐阅读