4.1 什么是标签?

标签其实就一对 key/value ,被关联到对象上,比如Pod,标签的使用我们倾向于能够表示对象的特殊特点,就是一眼就看出了这个Pod是干什么的,标签可以用来划分特定的对象(比如版本,服务类型等),标签可以在创建一个对象的时候直接定义,也可以在后期随时修改,每一个对象可以拥有多个标签,但是,key值必须是唯一的。创建标签之后也可以方便我们对资源进行分组管理。如果对pod打标签,之后就可以使用标签来查看、删除指定的pod。 在k8s中,大部分资源都可以打标签。

4.2 给pod资源打标签

#对已经存在的pod打标签
kubectl labels pod pod-first release=v1
#查看标签是否打成功:
kubectl get pods pod-first --show-labels

4.3 查看资源标签

#查看默认名称空间下所有pod资源的标签
kubectl get pods --show-labels
#查看默认名称空间下指定pod具有的所有标签
kubectl get pods pod-first --show-labels
#列出默认名称空间下标签key是release的pod,不显示标签
kubectl get pods -l release
#列出默认名称空间下标签key是release、值是v1的pod,不显示标签
kubectl get pods -l release=v1
#列出默认名称空间下标签key是release的所有pod,并打印对应的标签值
kubectl get pods -L release
#查看所有名称空间下的所有pod的标签
kubectl get pods --all-namespaces --show-labels