1、下载Flume
官网
本人安装环境:
jdk1.8
apache-flume-1.9.0-bin.tar.gz
2、解压安装包并设置环境变量
cd /opt
tar -zxvf apache-flume-1.9.0-bin.tar.gz
vim /etc/profile
#flume
export FLUME_HOME=/opt/apache-flume-1.9.0-bin
export PATH=$FLUME_HOME/bin:$PATH
source /etc/profile
echo $FLUME_HOME
3、设置flume-env.sh配置文件
4、需求:从指定网络端口采集数据输出到控制台
a、 配置采集方案(在flume的conf目录下新建一个文件)
vim example.conf
#定义这个agent中各组件的名字
a1.sources = r1
a1.sinks = k1
a1.channels = c1
#描述和配置source组件:r1
# netcat类型用来监听端口数据源
a1.sources.r1.type = netcat
a1.sources.r1.bind = hadoop01
a1.sources.r1.port = 44444
#描述和配置sink组件:k1
a1.sinks.k1.type = logger
#描述和配置channel组件,
a1.channels.c1.type = memory
#绑定source 和sink 到channel
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
b、 启动agent去采集数据
./flume-ng agent --name a1 --conf $FLUME_HOME/conf --conf-file $FLUME_HOME/conf/example.conf -Dflume.root.logger=INFO,console
解释2:
-n (–name): 自定义的flume配置文件中agent的name
-c (或–conf) : flume自身所需的conf文件路径
-f (–conf-file) : 自定义的flume配置文件,也就是采集方案文件
c、测试
先要往agent采集监听的端口上发送数据,让agent有数据可采。
随便在一个能跟agent节点联网的机器上,也可以在本机:telnet agent-hostname port (如:telnet localhost 44444)
注意:如果telnet还没有安装,则需要执行yum install -y telnet进行安装
这里另连接hadoop01:
telnet hadoop01 44444
控制台输出数据: