Flume安装、配置及简单示例
本文环境:
操作系统:Windows 10 家庭中文版
Flume版本:1.7.0
1. 系统需求
Flume需要JAVA1.6及以上,对Agent监控目录的读写权限。
2. Flume官网下载
访问页面:http://flume.apache.org/download.html;获取资源的位置为 _http://www.apache.org/dyn/closer.lua/flume/1.7.0/apache-flume-1.7.0-bin.tar.gz_
3. Flume安装目录及环境变量配置
安装目录:C:\software\apache-flume-1.7.0-bin
环境变量:
FLUME_HOME=C:\software\apache-flume-1.7.0-bin
CLASSPATH 中添加 %FLUME_HOME%\lib;
Path 中添加 %FLUME_HOME%\bin;
4. 简单示例
4.1 修改配置文件(没有就创建)
C:\software\apache-flume-1.7.0-bin\conf\flume.conf
在文件末端输入以下内容:
# 指定Agent的组件名称
a1.sources = r1
a1.sinks = k1
a1.channels = c1
# 指定Flume source(要监听的路径)
a1.sources.r1.type = spooldir
a1.sources.r1.spoolDir = /root/path
# 指定Flume sink
a1.sinks.k1.type = logger
# 指定Flume 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
4.2 启动flume agent
cd C:\software\apache-flume-1.7.0-bin
bin\flume-ng agent --conf conf --conf-file conf\flume.conf --name a1 -property "flume.root.logger=INFO,console"
请注意:使用下面提到的命令启动时,请确保路径正确。\n
可能会提示找不到 -Dflume.root.logger日志文件。\n
此命令现已不适用,请采用上方所述的方法。
bin\flume-ng agent --conf conf --conf-file conf\flume.conf --name a1 -Dflume.root.logger=INFO,console
资料来源:http://www.itkeyword.com/doc/7915986255218333871/any-idea-about-how-to-install-flume-with-hadoop-in-windows提供了关于在Windows环境下使用Hadoop安装Flume的一个详细的指导方案,并深入讨论了安装过程中常见的问题及其解决方案。
|**参数**|**作用**|**举例**|
|---|---|---|
|–conf 或 -c|指定配置文件夹,包含flume-env.sh和log4j的配置文件|–conf conf|
|–conf-file 或 -f|配置文件地址|–conf-file conf/flume.conf|
|–name 或 -n|agent名称|–name a1|
|-z|zookeeper连接字符串|-z zkhost:2181,zkhost1:2181|
|-p|zookeeper中的存储路径前缀|-p /flume|
4.3 写入日志内容
(1)创建文件 1.log
(2)写入 Hello, Flume! 作为测试内容
(3)copy到 flume 的监听路径下 C:\root\path\
(4)接着就可以在前一个终端看到刚刚写下的内容了,如下:
2017-08-17 10:30:11,612 (pool-3-thread-1) [INFO - org.apache.flume.client.avro.ReliableSpoolingFileEventReader.rollCurrentFile(ReliableSpoolingFileEventReader.java:433)] Preparing to move file C:\root\path\1.log to C:\root\path\1.log.COMPLETED
2017-08-17 10:30:12,260 (SinkRunner-PollingRunner-DefaultSinkProcessor) [INFO - org.apache.flume.sink.LoggerSink.process(LoggerSink.java:95)] Event: { headers:{} body: 48 65 6C 6C 6F 2C 20 46 6C 75 6D 65 21 Hello, Flume! }
至此flume已经正常运行了。
**_Flume 启动注意事项:_**
1、启动flume的 agent::
C:\software\apache-flume-1.7.0\bin>fpm flreme-gentleman --agent id:agent-1 >gentleman@localhost:2989
2、启动一个 avro-client客户端生产数据:
位于C盘软件目录中的.apache-flume-1.7.0版本的bin文件夹>该工具通过avro格式进行数据传输,并配置以下参数:使用本地主机作为HTTP服务器地址,并设置端口为41414号;将结果文件写入到指定路径c:\mytest中,并设置日志级别为DEBUG且仅输出到控制台
