由于 MatchInterPodAffinity 谓词,没有任何亲和力的 Kubernetes pods 突然停止调度
Kubernetes pods without any affinity suddenly stop scheduling because of MatchInterPodAffinity predicate
我们的 Kubernetes 1.6 集群中的所有新的或重新启动的 pods 都没有任何已知的变化,不再安排。我得到的错误是:
No nodes are available that match all of the following predicates:: MatchInterPodAffinity (10), PodToleratesNodeTaints (2).
我们的集群之前运行良好,我真的看不到之前所做的任何配置更改。
我已经尝试过的事情:
- 正在重启主节点
- 正在重启 kube-scheduler
- 正在删除受影响的pods、部署、有状态集
一些 pods 确实有以前有效的反亲和力设置,但大多数 pods 没有任何亲和力设置。
集群信息:
- Kubernetes 1.6.2
- AWS 上的 Kops
- 1个master,8个主节点,1个污点数据处理节点
这有什么已知的原因吗?
我可以检查哪些设置和日志可以提供更多信息?
是否可以调试调度程序?
问题是 Pod 卡在删除中。这导致 kube-controller-manager 停止工作。
删除无效,因为有问题的 Pod/RS/Deployment 的限制与我们在创建后设置的 maxLimitRequestRatio 相冲突。错误报告正在处理中。
解决方案是增加 maxLimitRequestRatio 并最终重启 kube-controller-manager。
我们的 Kubernetes 1.6 集群中的所有新的或重新启动的 pods 都没有任何已知的变化,不再安排。我得到的错误是:
No nodes are available that match all of the following predicates:: MatchInterPodAffinity (10), PodToleratesNodeTaints (2).
我们的集群之前运行良好,我真的看不到之前所做的任何配置更改。
我已经尝试过的事情:
- 正在重启主节点
- 正在重启 kube-scheduler
- 正在删除受影响的pods、部署、有状态集
一些 pods 确实有以前有效的反亲和力设置,但大多数 pods 没有任何亲和力设置。
集群信息:
- Kubernetes 1.6.2
- AWS 上的 Kops
- 1个master,8个主节点,1个污点数据处理节点
这有什么已知的原因吗?
我可以检查哪些设置和日志可以提供更多信息?
是否可以调试调度程序?
问题是 Pod 卡在删除中。这导致 kube-controller-manager 停止工作。
删除无效,因为有问题的 Pod/RS/Deployment 的限制与我们在创建后设置的 maxLimitRequestRatio 相冲突。错误报告正在处理中。
解决方案是增加 maxLimitRequestRatio 并最终重启 kube-controller-manager。