1、Kubectl语法
kubectl label [--overwrite] (-f FILENAME | TYPE NAME) KEY_1=VAL_1 ... KEY_N=VAL_N [--resource-version=version]
kubectl label:更新(增加、修改或删除)资源上的 label
(标签)。为kubernetes集群的resource打标签,可以将不同的机器打上不同标签,然后将不同特征的容器调度到不同分组上。
1)label
必须以字母或数字开头,可以使用字母、数字、连字符、点和下划线,最长63个字符。
2)如果--overwrite
为 true
,则可以覆盖已有的 label
,否则尝试覆盖 label
将会报错。
3)如果指定了--resource-version
,则更新将使用此资源版本,否则将使用现有的资源版本。
2、kubectl命令中的简写
kubectl命令中可以使用的缩写,具体如下:
certificatesigningrequests (缩写 csr) componentstatuses (缩写 cs) configmaps (缩写 cm) customresourcedefinition (缩写 crd) daemonsets (缩写 ds) deployments (缩写 deploy) endpoints (缩写 ep) events (缩写 ev) horizontalpodautoattachrs (缩写 hpa) ingresses (缩写 ing) limitranges (缩写 limits) namespaces (缩写 ns) networkpolicies (缩写 netpol) nodes (缩写 no) persistentvolumeclaims (缩写 pvc) persistentvolumes (缩写 pv) poddisruptionbudgets (缩写 pdb) pods (缩写 po) podsecuritypolicies (缩写 psp) replicasets (缩写 rs) replicationcontrollers (缩写 rc) resourcequotas (缩写 quota) serviceaccounts (缩写 sa) services (缩写 svc) statefulsets (缩写 sts) storageclasses (缩写 sc)
3、kubectl label 命令
1)给名为foo的Pod添加label unhealthy=true
kubectl label pods foo unhealthy=true
2)给名为foo的Pod修改label 为 'status' / value 'unhealthy',且覆盖现有的value
kubectl label --overwrite pods foo status=unhealthy
3)给 namespace 中的所有 pod 添加 label
kubectl label pods --all status=unhealthy
4)仅当resource-version=1时才更新 名为foo的Pod上的label
kubectl label pods foo status=unhealthy --resource-version=1
5)给名为tomcat 的Pod添加label app=tomcat
kubectl label pods tomcat app=tomcat
6)把名为tomcat 的Pod修改label 为 app=tomcat1,且覆盖现有的value
kubectl label --overwrite pods tomcat app=tomcat1
7)为namespace 中的所有 pod 添加 label
kubectl label pods --all test=test
8)删除名为“app”的label 。(使用“ - ”减号相连)
kubectl label pods tomcat app-