2019年05月03日 12:28:37 wang725 阅读数 158
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wang725/article/details/89786578
在某些特殊情况下,需要将某些服务固定在一台宿主机上, k8s可以使用label给node节点打上标签来满足这种需求.
Label添加删除和修改
添加label语法
kubectl label nodes <node-name> <label-key>=<label-value>
- 1
删除label语法
kubectl label nodes <node-name> <label-key>-
- 1
修改Label的值
语法: 需要加上--overwrite
参数
kubectl label nodes <node-name> <label-key>=<label-value> --overwrite
- 1
查看现有node及label
root@server01:~# kubectl get node --show-labels
NAME STATUS ROLES AGE VERSION LABELS
192.168.174.135 Ready <none> 220d v1.9.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=192.168.174.135
192.168.174.136 Ready <none> 220d v1.9.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=192.168.174.136
192.168.174.137 Ready <none> 220d v1.9.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=192.168.174.137
- 1
- 2
- 3
- 4
- 5
- 6
添加一个key为label-test和value为label-test的label
root@server01:~# kubectl label node 192.168.174.135 label-test=label-test
node "192.168.174.135" labeled
- 1
- 2
- 3
查看是否被添加
root@server01:~# kubectl get node --show-labels
NAME STATUS ROLES AGE VERSION LABELS
192.168.174.135 Ready <none> 220d v1.9.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=192.168.174.135,label-test=label-test
192.168.174.136 Ready <none> 220d v1.9.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=192.168.174.136
192.168.174.137 Ready <none> 220d v1.9.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=192.168.174.137
- 1
- 2
- 3
- 4
- 5
- 6
删除label
root@server01:~# kubectl label node 192.168.174.135 label-test-
node "192.168.174.135" labeled
- 1
- 2
修改Label的值
语法: 需要加上--overwrite
参数
kubectl label nodes <node-name> <label-key>=<label-value> --overwrite
- 1
root@server01:~# kubectl label node 192.168.174.135 label_key=label_value
node "192.168.174.135" labeled
root@server01:~#
root@server01:~# kubectl get node --show-labels
NAME STATUS ROLES AGE VERSION LABELS
192.168.174.135 Ready <none> 220d v1.9.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=192.168.174.135,label_key=label_value
192.168.174.136 Ready <none> 220d v1.9.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=192.168.174.136
192.168.174.137 Ready <none> 220d v1.9.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=192.168.174.137
root@server01:~#
root@server01:~# kubectl label node 192.168.174.135 label_key=label_value_update --overwrite
node "192.168.174.135" labeled
root@server01:~#
root@server01:~# kubectl get node --show-labels
NAME STATUS ROLES AGE VERSION LABELS
192.168.174.135 Ready <none> 220d v1.9.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=192.168.174.135,label_key=label_value_update
192.168.174.136 Ready <none> 220d v1.9.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=192.168.174.136
192.168.174.137 Ready <none> 220d v1.9.0 beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=192.168.174.137
root@server01:~#