使用flume将本地文件(/opt/app/flume_test/test2024.txt)采集到kafka的first主题下

一,Flume(数据采集)是Cloundera提供的一个高可用,高可靠的,分布式的海量日志采集、聚合和传输的系统。Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。

当前Flume有两个版本Flume 0.9X版本的统称Flume-og,Flume1.X版本的统称Flume-ng。由于Flume-ng经过重大重构,与Flume-og有很大不同,使用时请注意区分。

二,Kafka是一个分布式的基于发布/订阅模式的消息队列(先进先出),主要应用于大数据实时处理领域。

消费队列 同步处理,点对点(打电话) 异步处理,订阅/发布(微信消息)

三,使用flume将本地文件(/opt/app/flume_test/test2024.txt)采集到kafka的first主题下

1,创建目录:

mkdir flume_test

cd flume_test

2,创建文件:

touch test2024.txt

如图所示:

3,①配置flume采集文件

cd apache-flume-1.7.0-bin

mkdir flumeagent

cd flumeagent

touch flume-exec-kafka.conf

vi flume-exec-kafka.conf

②配置文件内容:(agent名可以更改)

a4.sources = r4

a4.sinks = k4

a4.channels = c4

# source

a4.sources.r4.type = exec

a4.sources.r4.command = tail -f /opt/app/flume_test/test2024.txt

a4.sources.r4.shell = /bin/bash -c

# sink

a4.sinks.k4.type = org.apache.flume.sink.kafka.KafkaSink

a4.sinks.k4.kafka.bootstrap.servers = hadoop:9092

a4.sinks.k4.kafka.topic = first

a4.sinks.k4.kafka.flumeBatchSize = 20

a4.sinks.k4.kafka.producer.acks = 1

a4.sinks.k4.kafka.producer.linger.ms = 1

# channel

a4.channels.c4.type = memory

a4.channels.c4.capacity = 1000

a4.channels.c4.transactionCapacity = 100

# bind

a4.sources.r4.channels = c4

a4.sinks.k4.channel = c4

 4,启动flume

bin/flume-ng agent --conf conf/ --name4 --conf-file flumeagent/flume-exec-kafka.conf

5,①启动kafka

cd kafka_2.11-1.0.0

第一种:bin/kafka-server-start.sh -daemon 

第二种:bin/kafka-server-start.sh -daemon config/server.properties

使用jps命令查看(出现kafka和zookeeper节点,启动成功)

②查看kafka现有的主题

bin/kafka-topics.sh --zookeeper hadoop:2181 --list

③创建新的主题first

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

④启动kafka消费信息

bin/kafka-console-consumer.sh --bootstrap-server hadoop:9092 --topic first -from-beginning

6,文件内容成功采集到kafka

cd flume_test

echo "123456" >> test2024.txt

在kafka消费信息中查看文件内容

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值