k8s lable 操作 增删改查
label标签
·
Label定义:
Label是Kubernetes系列中另外一个核心概念。是一组绑定到K8s资源对象上的key/value对。同一个对象的labels属性的key必须唯一。label可以附加到各种资源对象上,如Node,Pod,Service,RC等。
通过给指定的资源对象捆绑一个或多个不用的label来实现多维度的资源分组管理功能,以便于灵活,方便地进行资源分配,调度,配置,部署等管理工作。
#node的label
增:
kubectl label nodes kube-node label_name=label_value
增加worker 节点标签
kubectl label nodes k8s-node1 node-role.kubernetes.io/worker=worker
删:kubectl label nodes kube-node label_name-
删除一个Label,只需在命令行最后指定Label的key名并与一个减号相连即可:
kubectl label nodes k8s-node1 node-role.kubernetes.io/worker-
改:
增加方法的基础上 使用--overwrite 参数
kubectl label nodes kube-node label_name=label_value --overwrite
不加参数报错
直接修改配置
kubect edit node nodename
# 查看命名空间中 svc的label
kubectl -n test-k8s get svc --show-labels
# 选择labelkey名为app的svc
kubectl -n test-k8s get svc --show-labels
# 选择app为web或者nginx的svc
kubectl -n test-k8s get svc -l 'app in (nginx, web)' --show-labels
# 选择app为web或者nginx但不包括env=nginxsvc的svc
kubectl -n test-k8s get svc -l env!=nginxsvc,'app in (nginx, web)' --show-labels
# 选择label的key名为app的svc:
kubectl -n test-k8s get svc -l app --show-labels
# 修改env标签的值为v2
kubectl -n test-k8s label svc nginx env=v2 --overwrite
# 删除app标签
kubectl -n test-k8s label svc app-
# 为pod资源打标签
[root@master~]# kubectl label pod nginx-pod version=1.0 -n dev
pod/nginx-podlabeled
# 为pod资源更新标签
[root@master~]# kubectl label pod nginx-pod version=2.0 -n dev --overwrite
# 查看标签
[root@master~]# kubectl get pod nginx-pod -n dev --show-labels
更多推荐
已为社区贡献17条内容
所有评论(0)