flume简介和安装
2017-08-09 10:42
155 查看
【译文】:Flume是一种分布式、可靠和可用的服务,可以有效地收集、聚集和移动大量的日志数据。它有一个基于流数据流的简单而灵活的体系结构。它具有可调可靠性机制和许多故障转移和恢复机制的健壮性和容错能力。它使用一个简单的可扩展的数据模型,允许在线分析应用程序。
flume的核心概念模型如上图。flume在web server和hdfs之间担任代理角色,source端作为输入负责与web server交互监控收集数据,sink端作为输出负责向hdfs写数据。channel作为管道连接source和sink供两者传输数据。
Source:
在Avro端口上监听并接收来自外部Avro客户流的事件;属于远程调用的方式
Exec
Source:
基于linux命令,将该命令的输出作为source
Spooling
Directory Source :
这个Source将监视指定目录是否有新文件,如果有新文件的话,就解析这个新文件;在文件的内容所有的都读取 到Channel之后,Spooling Directory Source会重名或者是删除该文件以表示文件已经读取完成。
1.文件在读入spooling目录后不允许再次写;
2.文件不允许重复使用;
Kafka
Source: 一种实时框架
HDFS Sink
Hive Sink
Logger Sink
Kafka Sink
JDBC:数据库存储
Kafka
命令flume-ng version验证安装结果
flume的核心概念模型如上图。flume在web server和hdfs之间担任代理角色,source端作为输入负责与web server交互监控收集数据,sink端作为输出负责向hdfs写数据。channel作为管道连接source和sink供两者传输数据。
Source常用类型
AvroSource:
在Avro端口上监听并接收来自外部Avro客户流的事件;属于远程调用的方式
Exec
Source:
基于linux命令,将该命令的输出作为source
Spooling
Directory Source :
这个Source将监视指定目录是否有新文件,如果有新文件的话,就解析这个新文件;在文件的内容所有的都读取 到Channel之后,Spooling Directory Source会重名或者是删除该文件以表示文件已经读取完成。
1.文件在读入spooling目录后不允许再次写;
2.文件不允许重复使用;
Kafka
Source: 一种实时框架
Sink常用类型
Avro SinkHDFS Sink
Hive Sink
Logger Sink
Kafka Sink
Channels常用类型
Memory: 内存存储JDBC:数据库存储
Kafka
示例配置
a1.sources = r1 a1.channels = c1 a1.sink = k1 # Describe/configure the source:exec source a1.sources.r1.type = exec a1.sources.r1.command = tail -F /var/log/secure # Describe the sink :hdfs sink a1.sinks.k1.type = hdfs a1.sinks.k1.hdfs.path = /flume/events/%y-%m-%d/%H%M/%S a1.sinks.k1.hdfs.filePrefix = events- a1.sinks.k1.hdfs.round = true a1.sinks.k1.hdfs.roundValue = 10 a1.sinks.k1.hdfs.roundUnit = minute a1.sinks.k1.hdfs.rollInterval = 30 a1.sinks.k1.hdfs.rollSize = 30 a1.sinks.k1.hdfs.rollCount = 30 a1.sinks.k1.hdfs.idleTimeout = 3 # Use a channel which buffers events in memory: memory channels a1.channels.c1.type = memory a1.channels.c1.capacity = 10000 a1.channels.c1.transactionCapacity = 10000 a1.channels.c1.byteCapacityBufferPercentage = 20 a1.channels.c1.byteCapacity = 800000 # Bind the source and sink to the channel a1.sources.r1.channels = c1 a1.sinks.k1.channel = c1
安装
flume安装很简单,上传压缩包后解压然后修改conf/flume-env.sh中的JAVA_HOME即可。安装成功后最好配置一下flume环境变量;命令flume-ng version验证安装结果
相关文章推荐
- Flume简介及安装
- Flume简介与使用(一)——Flume安装与配置
- flume1.5.2安装与简介
- Flume简介与使用(三)——Kafka Sink消费数据之Kafka安装
- 日志抽取框架 flume 简介与安装配置
- Oozie的简介及安装部署
- Python简介与安装
- Web简介和Tomcat安装
- redis简介以及linux上的安装(一)
- VMtools简介与安装
- apache-flume-1.7.x配置安装
- SpagoBI系列----------[01]SpagoBI简介及安装步骤
- gearman简介及安装使用
- (1)Redis简介与简单安装
- Gradle笔记——Gradle的简介与安装
- pygame的简介与安装
- LVM(Logical Volume Manager)逻辑卷管理 - 简介、历史、术语、安装、命令、实例、故障排除
- Samba-2.2.0版本特色及安装简介
- Nutch搜索引擎Solr简介及安装
- Scrapy简明教程(一)——简介与安装