我们的GKE Autopilot集群最近升级到了1.21.6-gke.1503版本,这显然会导致cluster-autoscaler.kubernetes.io/safe-to-evict=false
注解被禁止。
对于部署,我完全理解这一点,因为Google不希望部署阻止规模缩小,但对于工作,我认为这个注解在某些情况下非常有意义。我们启动复杂的作业,这些作业自己启动并监控其他作业,这使得考虑到移动部件的数量,很难使它们重新启动。
**是否有任何方法可以使作业pod在使用Autopilot时尽可能不被重新启动/移动?**在切换到Autopilot之前,我们通常通过请求所有可用资源来确保我们的作业填满单个节点;与保证QoS类相结合,这确保了一个Pod被驱逐的唯一方式是如果节点以某种方式失败,这几乎从未发生过。现在,我们似乎只剩下Guaranteed QoS类,但这并不能阻止pod被驱逐。
2条答案
按热度按时间jucafojl1#
在这一点上,唯一剩下的就是要求在IssueTracker上恢复此功能-提出一个新的功能请求并希望最好的。
链接到这个线程也是因为它包含了相当多的故障排除,可能是有用的。
2uluyalo2#
这是GKE Autopilot中的now supported,从1.27+开始。
cluster-autoscaler.kubernetes.io/safe-to-evict=false
将防止GKE发起的Pod中断7天(包括自动缩放相关和更新相关的中断)。