如果我有以下Kubernetes对象:
Deployment,将rollingUpdate.maxUnavailable设置为1。PodDisruptionBudget,将maxUnavailable设置为1。HorizontalPodAutoscaler设置。如果集群处于加载状态,并且处于扩展过程中,会发生什么情况:
Pod是否由于规模的增加而增加,使用Pod的新版本?PodDisruptionBudget是否完全停止重新启动?在删除另一个节点之前,HorizontalPodAutoscaler会扩大节点的数量吗?Pod关联被设置为避免将来自同一个Deployment的两个Pod放在同一个节点上时。发布于 2019-05-07 16:15:11
由于应用程序滚动升级而被删除或不可用的Pods不包括中断预算,但是控制器(如部署和有状态集)在进行滚动升级时不受PDBs的限制--应用程序更新期间的故障处理是在控制器规范中配置的。
因此,它在一定程度上取决于控制器的配置和实现。我相信自动分配器添加的新豆荚将使用Pod的新版本,因为这是部署定义中的版本。
drain,那么将考虑到PodDisruptionBudget,并且排水过程不会违反它。中断预算受到逐出API的尊重,但可能会被手动删除之类的低级别操作所违反。它更像是一种建议,一些API尊重,而不是由整体Kubernetes强制执行的强制限制。https://stackoverflow.com/questions/54902716
复制相似问题