OR 选择器如何与 Kubernetes 中的标签一起使用?

Tev*_*n J 17 kubernetes

OR 表达式如何与选择器和标签一起使用?

  selector:
    app: myapp
    tier: frontend
Run Code Online (Sandbox Code Playgroud)

以上匹配标签app==myapp AND 的 pod tier=frontend

但是OR表达式可以用吗?

app==myapp tier=frontend

小智 14

现在你可以这样做:

kubectl get pods -l 'environment in (production, qa)'
Run Code Online (Sandbox Code Playgroud)

https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#list-and-watch-filtering

  • @EricHu,您使用相同的标签名称“label”。问题是关于使用不同的标签名称。 (5认同)
  • 根据问题,要求是能够根据不同的标签名称进行基于 OR 的选择 (4认同)
  • ^我认为这正是这样做的。我刚刚成功运行了“kubectl get pods --selector 'label in (value1,value2,value3)'”。在我使用“kubectl get pods --selector label=value1”之前。 (2认同)

小智 6

您的情况不支持 OR。

您可以尝试基于集合的标签选择器。参考以下链接, https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#resources-that-support-set-based-requirements