Kafka学习笔记之K8S内filebeat传输到kafka报错带解决方案

0x00 概述

filebeat非常轻量级,正常情况下占用的资源几乎都能忽略不计,但是部署后发现资源占用很大,所以怀疑是filebeat本身出了问题。

第一时间查看filebeat日志(默认路径/var/log/filebeat/filebeat,K8S需要在控制台实时查看pod的日志),发现有大量内容输出:

复制代码
2019-03-20T08:55:02.198+0800    INFO    kafka/log.go:53 producer/broker/544 starting up
2019-03-20T08:55:02.198+0800    INFO    kafka/log.go:53 producer/broker/544 state change to [open] on wp-news-filebeat/4
2019-03-20T08:55:02.198+0800    INFO    kafka/log.go:53 producer/leader/wp-news-filebeat/4 selected broker 544
2019-03-20T08:55:02.198+0800    INFO    kafka/log.go:53 producer/broker/478 state change to [closing] because EOF
2019-03-20T08:55:02.199+0800    INFO    kafka/log.go:53 Closed connection to broker bitar1d12:9092
2019-03-20T08:55:02.199+0800    INFO    kafka/log.go:53 producer/leader/wp-news-filebeat/5 state change to [retrying-3]
2019-03-20T08:55:02.199+0800    INFO    kafka/log.go:53 producer/leader/wp-news-filebeat/4 state change to [flushing-3]
2019-03-20T08:55:02.199+0800    INFO    kafka/log.go:53 producer/leader/wp-news-filebeat/5 abandoning broker 478
2019-03-20T08:55:02.199+0800    INFO    kafka/log.go:53 producer/leader/wp-news-filebeat/2 state change to [retrying-2]
2019-03-20T08:55:02.199+0800    INFO    kafka/log.go:53 producer/leader/wp-news-filebeat/2 abandoning broker 541
2019-03-20T08:55:02.199+0800    INFO    kafka/log.go:53 producer/leader/wp-news-filebeat/3 state change to [retrying-2]
2019-03-20T08:55:02.199+0800    INFO    kafka/log.go:53 producer/broker/478 shut down
复制代码

 

0x01 发现问题

看日志描述,似乎是一直地在不停的创建和关闭kafka连接。

起初怀疑是kafka相关dns没有配置(/etc/resolve.conf)导致连不上kafka的broker,但检查并和正常的机器对比后,dns配置是一样的,也就排除了这种情况。

接下来怀疑可能是filebeat版本的问题,因为elastic家族的产品就是那个尿性,发版速度很频繁,而且不同大版本有很多不兼容

对比filebeat版本,发现它的版本(6.5.3)比正常的服务器(5.6.12)高一个大版本,所以怀疑不同版本对kafka的处理机制不一样导致的。

为了验证这个问题,在查阅filebeat官网后发现,6.5.x默认kafka的版本是1.0.0,而5.6.x默认的是0.8.2.0,而询问运维得知kafka版本是0.10.2.2,所以问题基本确认。

根据官方文档描述,在配置中指定了kafka版本:

 

 

 问题得以解决。

 

0x02 总结

查看kafka版本,https://blog.csdn.net/wuzhuge1990/article/details/80733622

 

posted @   时光飞逝,逝者如斯  阅读(1267)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示