K8S系列之污点和容忍度

image.png

什么污点和容忍度

污点是给node添加一个污点,容忍度是作用于POD的,可以决定pod是否可以调度到该node上,如果pod容忍度不匹配就不能调度的pod上。

为什么需要污点和容忍度

可以改变pod的调度策略,指定pod只能部署到指定的node节点上,污点和容忍度都是成对出现的;在一些需要指定使用某台node资源的时候可以使用这种方式,指定一组pod只能部署在有污点的node节点上。

怎么使用污点和容忍度

  1. 首先给node添加污点
## 添加污点
kubectl taint nodes node1 key1=value1:NoSchedule
## 删除污点
kubectl taint nodes node1 key1=value1:NoSchedule-

![image.png](https://img-blog.csdnimg.cn/img_convert/9197f54ffc6c2a510c2bbbfcbab796d7.png
2. 给pod添加容忍度

tolerations:
- key: "key1"
  operator: "Equal"
  value: "value1"
  effect: "NoSchedule"

operator

  • Equal:容忍度中的key和value都需要跟污点中的匹配对应。
  • Exists:容忍度中value不能填写,只需要key和effect匹配就行。
  1. 如果一个容忍度的 key 为空且 operatorExists, 表示这个容忍度与任意的 key、value 和 effect 都匹配,即这个容忍度能容忍任何污点。
  2. 如果 effect 为空,则可以与所有键名 key1 的效果相匹配。

effect

effect表示了一些pod调度node上的一些行为。

  • PreferNoSchedule:尽量避免把pod调度到容忍度不匹配的node节点,不是强制要求的,还是有可能不匹配的调度。
  • NoSchedule:只要pod存在node不能容忍的容忍度,pod不能进行调度到该node上。
  • NoExecute:pod容忍度不能匹配node的容忍度,不能被调度到该node上;已经存在的pod如果不符合容忍度,则会被驱逐。

驱逐规则

  • 如果 Pod 不能忍受这类污点,Pod 会马上被驱逐。
  • 如果 Pod 能够忍受这类污点,但是在容忍度定义中没有指定 tolerationSeconds, 则 Pod 还会一直在这个节点上运行。
  • 如果 Pod 能够忍受这类污点,而且指定了 tolerationSeconds, 则 Pod 还能在这个节点上继续运行这个指定的时间长度。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
污点容忍度Kubernetes中用来控制Pod调度的机制。污点(Taint)是指在节点上设置的一种属性,用于排斥一类特定的Pod。而容忍度(Toleration)是指在Pod上设置的属性,用于指定Pod是否可以被调度到具有匹配污点的节点上。 当一个节点上设置了污点时,只有那些在Pod的容忍度中定义了匹配该污点的规则的Pod才能被调度到该节点上。如果Pod没有定义容忍度或者容忍度不匹配节点上的污点,则该Pod将不会被调度到该节点上。 举个例子,假设我们在节点node1上设置了一个污点,key为k1,value为v1,effect为NoSchedule。如果一个Pod的容忍度中定义了匹配这个污点的规则,比如key为test,value为16,effect为NoSchedule,那么这个Pod就可以被调度到拥有这个污点node1节点上。 总结来说,污点容忍度是相互匹配的关系。通过在节点上设置污点和在Pod上设置容忍度,我们可以控制Pod的调度行为,避免将Pod调度到不合适的节点上。\[2\]\[3\] #### 引用[.reference_title] - *1* *2* *3* [k8s--基础--20--污点容忍度](https://blog.csdn.net/zhou920786312/article/details/126241579)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值