简介
Apache Flume 是一个分布式、可靠、高可用的服务,用于有效地收集、聚合和移动大规模数据。Flume 主要用于大数据环境下的日志收集和数据传输,能够帮助用户实现数据流的可靠传输和集中处理。
flume安装配置
解压安装包
tar -zxvf apache-flume-1.9.0-bin.tar.gz -C /opt/module
配置环境变量
vi /etc/profile
export FLUME_HOME=/opt/module/apache-flume-1.9.0-bin
export PATH=$PATH:$FLUME_HOME/bin
#刷新环境变量
source /etc/profile
配置flume
进入到解压后的flume目录,找到conf文件夹。找到 flume-env.sh.template
文件,将其复制并重命名为 flume-env.sh
cd /opt/module/apache-flume-1.9.0-bin/conf
cp flume-env.sh.template flume-env.sh
编辑 flume-env.sh
文件,设置 JAVA_HOME
为系统中 Java 的安装路径:
export JAVA_HOME=/path/to/your/java
配置Flume Agent
在conf
文件夹中。创建一个新的Flume配置文件,例如my-flume-agent.conf
。编辑这个文件并添加相应的Flume Agent配置。
a1.sources = r1
a1.sinks = k1
a1.channels = c1
a1.sources.r1.type = exec
a1.sources.r1.command = tail -F /opt/module/hadoop-3.1.3/logs/hadoop-root-namenode-master.log
a1.sinks.k1.type = hdfs
a1.sinks.k1.hdfs.path = hdfs://master:9000/tmp/flume/%Y%m%d
a1.sinks.k1.hdfs.filePrefix = log-
a1.sinks.k1.hdfs.fileType = DataStream
a1.sinks.k1.hdfs.useLocalTimeStamp = true
a1.channels.c1.type = memory
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
在HDFS上创建目录
hdfs dfs -mkdir -p /tmp/flume
运行Flume Agent
flume-ng agent --conf conf/ --conf-file /opt/flume/conf/my-flume-agent.conf --name a1 -Dflume.root.logger=INFO,console
or:
flume-ng agent --conf conf/ --conf-file /opt/flume/conf/my-flume-agent.conf --name a1 -Dflume.root.logger=DEBUG,console
查看生成的文件
hdfs dfs -ls /tmp/flume