1、配置flume里的conf文件
[root@Zk-robot-2 kafka]# cd /opt/flume-1.8.0/conf/
[root@Zk-robot-2 conf]# vi flume_to_kafka.conf
#配置agent
agent1.sources=source1
agent1.channels=channel1
agent1.sinks=sink1
#配置source1
agent1.sources.source1.type=spooldir
#指定监控的目录,监控/home/hadoop/logs,如果监控的文件夹有更新
agent1.sources.source1.spoolDir=/home/hadoop/logs
agent1.sources.source1.channels=channel1
agent1.sources.source1.fileHeader=false
#配置channel1
agent1.channels.channel1.type=file
#channel存放数据的备份目录
agent1.channels.channel1.checkpointDir=/home/hadoop/channel_data.backup
#channel数据存放目录
agent1.channels.channel1.dataDirs=/home/hadoop/channel_data
#配置sink1
#指定从哪一个channel中取数
agent1.sinks.sink1.channel=channel1
#指定消息发送到kafka
agent1.sinks.sink1.type=org.apache.flume.sink.kafka.KafkaSink
#指定发送到哪一个sink,如果topic不存在,会默认创建,但是默认分区和副本为1
agent1.sinks.sink1.kafka.topic=abbytest20190724
agent1.sinks.sink1.kafka.bootstrap.servers=localhost:9092
agent1.sinks.sink1.kafka.flumeBatchSize=20
#如果kafka分区的leader确认写入,则认为消息提交成功
agent1.sinks.sink1.kafka.producer.acks=1
#每个ms就发送一次消息
agent1.sinks.sink1.kafka.producer.linger.ms=1
2、启动fulme
bin/flume-ng agent -n agent1 -c conf -f conf/flume_to_kafka.conf -Dflume.root.logger=DEBUG,console
3、到另一个控制台,开启kafka的接收者
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic abby --from-beginning
4、测试,第三个控制台在/home/hadoop/logs目录下添加文件
echo "Hello ABBY" > ABBY.TXT
这时候,kafka接收者有一个接收,Hello ABBY
完成!!!