一次Kafka启动失败引出的问题

背景

Some time,有个现场童鞋说咱的Kafka实例有个broker一直crash,还截图给我看了,大致是Kafka启动加载topic分区日志文件的时候,然后就没了,连个WARN都没有。当然,光看这个截图咱啥都不知道,因此只能搞个会议一起看看,这里说一下,公司内部聊天软件太菜了,所以就用腾讯会议,嗯,挺好的,反正是免费的。

干活

好,跟现场童鞋搞起来。嗯,Kafka启动日志既然看不了啥,那只能看下pod状态,哦豁,OOMKILLED,nice,找到原因了,嗯,但是,使用kubectl describe node xxxx 查看,这个node还剩一半呀,咋回事呢?

  • Kafka pod是OOMKILLED
  • kubectl describe nodes xxxx 查看,cpu/内存是足够的

那么是不是Node资源不够呢?free -m 一看,好家伙,256G只剩1个G了,而Kafka pod配置的request是4Gi,那么启动的时候当然会被内核给干死了,没内存了。到这一步了,基本上就不干Kafka的事情了,不过,都查看现在了,这会儿就继续查看哪个大哥占用了。

top -b -n 1 | head -n 12 | tail -n 10 查看前10占用内存最大的进程,嗯,发现是个死进程,是容器的死进程,但是这个容器所在的pod都已经删除了,跟k8s大佬一沟通,好吧,是个开源bug,到这我就没法处理了,跟大佬沟通后,有个脚本可以把这些死进程给干掉,释放掉这些占用的内存出来,当前环境只能通过脚本来巡检处理了,不过,新版本已经解决,哎,客户私有场景下,现场环境版本总是落后的,而且客户还不一定想升级,不好搞呀!

相关推荐
灼华十一6 小时前
消息队列-kafka
linux·docker·golang·kafka
喝醉酒的小白6 小时前
Kafka 数据写入问题
分布式·kafka
晚风 -7 小时前
SprinBoot整合KafKa的使用(详解)
spring boot·分布式·kafka
阿桨9 小时前
部署kafka并通过python操作
python·kafka
LKID体12 小时前
Kafka 消息有序性问题
分布式·kafka
java1234_小锋14 小时前
Kafka如何保证消息可靠?
分布式·kafka
喝醉酒的小白14 小时前
Kafka的学习路径规划
分布式·学习·kafka
zmd-zk17 小时前
flinkSql 将流和表的互相转换
大数据·分布式·学习·flink·kafka
AutoMQ1 天前
知乎启用AutoMQ替换Kafka,开辟成本优化与运维提效新纪元
大数据·阿里云·云原生·kafka·云计算·腾讯云·aws·消息·gcp·计算·automq