一次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,到这我就没法处理了,跟大佬沟通后,有个脚本可以把这些死进程给干掉,释放掉这些占用的内存出来,当前环境只能通过脚本来巡检处理了,不过,新版本已经解决,哎,客户私有场景下,现场环境版本总是落后的,而且客户还不一定想升级,不好搞呀!

相关推荐
itLaity11 小时前
基于Kafka实现简单的延时队列
spring boot·分布式·kafka
IT邦德21 小时前
OGG同步Oracle到Kafka不停库,全量加增量
数据库·oracle·kafka
黄雪超1 天前
Kafka——多线程开发消费者实例
大数据·分布式·kafka
武子康2 天前
大数据-52 Kafka 架构全解析:高吞吐、高可用分布式消息系统的核心奥秘
大数据·后端·kafka
ATaylorSu2 天前
Kafka入门指南:从零开始掌握分布式消息队列
笔记·分布式·学习·kafka
不辉放弃3 天前
kafka的shell操作
数据库·kafka·pyspark·大数据开发
cui_win3 天前
kafka 消费者组
分布式·kafka
Albert.H.Holmes3 天前
详述消息队列kafka
分布式·kafka
梦想画家3 天前
深入解析:如何在Kafka中配置Source和Sink连接器构建高效数据管道
kafka·kafka connector
健康平安的活着3 天前
kafka生产端和消费端的僵尸实例以及解决办法
分布式·kafka