HDP 集群中flume与kafka的整合

首先保证flume与kafka正确安装并启动,这个比较简单,直接在ambari中添加新服务即可,不多赘述。

配置flume

新建一配置文件kafka.conf, 编辑,追加一下内容。

#扫描指定文件配置
agent.sources = s1
agent.channels = c1
agent.sinks = k1
agent.sources.s1.type=exec
agent.sources.s1.command=tail -F /root/test.log
agent.sources.s1.channels=c1
agent.channels.c1.type=memory
agent.channels.c1.capacity=10000
agent.channels.c1.transactionCapacity=100
#设置Kafka接收器
agent.sinks.k1.type= org.apache.flume.sink.kafka.KafkaSink
#设置Kafka的broker地址和端口号
agent.sinks.k1.brokerList=10.0.13.72:6667
#设置Kafka的Topic
agent.sinks.k1.topic=test
#设置序列化方式
agent.sinks.k1.serializer.class=kafka.serializer.StringEncoder
agent.sinks.k1.channel=c1

可以看到,flume是搜集/root/test.log里面追加的内容。所以保证/root/test.log文件存在。HDP 集群kafka broker的默认端口是6667,而不是9092

kafka配置

通过flume的配置,连接kafka的topic是test。

新建一个名为test的topic。

bin/kafka-topics.sh –create –zookeeper hortonworks02:2181,hortonworks03:2181,hortonworks04:2181 –replication-factor 1 –partitions 1 –topic test

查看一下。

bin/kafka-topics.sh –list –zookeeper hortonworks02:2181,hortonworks03:2181,hortonworks04:2181

然后创建个消费者来消费test里面的数据。bootstrap-server这里填主机名或者IP,而不是localhost。

bin/kafka-console-consumer.sh –bootstrap-server Hortonworks02:6667 –topic test –from-beginning

启动flume

bin/flume-ng agent –conf-file conf/kafka.conf -c conf/ –name agent -Dflume.root.logger=DEBUG,console

追加内容到test.log

编辑test.log,随意添加一些信息

#vim test.log

hhhhh
fsoifhdisfhsif
this is a message

kafka中已经显示出test.log新加的东西(只看最后三行即可,上面的是以前topic里面的信息)

OK!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值