标签选择器允许我们选择标记有特定label的pod子集, 并对这些pod执行操作。 可以说标签选择器(label selector)是一种能够根据是否包含具有特定值的特定标签(label)来过滤资源的准则。

标签选择器根据资源的以下条件来选择资源:

  • 包含(或不包含)使用特定键的标签:

-l key
-l ‘!key’

  • 包含具有特定键和值的标签:

-l key=value
-l key in (value1,value2…)

  • 包含具有特定键的标签, 但其值与我们指定的不同:

-l key!=value
-l key notin (value1,value2…)

3.4.1 使用标签选择器列出pod

image.png
注意:确保使用单引号来圈引!env, 这样bash shell才不会解释感叹号(感叹号在bash中有特殊含义:history expansion)。或 !env
image.png

3.4.2 在标签选择器中使用多个条件

在包含多个逗号分隔的情况下,可以在标签选择器中同时使用多个条件, 此时资源需要全部匹配才算成功匹配了选择器。

Usage:

-l 标签格式1,标签格式2
-l key1=value1,key2=value2
-l ‘!key1’,key2 in (value1,value2)

例如: app=pc,rel=beta (如图3.9所示)。
image.png

Usage:

使用标签选择器查看资源:
kubectl get TYPE NAME -l label
-l, —selector=’’: label selector