K8s 限制节点内存使用率,内存不足时自动驱逐POD

K8s 限制节点内存使用率,内存不足时自动驱逐POD

限制前内存如下

bash 复制代码
# 1. 停止 kubelet
sudo systemctl stop kubelet

# 2. 备份当前配置
sudo cp /var/lib/kubelet/config.yaml /var/lib/kubelet/config.yaml.backup

# 3. 创建或编辑配置文件
sudo tee /var/lib/kubelet/config.yaml << 'EOF'
apiVersion: kubelet.config.k8s.io/v1beta1
kind: KubeletConfiguration
address: 0.0.0.0
port: 10250
clusterDomain: cluster.local

# ========== 内存保护核心配置 ==========
evictionHard:
  memory.available: "500Mi"        # 可用内存低于500MB时立即驱逐
  nodefs.available: "10%"          # 磁盘低于10%
  imagefs.available: "15%"         # 镜像存储低于15%
  nodefs.inodesFree: "5%"          # inode低于5%

evictionSoft:
  memory.available: "1Gi"          # 可用内存低于1GB时触发警告
  nodefs.available: "15%"          # 磁盘低于15%

evictionSoftGracePeriod:
  memory.available: "2m"           # 内存警告后2分钟才驱逐
  nodefs.available: "2m"

evictionMaxPodGracePeriod: 60      # Pod最长60秒优雅退出
evictionMinimumReclaim:
  memory.available: "300Mi"        # 每次至少回收300MB内存
  nodefs.available: "500Mi"        # 每次至少回收500MB磁盘

# ========== 预留配置 ==========
systemReserved:
  memory: "1.5Gi"                  # 为系统进程预留1.5GB
  cpu: "500m"
  ephemeral-storage: "5Gi"

kubeReserved:
  memory: "1Gi"                    # 为K8s组件预留1GB
  cpu: "250m"
  ephemeral-storage: "2Gi"

# ========== 其他重要配置 ==========
maxPods: 110                       # 每节点最多Pod数
podPidsLimit: 4096                 # 限制Pod的PID数量
cgroupDriver: systemd
failSwapOn: true
serializeImagePulls: true
EOF

# 4. 重启 kubelet
sudo systemctl daemon-reload
sudo systemctl start kubelet

# 5. 检查状态
sudo systemctl status kubelet

4. 重启 kubelet

sudo systemctl daemon-reload

sudo systemctl start kubelet

5. 检查状态

sudo systemctl status kubelet

增加配置后的内存情况

相关推荐
阿里云云原生2 天前
阿里云获评 Agentic AI 开发平台领导者,函数计算 AgentRun 赢下关键分!
云原生
蝎子莱莱爱打怪2 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes
崔小汤呀2 天前
Docker部署Nacos
docker·容器
缓解AI焦虑2 天前
Docker + K8s 部署大模型推理服务:资源划分与多实例调度
docker·容器
阿里云云原生2 天前
MSE Nacos Prompt 管理:让 AI Agent 的核心配置真正可治理
微服务·云原生
阿里云云原生3 天前
当 AI Agent 接管手机:移动端如何进行观测
云原生·agent
阿里云云原生3 天前
AI 原生应用开源开发者沙龙·深圳站精彩回顾 & PPT下载
云原生
阿里云云原生3 天前
灵感启发:日产文章 100 篇,打造“实时热点洞察”引擎
云原生
1candobetter3 天前
Docker Compose Build 与 Up 的区别:什么时候必须重建镜像
docker·容器·eureka
~莫子3 天前
Haproxy七层负载详解+实验详细代码
云原生