在线不卡日本ⅴ一区v二区_精品一区二区中文字幕_天堂v在线视频_亚洲五月天婷婷中文网站

  • <menu id="lky3g"></menu>
  • <style id="lky3g"></style>
    <pre id="lky3g"><tt id="lky3g"></tt></pre>

    kubernetes 資源的label(標(biāo)簽)

    一、簡介

    label是標(biāo)簽的意思,一對(duì) key/value ,被關(guān)聯(lián)到對(duì)象上,k8s中的資源對(duì)象大都可以打上標(biāo)簽,如Node、Pod、Service 等

    一個(gè)資源可以綁定任意多個(gè)label,k8s 通過 Label 可實(shí)現(xiàn)多維度的資源分組管理,后續(xù)可通過 Label Selector 查詢和篩選擁有某些 Label 的資源對(duì)象

    二、Nodes添加刪除label及使用

    2.1、node節(jié)點(diǎn)ROLES屬性(特殊標(biāo)簽)

    在查看nodes信息時(shí),ROLES標(biāo)記了一些節(jié)點(diǎn)的身份屬性,這個(gè)ROLES身份屬性其實(shí)可以理解成給nodes節(jié)點(diǎn)打了個(gè)特殊標(biāo)簽。

    #roles顯示為node[root@mayi-ops ~]# kubectl get nodeNAME STATUS ROLES AGE VERSIONuat-k8s-node1 Ready 89m v1.18.8uat-k8s-master01 Ready master 45h v1.18.6#添加刪除ROLES標(biāo)記,命令使用格式:kubectl label nodes 節(jié)點(diǎn)名字 node-role.kubernetes.io/ROLES屬性名稱=或-最后面的=號(hào)表示在原來ROLES基礎(chǔ)上再增加一個(gè),-號(hào)就表示刪除某個(gè)ROLES//例如, 首次添加ROLES[root@mayi-ops ~]# kubectl label nodes uat-k8s-node1 node-role.kubernetes.io/work=[root@mayi-ops ~]# kubectl get nodeNAME STATUS ROLES AGE VERSIONuat-k8s-node1 Ready worker 89m v1.18.8uat-k8s-master01 Ready master 45h v1.18.6#增加ROLES[root@mayi-ops ~]# kubectl label nodes uat-k8s-node1 node-role.kubernetes.io/work1=[root@mayi-ops ~]# kubectl get nodeNAME STATUS ROLES AGE VERSIONuat-k8s-node1 Ready work,worker1 89m v1.18.8uat-k8s-master01 Ready master 45h v1.18.6#刪除label[root@mayi-ops ~]# kubectl lable node k8s-node1 node-role.kubernetes.io/work1-[root@mayi-ops ~]# kubectl get nodeNAME STATUS ROLES AGE VERSIONuat-k8s-node1 Ready work 89m v1.18.8uat-k8s-master01 Ready master 45h v1.18.6

    2.2、Node添加label

    # 查看所有node 標(biāo)簽[root@mayi-ops ~]# kubectl get nodes –show-labelsNAME STATUS ROLES AGE VERSION LABELSuat-k8s-master01 Ready master 495d v1.16.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/arch=amd64,kubernetes.io/hostname=uat-k8s-master01,kubernetes.io/os=linux,node-role.kubernetes.io/master=uat-k8s-node1 Ready work 495d v1.16.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/arch=amd64,kubernetes.io/hostname=uat-k8s-node1,kubernetes.io/os=linux,kubernetes=true,node-role.kubernetes.io/work=#添加標(biāo)簽[root@mayi-ops ~]# kubectl label nodes node01 disktype=ssdnodenode/uat-k8s-node1 labeled[root@mayi-ops ~]# kubectl get nodes –show-labelsNAME STATUS ROLES AGE VERSION LABELSuat-k8s-master01 Ready master 495d v1.16.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/arch=amd64,kubernetes.io/hostname=uat-k8s-master01,kubernetes.io/os=linux,node-role.kubernetes.io/master=uat-k8s-node1 Ready work 495d v1.16.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,disktype=ssdnode,kubernetes.io/arch=amd64,kubernetes.io/hostname=uat-k8s-node1,kubernetes.io/os=linux,kubernetes=true,node-role.kubernetes.io/work=# 刪除標(biāo)簽[root@mayi-ops ~]# kubectl label nodes uat-k8s-node1 disktype-node/uat-k8s-node1 labeled[root@mayi-ops ~]# kubectl get nodes –show-labelsNAME STATUS ROLES AGE VERSION LABELSuat-k8s-master01 Ready master 495d v1.16.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/arch=amd64,kubernetes.io/hostname=uat-k8s-master01,kubernetes.io/os=linux,node-role.kubernetes.io/master=uat-k8s-node1 Ready work 495d v1.16.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/arch=amd64,kubernetes.io/hostname=uat-k8s-node1,kubernetes.io/os=linux,kubernetes=true,node-role.kubernetes.io/work=

    2.3、根據(jù)Node label標(biāo)簽調(diào)度pod

    # 比如可以將Nginx或者M(jìn)ysql調(diào)度到硬盤為SSD的機(jī)器上[root@mayi-ops ~]# vim nginx.yaml—apiVersion: apps/v1kind: Deploymentmetadata: name: nginx ****labels: app: nginxspec: replicas: 1 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: #選擇標(biāo)簽 nodeSelector: #key1: val1 #key2: val2 disktype: ssdnode containers: – name: nginx image: nginx:latest ports: – containerPort: 80—apiVersion: v1kind: Servicemetadata:name: nginx labels: app: nginxspec: ports: – port: 80 name: nginx protocol: TCP targetPort: 80 selector: app: nginx #根據(jù)app標(biāo)簽關(guān)聯(lián)pod[root@mayi-ops ~]# kubectl get pod -o wideNAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATESnginx-7bf8bf99d9-b4g5v 1/1 Running 0 38s 10.100.59.16 uat-k8s-node1

    三、Pod的label及使用

    3.1、常用命令

    # 查看pod的標(biāo)簽[root@mayi-ops ~]# kubectl get pods –show-labelsNAME READY STATUS RESTARTS AGE LABELSnginx-7bf8bf99d9-b4g5v 1/1 Running 0 14m app=nginx,pod-template-hash=7bf8bf99d9#指定標(biāo)簽查詢資源[root@mayi-ops ~]# kubectl get pods -l app=nginxNAME READY STATUS RESTARTS AGEnginx-7bf8bf99d9-b4g5v 1/1 Running 0 13m# 指定標(biāo)簽查詢資源,并顯示標(biāo)簽信息[root@mayi-ops ~]# kubectl get pods -l app=nginx –show-labelsNAME READY STATUS RESTARTS AGE LABELSnginx-7bf8bf99d9-b4g5v 1/1 Running 0 14m app=nginx,pod-template-hash=7bf8bf99d9#根據(jù)label 查看pod,svc資源[root@mayi-ops ~]# kubectl get pod,svc -l app=nginxNAME READY STATUS RESTARTS AGEpod/nginx-7bf8bf99d9-b4g5v 1/1 Running 0 22mNAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEservice/nginx ClusterIP 10.99.117.68 80/TCP 2m15s#根據(jù)Label刪除資源[root@mayi-ops ~]# kubectl delete pod,svc -l app=nginxpod “nginx-7bf8bf99d9-b4g5v” deletedservice “nginx” deleted

    四、Service 標(biāo)簽使用

    4.1、常用命令

    # 查看指定service 選擇的標(biāo)簽[root@mayi-ops ~]# kubectl get service nginx –show-labels#通過yaml 方式查看service選擇的標(biāo)簽[root@mayi-ops ~]# kubectl get service nginx -o yaml|grep -A 2 selector selector: app: nginx sessionAffinity: None

    鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請(qǐng)聯(lián)系管理員(admin#wlmqw.com)刪除。
    上一篇 2022年6月12日 18:13
    下一篇 2022年6月12日 18:14

    相關(guān)推薦

    聯(lián)系我們

    聯(lián)系郵箱:admin#wlmqw.com
    工作時(shí)間:周一至周五,10:30-18:30,節(jié)假日休息