我更新了kube-apiserver服务,默认容忍限制为60秒。
--default-unreachable-toleration-seconds=60
--default-not-ready-toleration-seconds=60
我在我的一个节点上停止了kubelet,它变成了not-ready状态。
但我面临的问题是,节点从not-ready状态移动到not-ready状态仅5分钟后,pods就被驱逐。期望是pods应该在60秒内被驱逐。
我的kubernetes版本是1.15。
在进行此更改后,我重新启动了kube-controller-manager和kube-apiserver。
这个过程出了什么问题?
发布于 2020-04-06 14:54:52
有了这两个默认的容差参数,Kubernetes会自动为每个pod添加一个容差配置。因此,重新部署所有pod以确保将容差添加到所有pod是非常重要的。
除了更改kubernetes控制平面组件的参数(使其对所有pod全局更改)之外,您还可以使用以下配置修改每个pod的容差时间。
tolerations:
- key: "node.kubernetes.io/unreachable"
operator: "Exists"
effect: "NoExecute"
tolerationSeconds: 60
- key: "node.kubernetes.io/not-ready"
operator: "Exists"
effect: "NoExecute"
tolerationSeconds: 60
https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/#taint-based-evictions
https://stackoverflow.com/questions/61054264
复制相似问题