美文网首页k8s in action实践笔记
3.4 通过标签选择器列出pod子集

3.4 通过标签选择器列出pod子集

作者: 众神开挂 | 来源:发表于2021-07-10 10:24 被阅读0次

在上一节中我们将标签附加到资源上,以便在列出资源时可以看到每个资源旁边的标签,这看起来并没有什么有趣的地方。但值得注意的是,标签要与标签选择器结合在一起。标签选择器允许我们选择标记有特定标签的pod子集,并对这些pod执行操作。可以说标签选择器是一种能够根据是否包含具有特定值的特定标签来过滤资源的准则。

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

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

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

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

3.4.1 使用标签选择器列出pod

接下来我们使用标签选择器在之前创建的pod上进行操作,以观察我们手动创建的所有pod(用creation_method=manual标记了它们),并执行以下操作:

$ kubectl get pods -l creation_method=manual
NAME   READY   STATUS    RESTARTS   AGE
kubia  1/1     Running   0          13h

列出包含env标签的所有pod,无论其值如何:

$ kubectl get po -l env
NAME      READY   STATUS    RESTARTS   AGE
kubia     1/1     Running   0          13h

同样列出没有env标签的pod:

$ kubectl get po -l '!env'
NAME          READY   STATUS    RESTARTS   AGE
kubia-n7fvq   1/1     Running   0          3d23h
kubia-qrb4q   1/1     Running   0          3d20h
kubia-ww77s   1/1     Running   0          3d23h

注意 确保使用单引号来圈引!env,这样bash shell才不会解释感叹号(译者注:感叹号在bash中有特殊含义,表示事件指示器)。

同理,我们也可以将pod与以下标签选择器进行匹配:

creation_method!=manual 选择带有 creation_method 标签,并且值不等于manual的pod

env in (prod,devel) 选择带有env标签且值为prod或devel的pod

env not in (prod,devel) 选择带有env标签,但其值不是prod或devel的pod

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

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

$ kubectl get pods -l creation_method=manual,env=prod
$ kubectl get pods -l 'environment,environment notin (frontend)'
$ kubectl get pods -l 'env in (prod, qa)'
$ kubectl get pods -l 'creation_method in (manual),env in (prod)'

标签选择器不仅帮助我们列出pod,在对一个子集中的所有pod都执行操作时也具有重要意义。例如,在本章的后面我们将看到如何使用标签选择器来实现一次删除多个pod。此外标签选择器不只是被kubectl使用,在后续内容中我们也将看到它们在内部也被使用过。

相关文章

  • 3.4 通过标签选择器列出pod子集

    在上一节中我们将标签附加到资源上,以便在列出资源时可以看到每个资源旁边的标签,这看起来并没有什么有趣的地方。但值得...

  • 五、Pod控制器

    1、ReplicaSet 用于弹性伸缩副本,是最基础的pod控制器 1.1简单实例 通过标签选择器选择后端的pod...

  • (八)Kubernetes 之 就绪探针

    现在我们知道了,服务(service)可以通过服务的 pod 选择器来匹配具有相应标签的 pod。匹配成功后, p...

  • 浅析Kubernrtes服务类型(Service Types)

    先上图 在Kubernetes集群中,service通过标签选择器选着对应的pod,然后对请求进行转发,看个动画,...

  • service 和endpoint的关系

    创建svc的时候如果有 标签选择器,则会直接创建endpoints关联后端的pod端口列表如果取消这个标签选择器的...

  • CSS选择器

    标签选择器 以html标签作为选择器: 通过标签选择器设置样式,所有使用该标签的内容都应用该样式。 类选择器 为h...

  • CSS的三种基础选择器

    CSS中三种最基本的选择器: 标签选择器 类选择器 ID选择器 标签选择器 一个 HTML 页面是通过很多标签组成...

  • 选择器

    选择器 语法选择器: 标签{} 元素选择器作用:通过元素选择器可以选择页面中的所有指定元素语法:标签...

  • CSS选择器

    1.基础选择器 选择器:指的是我们选择需要添加样式的标签元素的模式 1.标签选择器 通过标签名直接选择相应的标签。...

  • CSS 的选择器

    CSS的量大重点 属性通过属性的复杂叠加才能做出漂亮的网页选择器通过选择器找到对应的标签设置样式 标签选择器 根据...

网友评论

    本文标题:3.4 通过标签选择器列出pod子集

    本文链接:https://www.haomeiwen.com/subject/ffkcpltx.html