码迷,mamicode.com
首页 > Web开发 > 详细

Kubernetes设置污点以及容忍

时间:2019-07-12 00:43:55      阅读:307      评论:0      收藏:0      [点我收藏+]

标签:desc   如何   tor   taint   net   pre   node   schedule   集群   

K8S集群内有一台212专门用来做数据库服务器,磁盘是基于SSD。

1.设置212污点

kubectl taint node 172.17.10.212 disk=ssd:NoSchedule

2.数据库的deployment

    spec:
      tolerations:
      - key: "disk"
        operator: "Equal"
        value: "ssd"
        effect: "NoSchedule"
      nodeSelector:
        kubernetes.io/hostname: 172.17.10.212

这样子数据库就只会在212这台机器上跑,同时其他服务不会调度在这台。

kubectl taint node [node] key=value[effect]
其中[effect] 可取值: [ NoSchedule | PreferNoSchedule | NoExecute ]
NoSchedule :一定不能被调度。
PreferNoSchedule:尽量不要调度。
NoExecute:不仅不会调度,还会驱逐Node上已有的Pod。

查看节点的污点:
kubectl describe node/node_name |grep Taint

如何取消污点:
去除指定key及其effect:
kubectl taint nodes node_name key:[effect]- #(这里的key不用指定value)

去除指定key所有的effect:
kubectl taint nodes node_name key-

deploy容忍污点:
tolerations:

  • key: "disk"
    operator: "Equal" #Equal意味着这个值等于value,如果是Exists,则不需要填写value,只要有这个key就容忍
    value: "ssd"
    effect: "NoSchedule"

Kubernetes设置污点以及容忍

标签:desc   如何   tor   taint   net   pre   node   schedule   集群   

原文地址:https://blog.51cto.com/fengwan/2419357

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!