介绍整合flume和kafka的文章很多。

最近正好学习并动手实践了一回,记下自己的一些心得。


Flume简介

flume是 Cloudera 开发的实时日志收集系统。

她包含三个重要组件,就是source(采集读入数据), sink(输出数据)和channel(source和sink之间的buffer)。

值得一提的是, flume支持一个source采集数据,并通过多个channel发送至多个sink,配置样例见下文链接。

个人感觉开发者是希望分布式的实时日志采集变得更加简单,用户只需通过配置甚至不需要开发代码,就可以实现日志采集。

同时,还有很重要的一点,Flume比较适合分布式扩展,这对成长迅速的大型分布式系统比较有利。

大家可以参考如下一片文章进一步学习Flume:    Flume NG 简介及配置实战


整合Flume和Kafka:

总的来说需要如下几步:

1> 安装好Flume

2> 下载第三方的或自己写flume kafka sink, 编译成jar包,放入flume/lib/目录下

3> 配置Flume安装目录下的conf / XXX.properties (就是定义自己的flume source, channel 和 sink),注意 sink的类型就是<2>中自己定义的sink类全名(package.class)

4> 下载kafka安装包,将 kafka/lib/下的所有jar包都copy至 flume/lib/目录下

5> 启动flume, 验证是否成功 (可能碰到的问题包括scala版本问题,kafka jar包的版本问题和sfj多版本冲突等)


本周内会继续将如上内容补充完整,争取能给刚上手的同学更多帮助。


IT人的微信自媒体--- 杰天空, 走在寻找创意的路上
发掘创意,点缀生活,品味人生。
请搜索微信订阅号: jksy_studio  ,或者微信扫描下图二维码添加关注


杰天空静候您的光临。

Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