分布式日志收集系统Flume介绍

0 下载量 163 浏览量 更新于2024-08-29 收藏 238KB PDF 举报
日志收集之Flume 日志收集是系统数据的基石,对于系统的安全来说非常重要。它记录了系统每天发生的各种各样的事情,用户可以通过它来检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹。日志主要的功能是审计和监测。它还可以实时地监测系统状态,监测和追踪侵入者。 Flume是Cloudera开发的分布式日志收集系统,是hadoop周边组件之一。其可以实时的将分布在不同节点、机器上的日志收集到hdfs中。Flume的发展历史可以追溯到2011年10月22号,cloudera完成了Flume-728,对Flume进行了里程碑式的改动:重构核心组件、核心配置以及代码架构,重构后的版本统称为FlumeNG(next generation)。 Flume是一个高可用,高可靠,分布式海量日志采集、聚合和传输系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。Flume的架构主要包括Source、Channel和Sink三个部分。Source是数据的来源,Channel是数据的缓存区,Sink是数据的目的地。 Flume的核心是把数据从数据源收集过来,再送到目的地。为了保证输送一定成功,在送到目的地之前,会先缓存数据,待数据真正到达目的地后,删除自己缓存的数据。Flume传输的数据的基本单位是Event,如果是文本文件,通常是一行记录,这也是事务的基本单位。Event从Source,流向Channel,再到Sink,本身为一个byte数组,并可携带headers信息。Event代表着一个数据流的最小完整单元,从外部数据源来,向外部的目的地去。 Flume的特点包括: * 高可用性:Flume可以实时地将分布在不同节点、机器上的日志收集到hdfs中。 * 高可靠性:Flume可以保证数据的传输成功,通过缓存机制来确保数据的安全。 * 分布式架构:Flume支持分布式架构,可以处理大量的日志数据。 * 灵活性:Flume可以根据需要对数据进行简单处理,并写到各种数据接受方。 Flume是一个功能强大且灵活的日志收集系统,对于系统的安全和监测来说非常重要。