很久没接触flume了,刚掀开官网一看,发现flume已然不是以前的那个flume了,其实早在flume技术群就听到NG这个字眼,以前没特注意,今天做了些对比,发现flume确实有了投胎换骨般的改变。首先介绍下Flume OG & Flume NG这两个概念
Flume OG:Flume original generation 即Flume 0.9.x版本
Flume NG:Flume next generation ,即Flume 1.x版本
对于Flume OG ,可以说他是一个分布式日志收集系统,有Mater概念,依赖于zookeeper,以下是其架构图
Agent用于采集数据,agent是flume中产生数据流的地方,同时,agent会将产生的数据流传输到collector。对应的,collector用于对数据进行聚合,往往会产生一个更大的流。
而对于Flume NG,它摒弃了Master和zookeeper,collector也没有了,web配置台也没有了,只剩下source,sink和channel,此时一个Agent的概念包括source,channel和sink,完全由一个分布式系统变成了传输工具。不同机器之间的数据传输不再是OG那样由agent->collector,而是由一个Agent端的sink流向另一个agent的source。其新的架构如下
Flume NG is a huge departure from Flume OG (original generation, or "original gangsta," if you prefer) in its implementation although many of the original concepts are the same. If you're already familiar with Flume, here's what you need to know.
- You still have sources and sinks and they still do the same thing. They are now connected by channels.
- Channels are pluggable and dictate durability. Flume NG ships with an in-memory channel for fast, but non-durable event delivery and a JDBC-based channel for durable event delivery. We have recently added a file-based durable channel too.
- There's no more logical or physical nodes. We call all physical nodes agents and agents can run zero or more sources and sinks.
- There's no master and no ZooKeeper dependency anymore. At this time, Flume runs with a simple file-based configuration system.
- Just about everything is a plugin, some end user facing, some for tool and system developers. (Specifically, sources, sinks, channels, configuration providers, lifecycle management policies, input and output formats, compression, source and sink channel adapters, and the kitchen sink.)
- Tons of things are not yet implemented. Please file JIRAs and / or vote for features you deem important.
相关推荐
由原来的Flume OG到现在的Flume NG,进行了架构重构,并且现在NG版本完全不兼容原来的OG版本。经过架构重构后,Flume NG更像是一个轻量的小工具,非常简单,容易适应各种方式日志收集,并支持failover和负载均衡。
CDH版本的flume Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据...由于Flume-ng经过重大重构,与Flume-og有很大不同,使用时请注意区分。
在文档部分中提到的“架构”是一个关键的知识点,它包括了从旧版Flume(FlumeOG)继承和巩固的一些概念,以及通过引入新的特性来简化架构。FlumeNG的高阶架构通过一系列的注释、图表、概览和数据传输语义来详细阐述...
Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集...由于Flume-ng经过重大重构,与Flume-og有很大不同,使用时请注意区分。
FlumeNG相比FlumeOG进行了代码精简和架构优化,更符合现代大数据处理的要求,建议使用FlumeNG。 #### 1.4 主要作用 Flume主要用于实时地读取服务器本地磁盘上的数据,并将其写入到Hadoop的分布式文件系统(HDFS)中...
Flume的初始版本称为FlumeOG,它为日志收集提供了基础支持,但由于代码架构等问题,Cloudera推出了重构后的FlumeNG版本,后者解决了FlumeOG的缺陷,并提升了系统性能和可维护性。FlumeOG的设计目标着重于可靠性、可...
Flume 的初始版本被称为 FlumeOG(Original Generation),随着功能的不断扩展和完善,Flume 在 2011 年经历了一次重大的重构,新版本被称为 FlumeNG(Next Generation),并正式纳入 Apache 项目。 **Flume 的特点...
Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集...由于Flume-ng经过重大重构,与Flume-og有很大不同,使用时请注意区分。
为了实现这一目标,Flume NG 不承诺与 Flume OG 保持向后兼容性。目前,项目团队正在积极寻求来自感兴趣用户的反馈,以便评估 Flume NG 的正确性、易用性和与其他系统的潜在集成能力。 #### Flume NG有哪些变化? ...
Flume从1.5.0版本开始,重构了其内部架构,核心组件、配置以及代码架构都进行了重大改动,这个新版本被称为Flume NG(Next Generation),即Flume的新一代版本,用以替代了原来的Flume OG(Original Generation)。...
Flume的稳定版本是Flume NG,而早期版本被称作Flume OG。 在Flume系统中,数据流是由不同组件协同工作来实现的。主要组件包括Master、Collector和Agent。Master充当集群的控制器,负责整个集群的配置和通信管理。...
从FlumeOG发展到现在的FlumeNG,其架构进行了重构,新版本完全不兼容旧版。Flume使用Java编写,需要Java 1.6或更高版本才能运行。FlumeNG的版本1.6是Cloudera版本,它更像一个轻量级工具,简便易用,支持故障转移...
Flume OG 是早期版本,由 agent、collector 和 master 组成,而 Flume NG(下一代)简化了架构,仅包含 Agent 和 Client 组件,代码更简洁,架构更清晰。Flume NG 更加轻量级,适应性强,支持故障切换和负载均衡。 ...
2. **Flume 1.X 版本**:也称为Flume-ng,这是一个经过重大重构的版本,与Flume-og有很大不同。 #### 四、Flume NG 架构 Flume NG的核心组件包括Source、Channel和Sink,它们共同构成了数据从源头到目的地的传输...
- **Client**:将原始 log 封装成 events 并发送到一个或多个 Agent 的实体,用以解耦数据源系统与 Flume。 - **Agent**:包含 Source、Channel 和 Sink 等组件,用于将 events 从一个节点传输到另一个节点或最终...
Flume 分为两个主要版本:Flume OG 和 Flume NG。Flume OG 是早期版本,而 Flume NG 是从1.x版本开始的改进版,具有更现代和优化的架构。在运行Flume NG时,确保系统已安装JDK 6.0及以上版本,同时注意Flume仅支持...
3. **Flume版本**:使用Flume-ng而不是旧版Flume-og。 4. **网络连通性**:确保两台机器间网络畅通。 通过以上步骤,我们成功搭建了一个简单的Flume集群,实现了从agent到collect的数据传输。这为后续更复杂的应用...