Kubernetes - 启用自动pod重新安排污染/容忍

问题描述 投票:2回答:1

在以下场景中:

  1. Pod X对污点有耐受性
  2. 但是,不存在具有这种污点的节点A.
  3. 在此期间,Pod X会在不同的节点B上进行调度
  4. 具有适当污点的节点A变为就绪

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

kubernetes kubernetes-pod
1个回答
3
投票

本地,可能不是,除非你:

  • nodeB的污点改为NoExecute(可能已经设定):

NoExecute - pod将从节点中逐出(如果它已在节点上运行),并且不会被调度到节点上(如果它尚未在节点上运行)。

那是:

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

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

如果至少有一个未被忽略的污点具有效果NoSchedule,那么Kubernetes将不会将pod安排到该节点上

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

© www.soinside.com 2019 - 2024. All rights reserved.