k8s kubernetes给node节点添加标签和删除node节点标签


node节点IP 192.168.1.205

给节点添加标签的命令

添加label语法

kubectl label nodes <node-name> <label-key>=<label-value> 

实战
kubectl label node 192.168.1.205 mem=large
查看现有node及label
通过--show-labels 选项将节点的标签显示出来
kubectl get node --show-labels

给节点删除标签的命令

删除label语法

kubectl label nodes <node-name> <label-key>-

kubectl label node 192.168.1.205 mem-
上面命令中的mem-中的mem为标签的键,后面的减号表示将该标签删除

kubernetes通过资源配置文件的nodeSelector属性来对节点进行选择

在Deployment配置文件,spec属性中增加nodeSelector属性
如下的Deployment配置文件

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  selector:
    matchLabels:
      app: nginx
  replicas: 3
  template:
    metadata:
      labels:
       app: nginx
       track: stable
    spec:
      containers:
       - name: nginx
         image: nginx:1.7.9
         ports:
          - containerPort: 80
      nodeSelector:
        mem: large

创建一个名为nginx-deployment.yaml的配置文件
kubectl apply -f nginx-deployment.yaml
kubectl get pods -o wide

除了可以在配置文件中通过nodeSelector属性指定节点之外,用户在命令行中也可以通过
-l或者--labels=这两个选项指定节点的标签,例如
kubectl run nginx-deployment --image=nginx:1.7.9 --replicas=3 --labels='mem=large'


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM