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

 更新时间:2023年02月28日 10:30:07   作者:IT运维成长笔记  
k8s集群,节点如果有多个角色,需要标记出来,可以给对应的节点打上标签,方便后续了解节点的功能,这篇文章主要介绍了如何给k8s集群里的资源打标签,需要的朋友可以参考下

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

给节点添加角色:

k8s集群,节点如果有多个角色,需要标记出来,可以给对应的节点打上标签,方便后续了解节点的功能

命令:kubectl label nodes 节点名字 node-role.kubernetes.io/你想要的roles(=/-)

最后括号里的加减号,减号就是删除roles,等号就是增加roles

更新标签,在打标签命令后面添加参数--overwrite

举例:

给node节点添加角色:

#给node1节点增加jenkins角色
[root@k8s-master1 ~]# kubectl label nodes k8s-node1 node-role.kubernetes.io/jenkins=
node/k8s-node1 labeled

#给node2节点增加gitlab角色
[root@k8s-master1 ~]# kubectl label nodes k8s-node2 node-role.kubernetes.io/gitlab=
node/k8s-node2 labeled

#查询节点roles
[root@k8s-master1 ~]# kubectl get nodes
NAME          STATUS   ROLES          AGE   VERSION
k8s-master1   Ready    master         17d   v1.19.4
k8s-node1     Ready    jenkins,node   17d   v1.19.4
k8s-node2     Ready    gitlab,node    14d   v1.19.4

给deploymen控制器打标签:

更新标签,在打标签命令后面添加参数--overwrite

#查询标签
[root@k8s-master1 k8s]# kubectl get deploy -n my-ns-kcxm kcxm --show-labels 
NAME   READY   UP-TO-DATE   AVAILABLE   AGE     LABELS
kcxm   2/2     2            2           8m47s   app=kcxm-gc

#打标签version=v1
[root@k8s-master1 k8s]# kubectl label deploy -n my-ns-kcxm kcxm version=v1
deployment.apps/kcxm labeled

#查询标签
[root@k8s-master1 k8s]# kubectl get deploy -n my-ns-kcxm kcxm --show-labels 
NAME   READY   UP-TO-DATE   AVAILABLE   AGE     LABELS
kcxm   2/2     2            2           9m19s   app=kcxm-gc,version=v1

#更新标签,在打标签命令后面添加参数--overwrite 
[root@k8s-master1 k8s]# kubectl label deploy -n my-ns-kcxm kcxm version=v2 --overwrite 
deployment.apps/kcxm labeled

#查询标签
[root@k8s-master1 k8s]# kubectl get deploy -n my-ns-kcxm kcxm --show-labels 
NAME   READY   UP-TO-DATE   AVAILABLE   AGE   LABELS
kcxm   2/2     2            2           13m   app=kcxm-gc,version=v2

#删除标签version=v2
[root@k8s-master1 k8s]# kubectl label deploy -n my-ns-kcxm kcxm version-
deployment.apps/kcxm labeled

#查询标签
[root@k8s-master1 k8s]# kubectl get deploy -n my-ns-kcxm kcxm --show-labels 
NAME   READY   UP-TO-DATE   AVAILABLE   AGE     LABELS
kcxm   2/2     2            2           9m30s   app=kcxm-gc

给pod打标签:

[root@k8s-master1 k8s]# kubectl get pod -n my-ns-kcxm --show-labels 
NAME                    READY   STATUS    RESTARTS   AGE     LABELS
kcxm-84c56f9d5b-595qx   1/1     Running   0          2m42s   app=kcxm-gc,pod-template-hash=84c56f9d5b
kcxm-84c56f9d5b-6h4w2   1/1     Running   0          2m42s   app=kcxm-gc,pod-template-hash=84c56f9d5b
 
#给pod打标签version=1.23.1
[root@k8s-master1 k8s]# kubectl label pod -n my-ns-kcxm kcxm-84c56f9d5b-595qx version=1.23.1
pod/kcxm-84c56f9d5b-595qx labeled

#查询标签
[root@k8s-master1 k8s]# kubectl get pod -n my-ns-kcxm --show-labels 
NAME                    READY   STATUS    RESTARTS   AGE     LABELS
kcxm-84c56f9d5b-595qx   1/1     Running   0          3m30s   app=kcxm-gc,pod-template-hash=84c56f9d5b,version=1.23.1
kcxm-84c56f9d5b-6h4w2   1/1     Running   0          3m30s   app=kcxm-gc,pod-template-hash=84c56f9d5b

#给pod删除标签version=1.23.1
[root@k8s-master1 k8s]# kubectl label pod -n my-ns-kcxm kcxm-84c56f9d5b-595qx version-
pod/kcxm-84c56f9d5b-595qx labeled

#删除标签
[root@k8s-master1 k8s]# kubectl get pod -n my-ns-kcxm --show-labels 
NAME                    READY   STATUS    RESTARTS   AGE    LABELS
kcxm-84c56f9d5b-595qx   1/1     Running   0          4m7s   app=kcxm-gc,pod-template-hash=84c56f9d5b
kcxm-84c56f9d5b-6h4w2   1/1     Running   0          4m7s   app=kcxm-gc,pod-template-hash=84c56f9d5b

补充:k8s kubernetes给node节点添加标签和删除node节点标签

[root@k8s-master ~]# hostname #查看节点名称
k8s-master
[root@k8s-master ~]# 
[root@k8s-master ~]# kubectl get nodes  --show-labels  #查看节点标签
NAME         STATUS   ROLES           AGE   VERSION   LABELS
k8s-master   Ready    control-plane   9d    v1.26.0   app=master,beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/arch=amd64,kubernetes.io/hostname=k8s-master,kubernetes.io/os=linux,node-role.kubernetes.io/control-plane=,node.kubernetes.io/exclude-from-external-load-balancers=
[root@k8s-master ~]# kubectl label nodes k8s-master env=env #给节点添加一个标签env=env
node/k8s-master labeled
[root@k8s-master ~]# kubectl get nodes  --show-labels  #再次查看节点标签,确定标签添加上了
NAME         STATUS   ROLES           AGE   VERSION   LABELS
k8s-master   Ready    control-plane   9d    v1.26.0   app=master,beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,env=env,kubernetes.io/arch=amd64,kubernetes.io/hostname=k8s-master,kubernetes.io/os=linux,node-role.kubernetes.io/control-plane=,node.kubernetes.io/exclude-from-external-load-balancers=
[root@k8s-master ~]# kubectl label nodes k8s-master env- #删除节点标签env=env
node/k8s-master unlabeled
[root@k8s-master ~]# 
[root@k8s-master ~]# kubectl get nodes --show-labels  #再次查看确定标签已经删除了
NAME         STATUS   ROLES           AGE   VERSION   LABELS
k8s-master   Ready    control-plane   9d    v1.26.0   app=master,beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/arch=amd64,kubernetes.io/hostname=k8s-master,kubernetes.io/os=linux,node-role.kubernetes.io/control-plane=,node.kubernetes.io/exclude-from-external-load-balancers=
[root@k8s-master ~]# 

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

相关文章

  • 阿里云oss对象存储使用详细步骤

    阿里云oss对象存储使用详细步骤

    本文主要介绍了阿里云oss对象存储使用详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • 玩客云内置EMMC存储刷入Armbian系统(图文详解)

    玩客云内置EMMC存储刷入Armbian系统(图文详解)

    Armbian是其他项目可以信赖的单板计算机(SBC)的基本操作系统平台,接下来通过本文给大家介绍玩客云内置EMMC存储刷入Armbian系统,需要的朋友可以参考下
    2022-05-05
  • 关于k8s 使用 Service 控制器对外暴露服务的问题

    关于k8s 使用 Service 控制器对外暴露服务的问题

    这篇文章主要介绍了k8s使用Service控制器对外暴露服务,包括部署deploy,部署 service及查看 service 和 pod 的关系,本文给大家介绍的非常详细,需要的朋友可以参考下
    2022-03-03
  • 详解推荐使用systemd timer替代cronjob

    详解推荐使用systemd timer替代cronjob

    这篇文章主要为大家介绍了推荐使用systemd timer替代0cronjob原理分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • k8s自身原理service及实现图文示例解析

    k8s自身原理service及实现图文示例解析

    这篇文章主要为大家介绍了k8s自身原理service图文示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • k8s证书有效期时间修改的方法详解

    k8s证书有效期时间修改的方法详解

    K8S集群有证书的概念,之前一直是使用默认的,默认都是1年和10年的,1年有效期这显然对于生产环境是不合适的,下面这篇文章主要给大家介绍了关于k8s证书有效期时间修改的相关资料,需要的朋友可以参考下
    2022-08-08
  • 阿里云kubernetes查找镜像中jar包的方法(docker查看镜像中的jar)

    阿里云kubernetes查找镜像中jar包的方法(docker查看镜像中的jar)

    这篇文章主要给大家介绍了关于阿里云kubernetes查找镜像中jar包的方法,也就是在docker查看镜像中的jar,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • kubernetes-1.25.6二进制部署方式

    kubernetes-1.25.6二进制部署方式

    这篇文章主要介绍了kubernetes-1.25.6二进制部署方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • 理解k8s控制器DaemonSet创建及使用场景

    理解k8s控制器DaemonSet创建及使用场景

    这篇文章主要为大家介绍了k8s控制器DaemonSet创建及使用场景详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • K8S部署rocketmq5全过程

    K8S部署rocketmq5全过程

    在开发环境中部署RocketMQ 5并验证新版本代理特性,遇到一系列问题,包括存储权限、主从副本配置和命名空间问题,通过修改配置文件和PV设置,最终解决了这些问题,成功部署了RocketMQ集群
    2025-01-01

最新评论