k8s cgroup 内存泄漏案例分享。

本文分享了一个Kubernetes环境下,由于cgroup内存泄漏导致的资源无法释放的问题。通过测试,当内存达到满负荷,即使删除Pod,内存也不会释放,从而无法重新创建Pod。解决方案是在CentOS 7.6的内核参数中添加`cgroup.memory=nokmem`,重启后,内存管理恢复正常,Pod的内存得以释放。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

总结:

场景设计思想  cgroup内存打满的情况,测试 对 deployment 资源下的pod 执行 kubectl delete pod,验证pod 占用的内存是否释放。

能释放的情况是: pod 可以重新创建,不论删除多少次。

异常情况是: 开始有一些可以pod 可以创建, 多少删除后全部不能重新创建,报内存不足。

修复方案,内核参数文件 /boot/grub2/grub.cfg, 在 ro crashkernel=auto 后面添加 cgroup.memory=nokmem 

 

 

本次测试使用CentOs 7.6。

内核参数没有添加 

cgroup.memory=nokmem

 

机器上跑 100 个 pod

占用内存空间,直至使用满。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值