Kubernetes-在污染/耐受时启用自动pod重新调度

Kubernetes-在污染/耐受时启用自动pod重新调度,kubernetes,kubernetes-pod,Kubernetes,Kubernetes Pod,在以下场景中: X舱对污染有耐受性 但是,具有此类污染的节点A不存在 同时,Pod X被安排在不同的节点B上 具有适当污点的节点A准备就绪 在这里,Kubernetes不会触发节点A上的pod X的自动重新调度,因为它在节点B上正常运行。是否有办法启用对节点A的自动重新调度?本机可能不会,除非您: 将nodeB的污染更改为NoExecute(可能已经设置): NoExecute-pod将从节点中退出(如果它已经在节点上运行),并且不会被调度到节点上(如果它还没有在节点上运行) 即: 您

在以下场景中:

  • X舱对污染有耐受性
  • 但是,具有此类污染的节点A不存在
  • 同时,Pod X被安排在不同的节点B上
  • 具有适当污点的节点A准备就绪

  • 在这里,Kubernetes不会触发节点A上的pod X的自动重新调度,因为它在节点B上正常运行。是否有办法启用对节点A的自动重新调度?

    本机可能不会,除非您:

    • nodeB
      的污染更改为
      NoExecute
      (可能已经设置):
    NoExecute-pod将从节点中退出(如果它已经在节点上运行),并且不会被调度到节点上(如果它还没有在节点上运行)

    即:

    您可以在同一节点上放置多个污点,并在同一pod上放置多个容差

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

    如果至少存在一个影响NoSchedule的未忽略污染,则Kubernetes不会将pod调度到该节点上


    如果这是不可能的,那么使用可能会有所帮助(但这与污染不同)

    谢谢!因此,在最后,如果新节点更好地匹配污染/容忍度,则不会自动收回pod?@Arkon如果多个污染按照文档指定的方式工作,则不会自动收回pod:它将忽略pod具有匹配容忍度的污染。