k8s如何给node添加标签(最新推荐)

 更新时间:2023年02月28日 10:25:39   作者:zhangshenglu1  
k8s集群如果由大量节点组成,可将节点打上对应的标签,然后通过标签进行筛选及查看,更好的进行资源对象的相关选择与匹配,这篇文章主要介绍了k8s如何给node添加标签,需要的朋友可以参考下

一、为什么需要标签?

k8s集群如果由大量节点组成,可将节点打上对应的标签,然后通过标签进行筛选及查看,更好的进行资源对象的相关选择与匹配

二、怎么查看目前node上具有的标签

[root@master01 ~]# kubectl get node --show-labels
NAME       STATUS   ROLES                  AGE     VERSION   LABELS
master01   Ready    control-plane,master   3d10h   v1.21.0   beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/arch=amd64,kubernetes.io/hostname=master01,kubernetes.io/os=linux,node-role.kubernetes.io/control-plane=,node-role.kubernetes.io/master=,node.kubernetes.io/exclude-from-external-load-balancers=
worker01   Ready    <none>                 3d9h    v1.21.0   beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/arch=amd64,kubernetes.io/hostname=worker01,kubernetes.io/os=linux,region=huanan
worker02   Ready    <none>                 3d9h    v1.21.0   beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/arch=amd64,kubernetes.io/hostname=worker02,kubernetes.io/os=linux

三、设置节点标签信息

1、设置节点标签

[root@master01 ~]# kubectl label node worker02 region=guanzhou
node/worker02 labeled

2、查看 worker02的标签是否已经设置上

[root@master01 ~]# kubectl get nodes -L region
NAME       STATUS   ROLES                  AGE     VERSION   REGION
master01   Ready    control-plane,master   3d10h   v1.21.0   
worker01   Ready    <none>                 3d9h    v1.21.0   huanan
worker02   Ready    <none>                 3d9h    v1.21.0   guanzhou

 3、多维度标签

 3.1 设置多维度标签

也可以加其它的多维度标签,用于不同的需要区分的场景

如把worker01标签为华南区,A机房,测试环境,游戏业务

[root@master01 ~]# kubectl label node worker01 zone=A env=test bussiness=game
node/worker01 labeled

 3.2  显示节点的相应标签

[root@master01 ~]# kubectl get node -L zone,env
NAME       STATUS   ROLES                  AGE     VERSION   ZONE   ENV
master01   Ready    control-plane,master   3d10h   v1.21.0          
worker01   Ready    <none>                 3d9h    v1.21.0   A      test
worker02   Ready    <none>                 3d9h    v1.21.0  

 四、通过标签来查找node 

4.1 查找env=test的节点

[root@master01 ~]# kubectl get nodes -l env=test --show-labels
NAME       STATUS   ROLES    AGE    VERSION   LABELS
worker01   Ready    <none>   3d9h   v1.21.0   beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,bussiness=game,env=test,kubernetes.io/arch=amd64,kubernetes.io/hostname=worker01,kubernetes.io/os=linux,region=huanan,zone=A
 

五、修改标签

[root@master01 ~]# kubectl label node worker01 env=prod --overwrite=true
node/worker01 labeled

六、删除node的标签

[root@master01 ~]# kubectl label node worker01 env-
node/worker01 labeled
[root@master01 ~]# kubectl get node -L env
NAME       STATUS   ROLES                  AGE     VERSION   ENV
master01   Ready    control-plane,master   3d10h   v1.21.0   
worker01   Ready    <none>                 3d9h    v1.21.0   
worker02   Ready    <none>                 3d9h    v1.21.0   

七、标签选择器

[root@master01 ~]# kubectl label node worker01 env=test1
node/worker01 labeled
[root@master01 ~]# kubectl label node worker02 env=test2
node/worker02 labeled
[root@master01 ~]# kubectl get node -l 'env in(test1,test2)'
NAME       STATUS   ROLES    AGE    VERSION
worker01   Ready    <none>   3d9h   v1.21.0
worker02   Ready    <none>   3d9h   v1.21.0
[root@master01 ~]# kubectl get node -l 'env in(test1,test2)' --show-labels
NAME       STATUS   ROLES    AGE    VERSION   LABELS
worker01   Ready    <none>   3d9h   v1.21.0   beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,bussiness=game,env=test1,kubernetes.io/arch=amd64,kubernetes.io/hostname=worker01,kubernetes.io/os=linux,region=huanan,zone=A
worker02   Ready    <none>   3d9h   v1.21.0   beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,env=test2,kubernetes.io/arch=amd64,kubernetes.io/hostname=worker02,kubernetes.io/os=linux,region=guanzhou

到此这篇关于k8s如何给node添加标签的文章就介绍到这了,更多相关k8s node标签内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Spark三种属性配置方式详解

    Spark三种属性配置方式详解

    有时间还是多学习知识比较好,这篇文章主要介绍了Spark三种属性配置方式详解,具有一定参考价值,需要的朋友可以了解下。
    2017-10-10
  • Kubernetes应用服务质量管理详解

    Kubernetes应用服务质量管理详解

    这篇文章主要为大家介绍了Kubernetes应用服务质量管理详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • 基于openEuler的Ceph分布式存储集群部署指南

    基于openEuler的Ceph分布式存储集群部署指南

    本文详细介绍了如何在openEuler22.03LTS操作系统上部署Ceph分布式存储集群,包括环境准备、软件仓库配置、集群初始化、存储节点部署、存储池创建、监控集成和性能优化等步骤,感兴趣的朋友一起看看吧
    2025-03-03
  • K8s中的临时容器Ephemeral Containers使用

    K8s中的临时容器Ephemeral Containers使用

    这篇文章主要介绍了K8s中的临时容器Ephemeral Containers使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • 如何给k8s集群里的资源打标签

    如何给k8s集群里的资源打标签

    k8s集群,节点如果有多个角色,需要标记出来,可以给对应的节点打上标签,方便后续了解节点的功能,这篇文章主要介绍了如何给k8s集群里的资源打标签,需要的朋友可以参考下
    2023-02-02
  • K8s Pod调度机制详解(从理论到生成实战指南)

    K8s Pod调度机制详解(从理论到生成实战指南)

    Kubernetes调度机制是集群的智能调度中枢,主要完成过滤和打分两个决策,在生产环境中,核心调度策略包括资源调度、亲和性调度、污点与容忍、拓扑分布约束等,本文介绍K8s Pod调度机制详解(从理论到生成实战指南),感兴趣的朋友一起看看吧
    2025-03-03
  • Rainbond对前端项目Vue及React的持续部署

    Rainbond对前端项目Vue及React的持续部署

    这篇文章主要为大家介绍了Rainbond对前端项目Vue及React的持续部署,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-04-04
  • kubernetes-1.25.6二进制部署方式

    kubernetes-1.25.6二进制部署方式

    这篇文章主要介绍了kubernetes-1.25.6二进制部署方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • 如何使用Kubernetes自定义资源(CRD)详解

    如何使用Kubernetes自定义资源(CRD)详解

    自定义资源定义(CRD)是Kubernetes API扩展,可以定义新的对象类型,下面这篇文章主要给大家介绍了关于如何使用Kubernetes自定义资源(CRD)的相关资料,需要的朋友可以参考下
    2022-09-09
  • 常见Kubernetes kubectl命令使用详解

    常见Kubernetes kubectl命令使用详解

    这篇文章主要为大家介绍了常见Kubernetes kubectl命令使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08

最新评论