Flume:
=====================
Flume是一种分布式的、可靠的、可用的服务,可以有效地收集、聚合和移动大量的日志数据。
它有一个基于流数据的简单而灵活的体系结构。
它具有健壮性和容错能力,具有可调的可靠性机制和许多故障转移和恢复机制。
它使用一个简单的可扩展数据模型,允许在线分析应用程序。
source:源
对channel而言,相当于生产者,通过接收各种格式数据发送给channel进行传输
channel:通道
相当于数据缓冲区,接收source数据发送给sink
sink:沉槽
对channel而言,相当于消费者,通过接收channel数据通过指定数据类型发送到指定位置
Event:
===============
flume传输基本单位:
head + body
flume安装:
================
1、解压
2、符号链接
3、配置环境变量并使其生效
4、修改配置文件
1)重命名flume-env.ps1.template为flume-env.ps1
2)重命名flume-env.sh.template为flume-env.sh
3)修改flume-env.sh,配置jdk目录,添加
export JAVA_HOME=/soft/jdk
5、flume 查看版本
flume-ng version
flume使用:
=========================
//flume可以将配置文件写在zk上
//flume运行命令
flume-ng agent -n a1 -f xxx.conf /flume-ng agent -n xx -f xxx.conf
agent: a1
source: s1
channel:c1
sink: n1
使用方法:
1、编写配置文件r_nc.conf
# 将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 = 8888
# 配置sink
a1.sinks.k1.type = logger
# 配置channel
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100
# 绑定channel-source, channel-sink
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
2、启动flume,指定配置文件
flume-ng agent -n a1 -f r_nc.conf
3、启动另一个会话,进行测试
nc localhost 8888
//用户手册
http://flume.apache.org/FlumeUserGuide.html
后台运行程序:
=============================================
ctrl + z :将程序放在后台运行 =====> [1]+ Stopped flume-ng agent -n a1 -f r_nc.conf
通过 bg %1 的方式将程序后台运行
通过jobs查看后台任务
通过 fg %1 的方式将程序放在前台运行
转载请注明:SuperIT » flume的配置详解