六, Kafka与Flume对接
文章目录Kafka 对接 Flume一,Flume作为生产者1. 启动Kafka集群2. 启动Kafka消费者3. 设置Flume配置文件4. 启动Flume5. Flume采集数据, Kafka消费数据情况二, Flume作为消费者1. 配置Flume2. 启动Flume3. 启动Kafka生产者4. 测试Kafka 对接 FlumeFlume 是一个在大数据开发中非常常用的组件。可以用于 Ka
·
文章目录
Kafka 对接 Flume
Flume 是一个在大数据开发中非常常用的组件。可以用于 Kafka 的生产者,也可以用于
Flume 的消费者。
一, Flume作为生产者
1. 启动Kafka集群
#前面章节有提到一键启停脚本的写法
kk start
2. 启动Kafka消费者
#为了简单, 先使用console-consumer作为消费者
bin/kafka-topics.sh --bootstrap-server bigdata01:9092 --topic first
3. 设置Flume配置文件
先在Flume安装目录的job目录下, 创建
flume_to_kafka.conf
# 1 组件定义
a1.sources = r1
a1.sinks = k1
a1.channels = c1
# 2 配置 source
a1.sources.r1.type = TAILDIR
a1.sources.r1.filegroups = f1
a1.sources.r1.filegroups.f1 = /opt/module/applog/cal.*
a1.sources.r1.positionFile =/opt/module/flume -1.7.0/taildir_position.json
# 3 配置 channel
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100
# 4 配置 sink
a1.sinks.k1.type = org.apache.flume.sink.kafka.KafkaSink
a1.sinks.k1.kafka.bootstrap.servers = bigdata01:9092,bigdata02:9092,bigdata03:9092
a1.sinks.k1.kafka.topic = first
a1.sinks.k1.kafka.flumeBatchSize = 20
a1.sinks.k1.kafka.producer.acks = 1
a1.sinks.k1.kafka.producer.linger.ms = 1
# 5 拼接组件
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
4. 启动Flume
bin/flume-ng agent -n a1 -c conf/ -f job/flume_to_kafka.conf
5. Flume采集数据, Kafka消费数据情况
- Kafka 消费者启动
bin/kafka-console-consumer.sh --bootstrap-server bigdata01:9092 --topic first --from-begining
二, Flume作为消费者
1. 配置Flume
- 在flume的安装目录下新建conf文件,
kafka-to-flume.conf
# 1 组件定义
a1.sources = r1
a1.sinks = k1
a1.channels = c1
# 2 配置 source
a1.sources.r1.type = org.apache.flume.source.kafka.KafkaSource
a1.sources.r1.batchSize = 50
a1.sources.r1.batchDurationMillis = 200
a1.sources.r1.kafka.bootstrap.servers = bigdata01:9092
a1.sources.r1.kafka.topics = first
a1.sources.r1.kafka.consumer.group.id = custom.g.id
# 3 配置 channel
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100
# 4 配置 sink
a1.sinks.k1.type = logger
# 5拼接组件
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
2. 启动Flume
bin/flume-ng agent -c conf/ -n a1 -f job/kafka-to-flume.conf -Dflume.root.logger=INFO,console
3. 启动Kafka生产者
bin/kafka-console-producer.sh --broker-list bigdata01:9092 --topic first
4. 测试
更多推荐
已为社区贡献4条内容
所有评论(0)