最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Kubernetes特別屬性的標(biāo)簽Label的強(qiáng)大作用

 更新時(shí)間:2022年03月18日 16:11:43   作者:、重明  
這篇文章主要為大家介紹了Kubernetes特別屬性的標(biāo)簽Label的強(qiáng)大作用介紹,希望可以對(duì)大家有所幫助,祝大家多多進(jìn)步,早日升職加薪

前言

Label:對(duì)k8s中各種資源進(jìn)行分類(lèi)、分組,添加一個(gè)具有特別屬性的標(biāo)簽

Selector:通過(guò)一個(gè)過(guò)濾的語(yǔ)法進(jìn)行查找到對(duì)應(yīng)標(biāo)簽的資源

Label是k8s中一個(gè)比較重要的概念。一個(gè)Label的一個(gè)key=value的鍵值對(duì),可以附加到各種資源上。

現(xiàn)總結(jié)后講解

Label的匹配規(guī)則:

  • name=nginx:這類(lèi)是直接匹配
  • name!=nginx:匹配標(biāo)簽中沒(méi)有name=nginx的資源
  • name in (A,B):匹配所有具有name=A和name=B標(biāo)簽的資源
  • name not in (A):匹配所有不具有標(biāo)簽A的資源

在這里插入圖片描述

通過(guò)上圖可以看到:frontend通過(guò)service服務(wù)匹配到backend服務(wù)器,當(dāng)service的標(biāo)簽是app=nginx時(shí)那么會(huì)匹配到backend的兩組服務(wù)器,但是當(dāng)service中篩選加上Role=backend-app時(shí),Selector只會(huì)篩選到backend服務(wù)器組中包含這兩種標(biāo)簽的服務(wù)器然后進(jìn)行匹配。

通過(guò)下面這條命令可以看到Pod的標(biāo)簽:通過(guò)–show-labels參數(shù)
最后一列LABELS是Pod的標(biāo)簽

[root@k8s-master01 ~]# kubectl get pod --show-labels 
NAME                        READY   STATUS    RESTARTS       AGE   LABELS
busybox                     1/1     Running   28 (16h ago)   9d    <none>
hpa-nginx-bd88bdd8f-h8vx7   1/1     Running   0              18h   app=hpa-nginx,pod-template-hash=bd88bdd8f

那么我們就可以嘗試著用kubectl給Pod添加標(biāo)簽:從上列代碼中我們是可以看到busybox是沒(méi)有標(biāo)簽,通過(guò)下面這條命令在查看發(fā)現(xiàn)已經(jīng)有標(biāo)簽app=busybox了。

[root@k8s-master01 ~]# kubectl label pod busybox app=busybox
pod/busybox labeled
[root@k8s-master01 ~]# kubectl get pod --show-labels 
NAME                        READY   STATUS    RESTARTS       AGE   LABELS
busybox                     1/1     Running   28 (16h ago)   9d    app=busybox
hpa-nginx-bd88bdd8f-h8vx7   1/1     Running   0              18h   app=hpa-nginx,pod-template-hash=bd88bdd8f

如果一個(gè)集群中Pod非常多的時(shí)候,我們就可以通過(guò)用標(biāo)簽篩選的方式找到想要的Pod;-A參數(shù)是查看所有的Pod,但是加上-l app=busybox后只會(huì)找到符合這個(gè)條件的Pod。

[root@k8s-master01 ~]# kubectl get pod -A -l app=busybox
NAMESPACE   NAME      READY   STATUS    RESTARTS       AGE
default     busybox   1/1     Running   28 (16h ago)   9d

那么問(wèn)題來(lái)了,要是我們不想要這個(gè)標(biāo)簽了或者說(shuō)需要修改這個(gè)標(biāo)簽了怎么辦?

刪除標(biāo)簽:

[root@k8s-master01 ~]# kubectl label pod busybox app-
pod/busybox unlabeled
[root@k8s-master01 ~]# kubectl get pod --show-labels 
NAME                        READY   STATUS    RESTARTS       AGE   LABELS
busybox                     1/1     Running   28 (16h ago)   9d    <none>
hpa-nginx-bd88bdd8f-h8vx7   1/1     Running   0              18h   app=hpa-nginx,pod-template-hash=bd88bdd8f

修改標(biāo)簽:可以看出標(biāo)簽已經(jīng)是修改后的了。

[root@k8s-master01 ~]# kubectl get pod --show-labels 
NAME                        READY   STATUS    RESTARTS       AGE   LABELS
busybox                     1/1     Running   28 (16h ago)   9d    app=busybox
hpa-nginx-bd88bdd8f-h8vx7   1/1     Running   0              18h   app=hpa-nginx,pod-template-hash=bd88bdd8f
[root@k8s-master01 ~]# kubectl label pod busybox app=busybox22222 --overwrite 
pod/busybox labeled
[root@k8s-master01 ~]# kubectl get pod --show-labels 
NAME                        READY   STATUS    RESTARTS       AGE   LABELS
busybox                     1/1     Running   28 (16h ago)   9d    app=busybox22222
hpa-nginx-bd88bdd8f-h8vx7   1/1     Running   0              18h   app=hpa-nginx,pod-template-hash=bd88bdd8f

