初阶Flume之Flume读取文件传入kafka

二话不说,上配置文件

exec-memory-avro.conf

exec-memory-avro.sources = exec-source
exec-memory-avro.sinks = avro-sink
exec-memory-avro.channels = memory-channel


exec-memory-avro.sources.exec-source.type = exec
exec-memory-avro.sources.exec-source.command = tail -F /home/bigdata/data/date.log
exec-memory-avro.sources.exec-source.shell = /bin/sh -c


exec-memory-avro.sinks.avro-sink.type = avro
exec-memory-avro.sinks.avro-sink.hostname = wxincentos3
exec-memory-avro.sinks.avro-sink.port = 44444


exec-memory-avro.channels.memory-channel.type = memory


exec-memory-avro.sources.exec-source.channels = memory-channel
exec-memory-avro.sinks.avro-sink.channel = memory-channel

这个是用shell命令行来读取文件

写完配置文件就可以启动这个agent了

flume-ng agent -c . -f /root/wangxin/flume/exec-memory-avro.conf -n exec-memory-avro -Dflume.root.logger=INFO,console &

exec-memory-avro就是要配置文件里的agent服务器名称

avro.conf

avro-memory-kafka.sources = avro-source
avro-memory-kafka.sinks = kafka-sink
avro-memory-kafka.channels = memory-channel


avro-memory-kafka.sources.avro-source.type = avro
avro-memory-kafka.sources.avro-source.bind = wxincentos3
avro-memory-kafka.sources.avro-source.port = 44444


avro-memory-kafka.sinks.kafka-sink.type = org.apache.flume.sink.kafka.KafkaSink
avro-memory-kafka.sinks.kafka-sink.brokerList = wxincentos3:9092
avro-memory-kafka.sinks.kafka-sink.topic = test
avro-memory-kafka.sinks.kafka-sink.batchSize = 5
avro-memory-kafka.sinks.kafka-sink.requiredAcks =1 


avro-memory-kafka.channels.memory-channel.type = memory


avro-memory-kafka.sources.avro-source.channels = memory-channel
avro-memory-kafka.sinks.kafka-sink.channel = memory-channel

这个配置文件是将读取到的数据传入到kafka 的

flume-ng agent -c . -f /root/wangxin/flume/avro.conf -n avro-memory-kafka -Dflume.root.logger=INFO,console &
两个agent 启动完成之后kafka里的topic就接收到数据了。

猜你喜欢

转载自blog.csdn.net/wx740851326/article/details/82699705