首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有公差的吊舱预定为无污染的节点。

有公差的吊舱预定为无污染的节点。
EN

Stack Overflow用户
提问于 2019-03-29 08:40:11
回答 2查看 1.1K关注 0票数 3

我有这个设置的吊舱:

代码语言:javascript
复制
Node-Selectors:  <none>
Tolerations:     node.kubernetes.io/memory-pressure:NoSchedule
                 node.kubernetes.io/not-ready:NoExecute for 300s
                 node.kubernetes.io/unreachable:NoExecute for 60s
                 role_va

豆荚被安排在这个节点中:

代码语言:javascript
复制
Labels:             balancer=true
                    beta.kubernetes.io/arch=amd64
                    beta.kubernetes.io/os=linux
                    cpu_avx2=true
                    cpu_avx512f=true
                    kubernetes.io/hostname=p20b-sr3-r5-k8s-node4
                    master=true
                    worker=true
Annotations:        node.alpha.kubernetes.io/ttl=0
                    volumes.kubernetes.io/controller-managed-attach-detach=true
Taints:             <none>

求你了帮我弄明白为什么。如果我没有弄错吊舱的耐受性,"role_va“必须被调度为only到具有此污点的节点。在我的例子中,节点没有这种污染,但是无论什么,吊舱都被调度到这个节点中。为什么?

EN

回答 2

Stack Overflow用户

发布于 2019-05-22 10:40:16

您的问题的答案包括在涂料和容忍,定义在库伯奈特斯文档:Taints and Tolerations

Kubernetes处理多个污点和公差的方式就像一个过滤器:从节点的所有污点开始,然后忽略吊舱具有匹配公差的污染;其余未被忽略的污点对吊舱有指示的影响。

这意味着,如果节点没有污染,那么它将接受每个豆荚,不管在它们中定义了什么容忍。

票数 2
EN

Stack Overflow用户

发布于 2021-04-27 18:17:14

正如Malgorzata所说,只有节点才能接受某种类型的豆荚,所以才会有耐受性和耐受性。例如,带有“蓝色”污染的节点只能接受具有“蓝色”容忍度的吊舱。然而,这并不意味着具有“蓝色”耐受性的豆荚只会在“蓝色”污染的节点中结束。可以选择没有污染的任何其他节点(因此不喜欢荚类型)。

下面是实现您的需求的两种可能方法。

  1. 使用带有污点的节点和带有这种公差的吊舱。还声明了pod的节点亲缘关系,这是用于获取特定节点上的调度的pod的首选项。这两种配置结合在一起将确保您的吊舱被安排在特定的节点上。节点将只有具有特定公差的吊舱。
  2. 如果您有三个节点,那么在其中一个节点上应用“蓝色”污染,在其余节点上应用“红色”污染。这将迫使吊舱与“蓝色”容忍,只有一种选择的节点与“蓝色”污染。因为其他节点有“红色”污染,而吊舱没有“红色”容忍度。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55413419

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档