通过多个标签查询吊舱

时间:2020-10-08 08:00:36

标签: kubernetes

我需要通过选择吊舱的相应标签来检索吊舱列表。 当吊舱带有简单标签app=fook8s-app=bar时,选择非常简单:

kubectl get po -l 'app in (foo), k8s-app in (bar)'

包含特殊字符的标签会带来复杂性,例如:app.kubernetes.io/name=foo 因此,当我只查询该标签时,没有问题,但是如果我尝试将此标签添加到现有查询中,它将以返回no resources were found结束。

kubectl get po -l app.kubernetes.io/name=foo,app=bar
kubectl get po -l 'app.kubernetes.io/name in (foo), app in (bar)'

有什么主意如何将两个标签合并到一个查询中?

2 个答案:

答案 0 :(得分:2)

当前,Kubernetes在标签选择器中不支持OR。您只能对同一标签的不同值进行“或”操作(例如kubectl get pods -l 'app in (foo,bar)')。

另请参阅How can the OR selector be used with labels in Kubernetes?

答案 1 :(得分:2)

您可以使用以下命令通过选择相应的标签来检索 pod 列表。

kubectl get pods --selector app=foo,k8s-app=bar
相关问题