`

什么是Flume

 
阅读更多
   Flume最早是Cloudera提供的日志收集系统,目前是Apache下的一个孵化项目,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力  Flume提供了从console(控制台)、RPC(Thrift-RPC)、text(文件)、tail(UNIX tail)、syslog(syslog日志系统,支持TCP和UDP等2种模式),exec(命令执行)等数据源上收集数据的能力。
   Flume采用了多Master的方式。为了保证配置数据的一致性,Flume引入了ZooKeeper,用于保存配置数据,ZooKeeper本身可保证配置数据的一致性和高可用,另外,在配置数据发生变化时,ZooKeeper可以通知Flume Master节点。Flume Master间使用gossip协议同步数据。

Flume支持可靠性、伸缩性、配置一致性、扩展性。
  可靠性:Flume提供3中数据可靠性选项,包括End-to-end、Store on failure和Best effort。其中End-to-end使用了磁盘日志和接受端Ack的方式,保证Flume接受到的数据会最终到达目的。Store on failure在目的不可用的时候,数据会保持在本地硬盘。和End-to-end不同的是,如果是进程出现问题,Store on failure可能会丢失部分数据。Best effort不做任何QoS保证。
   伸缩性:Flume的3大组件:collector、master和storage tier都是可伸缩的。需要注意的是,Flume中对事件的处理不需要带状态,它的伸缩性可以很容易实现。
   配置一致性:Flume利用ZooKeeper和gossip,保证配置数据的一致性、高可用。同时,多Master,保证Master可以管理大量的节点。
   扩展性:基于Java,用户可以为Flume添加各种新的功能,如通过继承Source,用户可以实现自己的数据接入方式,实现Sink的子类,用户可以将数据写往特定目标,同时,通过SinkDecorator,用户可以对数据进行一定的预处理。

Master : 用于管理数据流的配置。 
Agent :负责收集数据。
Collector : 用于对数据进行聚合。
Source : 数据源。每一个Agent,Collector都可以有一个数据源 。
Sink : 输出端。每一个Agent,Collector都可以有一个输出端。

Flume Master : 可以配置多Master,利用Zookeeper 来实现HA。
Flume node : node 对应俩种角色Agent,Collector 当集群比较大     规模需要配置角色。
分享到:
评论
2 楼 javalogo 2015-05-08  
[b][i][u]
引用
[list]
[*][*][*]
[flash=200,200][url][/url][/flash]
[/list]
[/u][/i][/b]
1 楼 developerinit 2013-10-11  
很好,基本上介绍了

相关推荐

    flume介绍与原理

    本文来自于博客园,文章主要从Flume的应用场景以及Flume的结构和组件,简单的介绍了Flume,希望对大家有帮助。flume是由cloudera软件公司产出的可分布式日志收集系统,后...什么是flume?apacheFlume是一个从可以收集例如

    Flume1.6.0入门:安装、部署、及flume的案例

    Flume1.6.0入门:安装、部署、及flume的案例

    让你快速认识flume及安装和使用flume1 5传输数据 日志 到hadoop2 2 文档

    1 flume 是什么 这里简单介绍一下 它是 Cloudera 的一个产品 2 flume 是干什么的 收集日志的 3 flume 如何搜集日志 我们把 flume 比作情报人员 (1)搜集信息 (2)获取记忆信息 (3)传递报告间谍信息">让你快速...

    数据采集之Flume.xmind

    提示 学习Flume必须明白这几个概念,Event英文直译是事件,但是在Flume里表示数据传输的一个最小单位(被Flume收集的一条条日志又或者一个个的二进制文件,不管你在外面叫什么,进入Flume之后它就叫event)。...

    flume自学文档.pdf

    Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可...

    Flume构建高可用、可扩展的海量日志采集系统

    Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可...

    flume-ng安装

    flume-ng安装

    apache-flume-1.8.0

    flume官网下载太慢,请从这里下载,次文件是官方网站的1.8版本,也就是支持jdk1.8的,不支持jdk1.7,如果要支持jdk1.7的,请下载我的资源里面也有,flume1.7,

    尚硅谷大数据技术之Flume

    尚硅谷大数据技术之Flume

    Flume+kafka+Storm整合

    Flume+kafka+Storm整合 示例简介: 以下为三个组建整合,这里只做操作也演示结果,原理性方面大家多学习基础。 流程顺序是flume获取telnet数据,将接收到的数据发送至kafak,kafka作为Storm的spout,Storm进行有向无...

    Flume集群环境搭建,flume监控

    flume集群环境搭建,详细讲解,图文并茂,包括flume信息监控和众多文章链接

    47_Flume、Logstash、Filebeat调研报告

    基于flume+kafka+实时计算引擎(storm,spark,flink)的实时计算框架目前是比较火的一个分支,在实时数据采集组件中flume扮演着极为重要角色,logtash是ELK的重要组件部分,filebeat也是一个实时采集工具;

    flume支持RabbitMQ插件

    flume支持RabbitMQ插件

    flume-ng-elasticsearch6-sink.zip

    flume1.9采集数据入存入elasticsearch6.2.4,flume1.9本身只支持低版本的elasticsearch,基于apache-flume-1.9.0-src的flume-ng-sinks/flume-ng-elasticsearch-sink源码修改,支持es6.2.4,打的包,直接替换flume/...

    Flume-ng资料合集

    Flume NG是Cloudera提供的一个分布式、可靠、可用的系统,它能够将不同数据源的海量日志数据进行高效收集、聚合、移动,最后存储到一个中心化数据存储系统中。由原来的Flume OG到现在的Flume NG,进行了架构重构,...

    flume-ng-1.6.0-cdh5.13.2

    CDH版本的flume Flume是Cloudera提供的一个高可用的,高可靠...当前Flume有两个版本Flume 0.9X版本的统称Flume-og,Flume1.X版本的统称Flume-ng。由于Flume-ng经过重大重构,与Flume-og有很大不同,使用时请注意区分。

    大数据Ambari之flume集成编译好的源码包

    这是已经编译好的flume包,可以直接用于集成在Ambari上

    Flume1.7.0用户指南

    Flume1.7.0用户指南

    springboot_log4j2_flume

    Log4j直接发送数据到Flume + Kafka (方式一) 通过flume收集系统日记, 收集的方式通常采用以下. 系统logs直接发送给flume系统, 本文主要记录种方式进行说明. 文章链接,请看:...

    flume-ftp-source 相关jar包

    由于flume官方并未提供ftp,source的支持; 因此想使用ftp文件服务器的资源作为数据的来源就需要自定义ftpsource,根据github:https://github.com/keedio/flume-ftp-source,提示下载相关jar,再此作为记录。

Global site tag (gtag.js) - Google Analytics