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
完成!!!