3月15日(flume收集数据到kafka,包含大坑)

1.  配置flume .conf文件收集数据到kafka

 


f1.sources = r1
f1.channels = c1
f1.sinks = k1

#define sources
f1.sources.r1.type = spooldir
f1.sources.r1.spoolDir = /opt/module/flume-1.7.0/jddata

#define channels
f1.channels.c1.type = file
f1.channels.c1.checkpointDir = /opt/module/flume-1.7.0/checkpoint
f1.channels.c1.dataDirs = /opt/module/flume-1.7.0/data

#define sink
f1.sinks.k1.type = org.apache.flume.sink.kafka.KafkaSink
f1.sinks.k1.kafka.bootstrap.servers = hadoop102:9092
f1.sinks.k1.kafka.topic = jd
f1.sinks.k1.kafka.flumeBatchSize = 20
f1.sinks.k1.kafka.producer.acks = 1
f1.sinks.k1.kafka.producer.linger.ms = 1

#bind sources and sink to channel
f1.sources.r1.channels = c1
f1.sinks.k1.channel = c1

2.  然后启动kafka,并创建对应的topic

bin/kafka-server-start.sh -daemon config/server.properties
bin/kafka-topics.sh --zookeeper hadoop102:2181 --list

bin/kafka-topics.sh --zookeeper hadoop102:2181 --create --replication-factor 1 --partitions 1 --topic jd

3.  启动flume

 bin/flume-ng agent --name f1 --conf conf --conf-file conf/file-kafka-jd.conf -Dflume.root.logg=INFO,LOGFILE

当flume最新的log文件中有xx.COMPLETED 代表数据传递成功

 

4.  Kafka获取消费数据

 bin/kafka-console-consumer.sh --topic 'jd' --zookeeper 'hadoop102:2181' --from-beginning  --skip-message-on-error

 

 

 

 

 

最需要注意的是conf文件的编写,因为有很多属性值,参数各不相同,我的坑是在选择了sources.r1.type = spooldir  那么对应的地址应该是一个文件夹,但是尤其注意该文件夹里面不在包含其他文件夹,我就是地址写错,里面还有文件夹,数据传了三个小时传不过去。

posted @ 2022-03-15 22:51  不咬牙  阅读(157)  评论(0)    收藏  举报