文章目录


准备环境:


1、解压 Flume 安装包

将本地安装包上传至虚拟机:

【CentOS】安装 Flume 组件_flume


解压 flume 安装包并重命名:

【CentOS】安装 Flume 组件_flume_02

返回顶部


2、配置系统环境变量

使用 root 用户设置 Flume 环境变量,并使环境变量对所有用户生效:

[root@server src]# vi /etc/profile
# 添加以下内容
# set flume environment
export FLUME_HOME=/usr/local/src/flume # Flume 安装路径
export PATH=$PATH:$FLUME_HOME/bin # 添加系统 PATH 环境变量

[root@server src]# source /etc/profile

返回顶部


3、配置 flume-env.sh

切换到 /usr/local/src/flume/conf 目录,拷贝 ​flume-env.sh.template​ 文件并重命名为 ​flume-env.sh​

[root@server src]# cd /usr/local/src/flume/conf/
[root@server conf]# ll
总用量 16
-rw-r--r--. 1 501 games 1661 5月 9 2015 flume-conf.properties.template
-rw-r--r--. 1 501 games 1110 5月 9 2015 flume-env.ps1.template
-rw-r--r--. 1 501 games 1214 5月 9 2015 flume-env.sh.template
-rw-r--r--. 1 501 games 3107 5月 9 2015 log4j.properties
[root@server conf]# cp flume-env.sh.template flume-env.sh
[root@server conf]# ll
总用量 20
-rw-r--r--. 1 501 games 1661 5月 9 2015 flume-conf.properties.template
-rw-r--r--. 1 501 games 1110 5月 9 2015 flume-env.ps1.template
-rw-r--r--. 1 root root 1214 2月 25 18:29 flume-env.sh
-rw-r--r--. 1 501 games 1214 5月 9 2015 flume-env.sh.template
-rw-r--r--. 1 501 games 3107 5月 9 2015 log4j.properties

删除 JAVA_HOME 变量前的注释,修改为 ​JDK​ 的安装路径:

[root@server ~]# vi /usr/local/src/flume/conf/flume-env.sh
# 修改 JAVA_HOME 参数值为 jdk 安装路径
export JAVA_HOME=/usr/local/src/java

返回顶部


4、验证安装

使用 flume-ng version 命令验证安装是否成功,若能够正常查询 Flume 组件版本为 1.6.0,则表示安装成功(报错点击这里)

[root@server bin]# flume-ng version
Flume 1.6.0
Source code repository: https://git-wip-us.apache.org/repos/asf/flume.git
Revision: 2561a23240a71ba20bf288c7c2cda88f443c2080
Compiled by hshreedharan on Mon May 11 11:15:44 PDT 2015
From source with

返回顶部


5、测试 flume

通过 Flume 将 Web 服务器中数据传输到 HDFS 中。
在 Flume 安装目录中创建 simple-hdfs-flume.conf 文件,插入以下内容:

a1.sources=r1
a1.sinks=k1
a1.channels=c1
a1.sources.r1.type=spooldir
a1.sources.r1.spoolDir=/usr/local/src/hadoop/logs/
a1.sources.r1.fileHeader=true
a1.sinks.k1.type=hdfs
a1.sinks.k1.hdfs.path=hdfs://server:9000/tmp/flume
a1.sinks.k1.hdfs.rollsize=1048760
a1.sinks.k1.hdfs.rollCount=0
a1.sinks.k1.hdfs.rollInterval=900
a1.sinks.k1.hdfs.useLocalTimeStamp=true
a1.channels.c1.type=file
a1.channels.c1.capacity=1000
a1.channels.c1.transactionCapacity=100
a1.sources.r1.channels = c1
a1.sinks.k1.channel =

在 hdfs 上创建 /tmp/flume 目录:

[root@server flume]# hdfs dfs -mkdir /tmp/flume

使用 flume-ng agent 命令加载 ​simple-hdfs-flume.conf​ 配置信息,启动 flume 传输数据:

[root@server flume]# flume-ng agent --conf-file simple-hdfs-flume.conf --name a1

查看 Flume 传输到 HDFS 的文件,若能查看到 HDFS 上 /tmp/flume 目录有传输的数据文件,则表示数据传输成功:

[root@server flume]# hdfs dfs -ls /tmp/flume
Found 113 items
-rw-r--r-- 3 root supergroup 1606 2022-02-25 18:59 /tmp/flume/FlumeData.1645786755946
-rw-r--r-- 3 root supergroup 1566 2022-02-25 18:59 /tmp/flume/FlumeData.1645786755947
-rw-r--r-- 3 root supergroup 1676 2022-02-25 18:59 /tmp/flume/FlumeData.1645786755948
-rw-r--r-- 3 root supergroup 2949 2022-02-25 18:59 /tmp/flume/FlumeData.1645786755949
-rw-r--r-- 3 root supergroup 2163 2022-02-25 18:59 /tmp/flume/FlumeData.1645786755950
-rw-r--r-- 3 root supergroup 2163 2022-02-25 18:59 /tmp/flume/FlumeData.1645786755951
-rw-r--r-- 3 root supergroup 2163 2022-02-25 18:59 /tmp/flume/FlumeData.1645786755952
................

返回顶部