Apache-Flume1.9.0安装

1 Flume官方下载地址

(1)Flume 官网地址:https://flume.apache.org/
(2)文档查看地址:https://flume.apache.org/documentation.html
(3)下载地址:https://flume.apache.org/download.html

2 安装部署

(1)将 apache-flume-1.9.0-bin.tar.gz 解压到 linux 的/opt/soft/目录下

tar -zxvf apache-flume-1.9.0-bin.tar.gz -C /opt/soft/
mv apache-flume-1.9.0-bin/ flume-1.9.0

(2)将 lib 文件夹下的 guava-11.0.2.jar 删除以兼容 Hadoop 3.3.3

rm /opt/soft/flume-1.9.0/lib/guava-11.0.2.jar

3 Flume官方示例

(1) 示例需求:
使用 Flume 监听一个端口,收集该端口数据,并打印到控制台。

(2) 实现步骤
在 flume 目录下创建 job 文件夹并进入 job 文件夹。

[root@node01 flume-1.9.0]# mkdir job
[root@node01 flume-1.9.0]# cd job/

在 job 文件夹下创建 Flume Agent 配置文件 flume-netcat-logger.conf。

vim flume-netcat-logger.conf

添加内容如下:

# Name the components on this agent 
# a1:表示agent的名称
# r1:表示a1的Source的名称
# k1:表示a1的Sink的名称
# c1:表示a1的Channel的名称
a1.sources = r1 
a1.sinks = k1 
a1.channels = c1 

# Describe/configure the source 
# 表示a1的输入源类型为netcat端口类型
# 表示a1的监听的主机
# 表示a1的监听的端口号
a1.sources.r1.type = netcat 
a1.sources.r1.bind = localhost 
a1.sources.r1.port = 8888

# Describe the sink 
# 表示a1的输出目的地是控制台logger类型
a1.sinks.k1.type = logger 

# Use a channel which buffers events in memory 
# 表示a1的channel类型是memory内存型
# 表示a1的channel总容量1000个event
# 表示a1的channel传输时收集到了100条event以后再去提交事务
a1.channels.c1.type = memory 
a1.channels.c1.capacity = 1000 
a1.channels.c1.transactionCapacity = 100

# Bind the source and sink to the channel 
# 表示将r1和c1连接
# 表示将k1和c1连接
a1.sources.r1.channels = c1 
a1.sinks.k1.channel = c1 

注:配置文件来源于官方手册 http://flume.apache.org/FlumeUserGuide.html

(3) 先开启 flume 监听端口
第一种方式:

bin/flume-ng agent --conf conf/ --name a1 --conf-file job/flume-netcat-logger.conf -Dflume.root.logger=INFO,console

第二种方式:

bin/flume-ng agent -c conf/ -n a1 -f job/flume-netcat-logger.conf -Dflume.root.logger=INFO,console

参数说明:
–conf/-c:表示配置文件存储在 conf/目录
–name/-n:表示给 agent 起名为 a1
–conf-file/-f:flume 本次启动读取的配置文件是在 job 文件夹下的 flume-telnet.conf 文件。
-Dflume.root.logger=INFO,console :-D 表示 flume 运行时动态修改flume.root.logger 参数属性值,并将控制台日志打印级别设置为 INFO 级别。日志级别包括:log、info、warn、error。

(4) 使用 netcat 工具向本机的 8888端口发送内容

[root@node01 job]# yum -y install nc

CentOs7 nc安装问题参考:https://blog.csdn.net/weixin_43558205/article/details/113835630

[root@node01 job]# nc localhost 8888
hello
OK
flume
OK

(5) 在 Flume 监听页面观察接收数据情况

[root@node01 flume-1.9.0]# bin/flume-ng agent --conf conf/ --name a1 --conf-file job/flume-netcat-logger.conf -Dflume.root.logger=INFO,console
...
2022-06-08 15:16:07,260 (lifecycleSupervisor-1-0) [INFO - org.apache.flume.source.NetcatSource.start(NetcatSource.java:166)] Created serverSocket:sun.nio.ch.ServerSocketChannelImpl[/127.0.0.1:8888]
2022-06-08 15:17:41,352 (SinkRunner-PollingRunner-DefaultSinkProcessor) [INFO - org.apache.flume.sink.LoggerSink.process(LoggerSink.java:95)] Event: { headers:{} body: 68 65 6C 6C 6F                                  hello }
2022-06-08 15:17:50,370 (SinkRunner-PollingRunner-DefaultSinkProcessor) [INFO - org.apache.flume.sink.LoggerSink.process(LoggerSink.java:95)] Event: { headers:{} body: 66 6C 75 6D 65                                  flume }

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值