上传并解压安装文件
将apache-flume-1.8.0-bin.tar.gz
上传到centos01
节点的/opt/softwares目录,并将其解压到/opt/modules/目录下:
tar -zxvf apache-flume-1.8.0-bin.tar.gz -C /opt/modules/
配置环境变量
vim /etc/profile
export FLUME_HOME=/opt/modules/apache-flume-1.8.0-bin
export PATH=$PATH:$FLUME_HOME/bin
source /etc/profile
在任意目录下执行flume-ng
命令,若出现以下内容则说明配置成功:
配置Flume
在Flume安装目录的conf文件夹中新建配置文件flume-conf.properties
:
# 单节点Flume配置例子
# 给Agent中的三个组件Source、Sink和Channel各起一个别名,a1代表为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
- a1.sources.r1.type:Source的类型。netcat表示打开指定的端口并监听数据,数据的格式必须是换行分割的文本,每行文本会被转换为event发送给Channel。
- a1.sinks.k1.type:Sink的类型。logger表示在INFO级别上记录日志数据,通常用于测试、调试目的。
- a1.channels.c1.type:Channel的类型。memory表示将event存储在内存队列中。如果对数据流的吞吐量要求比较高,可以采用memory类型;如果不允许数据丢失,不建议采用memory类型。
- a1.channels.c1.capacity:存储在Channel中的最大event数量。
- a1.channels.c1.transactionCapacity:在每次事务中,Channel从Source接收或发送给Sink的最大event数量。
启动Flume
flume-ng agent --conf c0nf --conf-file $FLUME_HOME/conf/flume-conf.properties --name a1 -Dflume.root.logger=INFO,console
这样就说明启动成功:
新开一个SSH窗口,执行以下命令,连接本地44444端口:
telnet localhost 44444
(没有telnet的话:yum install -y telnet
)
此时在新开的SSH窗口输入内容,在之前的SSH窗口就可以看到内容: