大数据菜鸟实战一:使用flume收集数据到KafKa

 最近在学习大数据相关的知识,实在记性不好了。都说好记性不如烂笔头这是真的啊!!!!

1. 安装flume ,kafka这里不多说,主要演示下怎么实现使用flume收集文件到KafKa.

2.进入到flume 下的Conf下编写配置文件:hcytest1.properties 文件内容如下:

LogAgent.sources = mysource
LogAgent.channels = mychannel
LogAgent.sinks = mysink
LogAgent.sources.mysource.type = spooldir
LogAgent.sources.mysource.channels = mychannel
LogAgent.sources.mysource.spoolDir =/tmp/logs
LogAgent.sinks.mysink.channel = mychannel

#这里是直接收集到Hdfs的配置
#LogAgent.sinks.mysink.type = hdfs
#LogAgent.sinks.mysink.hdfs.path = hdfs://hadoopnode:9000/data/logs/%Y/%m/%d/%H/
#LogAgent.sinks.mysink.hdfs.batchSize = 1000
#LogAgent.sinks.mysink.hdfs.rollSize = 0
#LogAgent.sinks.mysink.hdfs.rollCount = 10000
#LogAgent.sinks.mysink.hdfs.useLocalTimeStamp = true

#这里是直接收集到kafka的配置
LogAgent.sinks.mysink.type = org.apache.flume.sink.kafka.KafkaSink
LogAgent.sinks.mysink.brokerList = hadoopnode:9092
LogAgent.sinks.mysink.topic = flume-data
LogAgent.sinks.mysink.batchSize = 5
LogAgent.sinks.mysink.requiredAcks = 1


LogAgent.channels.mychannel.type = memory
LogAgent.channels.mychannel.capacity = 10000
LogAgent.channels.mychannel.transactionCapacity = 100

启动它:(这里可以在另一个窗口启动)

bin/flume-ng agent --conf conf  --conf-file conf/hcytest1.properties --name LogAgent -Dflume.root.logger=DEBUG,console

  这里各个参数的意思不再做过多介绍

2. 启动一个KafaKa的Consumer 去消费上边配置的TopC

     

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic flume-data --from-beginning

3. 这个时候就到了测试,我们写的配置到底对不对呀?是不是?

  桌面上创建一个文件(test.txt)进去随便写几句话

 这时候cp test.txt  /tmp/logs

进入 cd /tmp/logs 下查看是否出现  .COMPLETED 的test.txt 文件

test.txt.COMPLETED

至此 flume 收集文件到kafka 完毕。

菜鸟起飞。。。。。。


 

发布了123 篇原创文章 · 获赞 47 · 访问量 12万+

猜你喜欢

转载自blog.csdn.net/u010919083/article/details/98525077