Flume的运行需要Java环境的支持,因此,需要在Windows系统中安装JDK。请参照第2章内容完成JDK的安装。
访问Flume官网(http://flume.apache.org/download.html),下载Flume安装文件apache-flume-1.9.0-bin.tar.gz。把安装文件解压缩到Windows系统的“C:\”目录下,然后,执行如下命令测试是否安装成功:
> cd c:\apache-flume-1.9.0-bin\bin
> flume-ng version
如果能够返回类似如下的信息,则表示启动成功:
Flume 1.9.0
Source code repository: https://git-wip-us.apache.org/repos/asf/flume.git
Revision: d4fcab4f501d41597bc616921329a4339f73585e
Compiled by fszabo on Mon Dec 17 20:45:25 CET 2018
From source with checksum 35db629a3bda49d23e9b3690c80737f9
1.实例1:采集NetCat数据显示到控制台
这里给出一个简单的实例,假设Source为NetCat类型,使用Telnet连接Source写入数据,产生日志数据输出到控制台(屏幕)。下面首先介绍操作系统Windows7中的操作方法,然后再介绍Windows10中的操作方法。
为了顺利完成后面的测试,首先开启Windows7的telnet服务。具体方法是,打开“控制面板”,进入“默认程序”,在出现的界面的左侧底部点击“程序和功能”,再在出现的界面的左侧顶部点击“打开或关闭Windows功能”,会出现如图5-2所示的界面,把“Telnet服务器”和“Telnet客户端”都选中,然后点击“确定”按钮。
# 设置Agent上的各个组件名称
a1.sources = r1
a1.sinks = k1
a1.channels = c1
# 配置Source
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = 44444
# 配置Sink
a1.sinks.k1.type = logger
# 配置Channel
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100
# 把Source和Sink绑定到Channel上
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
在这个配置文件中,设置了Source类型为netcat,Channel类型为memory,Sink的类型为logger。
然后,新建一个cmd窗口(称为“Flume窗口”),并执行如下命令:
> cd c:\apache-flume-1.9.0-bin
> .\bin\flume-ng agent --conf .\conf --conf-file .\conf\example.conf --name a1 -property flume.root.logger=INFO,console
再新建一个cmd窗口,并执行如下命令:
> telnet localhost 44444
这时就可以从键盘输入一些英文单词,比如“Hello World”,切换到Flume窗口,就可以看到屏幕上显示了“Hello World”(如图5-3所示),说明Flume成功地接收到了信息