大数据集群搭建(12)——Flume和Kafka的整合

Flume和Kafka的整合

1.配置flume,在flume的conf目录下新建文件(flume_kafka.conf)并配置。

 ########################################################

##主要作用是监听目录中的新增数据,采集到数据之后,输出到kafka

##    注意:Flume agent的运行,主要就是配置source channel sink

##  下面的a1就是agent的代号,source叫r1 channel叫c1 sink叫k1

#########################################################

a1.sources = r1

a1.sinks = k1

a1.channels = c1

 

#具体定义source

a1.sources.r1.type = spooldir

#先创建此目录,保证里面空的

a1.sources.r1.spoolDir = /logs

 

#sink到kafka里面

a1.sinks.k1.channel = c1

a1.sinks.k1.type =org.apache.flume.sink.kafka.KafkaSink

#设置Kafka的Topic

a1.sinks.k1.kafka.topic = test3

#设置Kafka的broker地址和端口号

a1.sinks.k1.kafka.bootstrap.servers = master:9092,slaver1:9092,slaver2:9092

#配置批量提交的数量

a1.sinks.k1.kafka.flumeBatchSize = 20

a1.sinks.k1.kafka.producer.acks = 1

a1.sinks.k1.kafka.producer.linger.ms = 1

a1.sinks.ki.kafka.producer.compression.type= snappy

 

#对于channel的配置描述 使用文件做数据的临时缓存 这种的安全性要高

a1.channels.c1.type = file

a1.channels.c1.checkpointDir = /home/uplooking/data/flume/checkpoint

a1.channels.c1.dataDirs = /home/uplooking/data/flume/data

 

#通过channel c1将source r1和sink k1关联起来

a1.sources.r1.channels = c1

a1.sinks.k1.channel = c1

2.启动

2.1.启动Zookeeper(3台)

[root@master bin]# ./zkServer.sh start

2.2.再启动kafka(3台)

./bin/kafka-server-start.sh -daemon config/server.properties &

2.3.如果没有主题创建主题

./bin/kafka-topics.sh --create --zookeeper master:2181,slaver1:2181,slaver2:2181 --replication-factor 3 --partitions 3 --topic 主题名

2.4.启动一个该主题的消费者

./bin/kafka-console-consumer.sh --bootstrap-server master:9092, slaver1:9092, slaver2:9092 --from-beginning --topic 主题名

2.5.启动flume

bin/flume-ng agent -n a1 -c conf -f conf/文件名 -Dflume.root.logger=INFO,console

2.6.向flume监听目录里面添加内容,观察消费者

 

你可能感兴趣的:(大数据集群搭建(12)——Flume和Kafka的整合)