Flume日志采集系统:简单结构和复杂结构

Flume的核心角色是Agent,通过Agent可以从其他服务中采集数据,并通过内部event流的形式传输到Sink,并根据需求最终向下一个Agent传输或者进行集中式存储。

在实际开发中,Flume需要采集数据的类型多种多样,同时还会进行不同的中间操作,所以根据具体需求,可以将Flume日志采集系统分为简单结构和复杂结构。

1. 简单结构

当需要采集数据的生产源比较单一、简单的时候,可以直接使用一个Agent来进行数据采集并最终存储,结构如Flume基本架构,如下图所示。

2. 复杂结构

有时候需要采集数据的数据源分布在不同的服务器上,使用一个Agent进行数据采集不再适用,这时就可以根据业务需求部署多个Agent进行数据采集并最终存储,结构如下图所示。



Flume复杂结构——多Agent

从图2可以看出,对每一个需要收集数据的Web服务端都搭建了一个Agent进行数据采集,接着再将这多个Agent中的数据作为下一个Agent的Source进行采集并最终集中存储到HDFS中。

除此之外,在开发中还有可能遇到从同一个服务端采集数据,然后通过多路复用流分别传输并存储到不同目的地的情况,结构如图3所示。

从图3可以看出,根据具体需求,将一个Agent采集的数据通过不同的Channel分别流向了不同的Sink,然后再进行下一阶段的传输或存储(如图3所示,将多个Sink数据分别进行了HDFS集中式存储、作为JMS消息服务、作为另一个Agent的Source)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值