设置K8s管理节点异常容忍时间

说明

每个节点上的 kubelet 需要定时向 apiserver 上报当前节点状态,如果两者间网络异常导致心跳终端,kube-controller-manager 中的 NodeController 会将该节点标记为 Unknown 或 Unhealthy,持续一段时间异常状态后 kube-controller-manager 会将该节点上的所有 pod 驱逐(1.24 版本后驱逐通过 taint toleration 实现)。

为了防止发生大面积 pod 驱逐,需要修改 kube-controller-manager 的以下参数:

● --pod-eviction-timeout duration The grace period for deleting pods on failed nodes. (default 5m0s )

● --node-monitor-grace-period duration Amount of time which we allow running Node to be unresponsive before marking it unhealthy. Must be N times more than kubelet's nodeStatusUpdateFrequency, where N means number of retries allowed for kubelet to post node status. (default 40s)

修改方式

编辑所有管理节点的 /etc/kubernetes/manifests/kube-controller-manager.yaml 文件,在 spec.containers.command 增加如下命令行参数:

csharp 复制代码
- --pod-eviction-timeout=180m
- --node-monitor-grace-period=180m

重启进程,或者移动配置文件,如果没有变化重启kubelet

相关推荐
fangzhanpeng1683 天前
快速掌握C#语言基础知识点(1.基础数据类型)
开发语言·c#·1024程序员节
无己心5 天前
面向多平台 AI 搜索引擎的适配层架构设计
前端·人工智能·搜索引擎·ai·1024程序员节
u01030552711 天前
AI驱动的安卓UI自动生成功能实现
人工智能·1024程序员节
u01030552712 天前
长株潭智能体赋能腾讯元器链接共享
1024程序员节
云贝贝贝13 天前
OceanBase认证体系介绍与备考指南
运维·服务器·oceanbase·1024程序员节
u01030552713 天前
Java图像处理实战指南
人工智能·1024程序员节
u01030552714 天前
Java AWT鼠标事件全解析
人工智能·1024程序员节
u01030552716 天前
Java实用类应用精讲
人工智能·1024程序员节
u01030552716 天前
Java I/O核心操作实战
人工智能·1024程序员节
u01030552717 天前
ArrayList操作详解与实战应用
人工智能·1024程序员节