Labels是很簡(jiǎn)單的一個(gè)東西,接下來(lái)我們看看Selector是怎么用的

我想過(guò)濾出多個(gè)條件的pod又該怎么做呢?

[root@k8s-master01 ~]# kubectl get pod -A --show-labels 
NAMESPACE              NAME                                         READY   STATUS    RESTARTS         AGE   LABELS
default                busybox                                      1/1     Running   29 (3m19s ago)   9d    app=busybox22222
default                hpa-nginx-bd88bdd8f-h8vx7                    1/1     Running   0                18h   app=hpa-nginx,pod-template-hash=bd88bdd8f
kube-system            calico-kube-controllers-5dffd5886b-4blh6     1/1     Running   2 (2d1h ago)     9d    k8s-app=calico-kube-controllers,pod-template-hash=5dffd5886b
kube-system            calico-node-fvbdq                            1/1     Running   2 (2d1h ago)     9d    controller-revision-hash=79878cdc56,k8s-app=calico-node,pod-template-generation=1
kube-system            calico-node-g8nqd                            1/1     Running   0                9d    controller-revision-hash=79878cdc56,k8s-app=calico-node,pod-template-generation=1
kube-system            calico-node-mdps8                            1/1     Running   0                9d    controller-revision-hash=79878cdc56,k8s-app=calico-node,pod-template-generation=1
kube-system            calico-node-nf4nt                            1/1     Running   1 (4d1h ago)     9d    controller-revision-hash=79878cdc56,k8s-app=calico-node,pod-template-generation=1
kube-system            calico-node-sq2ml                            1/1     Running   1 (2d1h ago)     9d    controller-revision-hash=79878cdc56,k8s-app=calico-node,pod-template-generation=1
kube-system            calico-typha-8445487f56-mg6p8                1/1     Running   0                9d    k8s-app=calico-typha,pod-template-hash=8445487f56
kube-system            calico-typha-8445487f56-pxbpj                1/1     Running   1 (2d1h ago)     9d    k8s-app=calico-typha,pod-template-hash=8445487f56
kube-system            calico-typha-8445487f56-tnssl                1/1     Running   0                9d    k8s-app=calico-typha,pod-template-hash=8445487f56
kube-system            coredns-5db5696c7-67h79                      1/1     Running   1 (2d1h ago)     9d    k8s-app=kube-dns,pod-template-hash=5db5696c7
kube-system            metrics-server-6bf7dcd649-5fhrw              1/1     Running   2 (4d1h ago)     9d    k8s-app=metrics-server,pod-template-hash=6bf7dcd649
kubernetes-dashboard   dashboard-metrics-scraper-7fcdff5f4c-9kk86   1/1     Running   1 (2d1h ago)     9d    k8s-app=dashboard-metrics-scraper,pod-template-hash=7fcdff5f4c
kubernetes-dashboard   kubernetes-dashboard-85f59f8ff7-js9j2        1/1     Running   12 (2d1h ago)    9d    k8s-app=kubernetes-dashboard,pod-template-hash=85f59f8ff7

以上就是我們的所有Pod了,我想要找到標(biāo)簽中包含kubernetes-dashboard和kube-dns的容器:

[root@k8s-master01 ~]# kubectl get pod -A -l 'k8s-app in (kubernetes-dashboard,kube-dns)'
NAMESPACE              NAME                                    READY   STATUS    RESTARTS        AGE
kube-system            coredns-5db5696c7-67h79                 1/1     Running   1 (2d1h ago)    9d
kubernetes-dashboard   kubernetes-dashboard-85f59f8ff7-js9j2   1/1     Running   12 (2d1h ago)   9d

找到了這兩個(gè)Pod,說(shuō)明這兩個(gè)Pod中包含這兩個(gè)標(biāo)簽,可以在上面的所有容器列表里看看這兩個(gè)Pod是否含有這兩個(gè)標(biāo)簽。

還有一種情況是比如我有一批Pod的標(biāo)簽是這樣:

在這里插入圖片描述

我想查看其中不包含ABB=X的所有Pod,可以這樣寫(xiě):

kubectl get po -l ABB!=X,APC=A

這樣的話只會(huì)找到Pod02和Pod03。

總結(jié):這個(gè)功能不難但是比較重要,也比較常用,一定要知道。

以上就是Kubernetes特別屬性的標(biāo)簽Label的強(qiáng)大作用的詳細(xì)內(nèi)容,更多關(guān)于Kubernetes屬性Label標(biāo)簽作用的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論

高碑店市| 疏勒县| 屏山县| 海城市| 申扎县| 西安市| 兴山县| 奉新县| 阳谷县| 营口市| 龙海市| 曲周县| 宁乡县| 华宁县| 二连浩特市| 新野县| 甘南县| 册亨县| 平乐县| 寿阳县| 乌海市| 元朗区| 大方县| 涿州市| 新津县| 剑川县| 阜南县| 元氏县| 仁寿县| 凤台县| 左贡县| 三都| 读书| 历史| 探索| 鹰潭市| 鄂托克前旗| 保定市| 信宜市| 周口市| 沂南县|