• Java1.6以上版本
  • Flume1.8.0安装包

安装环境

上传并解压

1
tar -zxvf apache-flume-1.8.0-bin.tar.gz -C /export/servers/

重命名Flume

1
mv apache-flume-1.8.0-bin/ flume1.8

配置文件

①flume-env.sh 环境变量配置

进入 conf 目录下打开flume.env.sh,把JAVA_HOME的注释去掉,并修改成你的 jdk 路径

1
2
3
vi flume-env.sh

export JAVA_HOME=/export/servers/jdk1.8

没有flume.env.sh的复制文件

cp flume-env.sh.template flume-env.sh

配置环境变量

已安装hadoop、hive、zookeeper

1
2
3
4
5
6
7
8
vi /etc/profile  #找不到命令解决方法:export PATH=/usr/sbin

export JAVA_HOME=/export/servers/jdk
export HADOOP_HOME=/export/servers/hadoop
export HIVE_HOME=/export/servers/hive1.2
export ZK_HOME=/export/servers/zookeeper3.4
export FLUME_HOME=/export/servers/flume1.8
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin:$ZK_HOME/bin:$FLUME_HOME/bin

记得. /etc/porfile刷新配置文件

使用version检测是否安装成功

1
flume-ng version

Flume入门使用

配置Flume采集方案

在flume的conf目录下创建一个vi netcat-logger.conf文件

vi netcat-logger.conf

localhost是你的主机名,localhost同样可以使用,如果报错可以尝试一下修改localhost

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 示例配置方案:单节点Flume配置
# 定义Agent中各个组件名称
# 其中该Agent名为a1,source名为r1,sinks名为k1,channels名为c1
a1.sources = r1
a1.sinks = k1
a1.channels = c1
# 描述并配置sources组件(数据源类型、采集数据源应用地址)
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = 44444
# 描述并配置sinks组件(采集后数据流动的类型)
a1.sinks.k1.type = logger
# 描述并配置channels(缓存类型、内存缓存大小和事务缓存大小)
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

使用指定采集方案启动Flume

返回flume1.8目录下运行

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

出现127..0.0.1:4444代表成功

安装Telnet

已安装可跳过

1
yum -y install telnet

Flume采集数据测试

打开新的会话窗口输入以下指令

1
telnet 192.168.219.199 44444

遇到的问题

①vi flume-conf.properties
-bash: vi: 未找到命令

原因:

环境变量PATH被修改了,是刚刚操作的修改影响了PATH

解决办法

1、执行以下命令:当前生效

1
export PATH=/bin:/usr/bin:PATH

该方法只能暂时修改当前的path环境,如果退出后重连会继续失效.

成功!

该文章Mec所著,如有错误请联系作者邮箱更改