标签 & 标签选择器 & 注解

标签

标签(Label)是将资源进行分类的标识符,资源标签其实就是一个键值型(key/values)数据。标签旨在指定对象(如Pod等)辨识性的属性,这些属性仅对用户存在特定的意义,对Kubernetes集群来说并不直接表达核心系统语义。标签可以在对象创建时附加其上,并能够在创建后的任意时间进行添加和修改。一个对象可以拥有多个标签,一个标签也可以附加于多个对象(通常是同一类对象)之上,如图所示。

k get node,ns --show-labels
kd get svc,ep,pod --show-labels

kd describe svc|grep Labels

在这里插入图片描述

要在Kubernetes(k8s)集群中添加或删除工作节点的标签,你可以使用kubectl命令行工具来完成。下面是相应的步骤:

添加集群工作节点标签

  1. 首先,使用kubectl get nodes命令获取当前集群中的工作节点列表。找到要添加标签的工作节点名称。

  2. 使用kubectl label nodes <节点名称> <标签键>=<标签值>命令为目标节点添加标签。将<节点名称>替换为工作节点的名称,并指定要添加的标签键和标签值。

    例如,要为名为node-1的节点添加标签env=prod,可以运行以下命令:

    kubectl label nodes node-1 env=prod
    
  3. 确认标签已成功添加,可以运行kubectl describe node <节点名称>命令查看节点的详细信息,其中将包含新添加的标签。

删除集群工作节点标签

  1. 首先,使用kubectl get nodes命令获取当前集群中的工作节点列表。找到要删除标签的工作节点名称。

  2. 使用kubectl label nodes <节点名称> <标签键>-命令删除目标节点上的标签。将<节点名称>替换为工作节点的名称,并指定要删除的标签键。

    例如,要从名为node-1的节点上删除标签env,可以运行以下命令:

    kubectl label nodes node-1 env-
    
  3. 确认标签已成功删除,可以运行kubectl describe node <节点名称>命令查看节点的详细信息,确保标签已被移除。

这样,你就可以在Kubernetes集群中添加或删除工作节点的标签了。请注意,这些操作需要执行者具备适当的权限。

标签选择器

标签选择器(Selector)全称为“Label Selector”,它是一种根据Label来过滤符合条件的资源对象的机制。例如,将附有标签“role: backend”的所有Pod对象挑选出来归为一组就是标签选择器的一种应用,如图所示。用户通常使用标签对资源对象进行分类,而后使用标签选择器挑选出它们,例如将其创建为某Service的端点。

kd describe deployment|grep Selector

在这里插入图片描述

注解

Annotation(注解)是另一种附加在对象之上的键值类型的数据,但它拥有更大的数据容量。Annotation常用于将各种非标识型元数据(metadata)附加到对象上,但它不能用于标识和选择对象,通常也不会被Kubernetes直接使用,其主要目的是方便工具或用户的阅读及查找等。

kd describe svc|grep Annotations
kd describe deployment|grep Annotations
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值