Flume 介绍及安装

Posted youngxuebo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flume 介绍及安装相关的知识,希望对你有一定的参考价值。

一、Flume简介

  1. 是一个日志采集系统。
  2. Flume提供一个分布式的,可靠的,对大数据量的日志进行高效收集、聚集、移动的服务,Flume只能在Unix环境下运行。
  3. Flume基于流式架构,容错性强,也很灵活简单。
  4. Flume、Kafka用来实时进行数据收集,Spark、Flink用来实时处理数据,impala用来实时查询。

二、Flume角色

在这里插入图片描述

Agent主要由:source,channel,sink三个组件组成:

2.1、Source

用于采集数据,Source是产生数据流的地方,从数据发生器接收数据,同时Source会将产生的数据以Flume的event格式,流传输到一个或者多个通道的Channel,这个有点类似于Java IO部分的Channel。

2.2、Channel

用于桥接Sources和Sinks,类似于一个队列。是一种短暂的存储容器,它将从source处接收到的event格式的数据缓存起来,直到它们被sinks消费掉,它在source和sink间起着桥梁的作用,channel是一个完整的事务,这一点保证了数据在收发的时候的一致性。并且它可以和任意数量的source和sink链接。支持的类型有: JDBC channel , File System channel , Memory channel等.

2.3、Sink

从Channel收集消费数据(events),并将其写传递到目标源(可以是下一个Source,也可以是HDFS或者HBase)。

2.4、Event

传输单元,Flume数据传输的基本单元,以事件的形式将数据从源头送至目的地。

三、Flume传输过程

source监控某个文件或数据流,数据源产生新的数据,拿到该数据后,将数据封装在一个Event中,并put到channel后commit提交,channel队列先进先出,sink去channel队列中拉取数据,然后写入到HDFS中。

四、Flume 搭建

4.1) rz -y 上传安装包 apache-flume-1.8.0-bin.tar.gz

4.2) 解压安装包 apache-flume-1.8.0-bin.tar.gz,并改名

#解压
tar -zxvf apache-flume-1.8.0-bin.tar.gz -C /opt/module/
#改名
mv apache-flume-1.8.0-bin flume-1.8.0
#创建job_conf,用户存放Job配置文件
mkdir flume-1.8.0/job_conf
#将临时文件改掉
mv flume-1.8.0/conf/flume-env.sh.template flume-1.8.0/conf/flume-env.sh

4.3) vi flume-env.sh

export JAVA_HOME=/opt/module/jdk1.8.0_144

在这里插入图片描述
搭建完成。

以上是关于Flume 介绍及安装的主要内容,如果未能解决你的问题,请参考以下文章

日志采集框架Flume的安装及使用

flume安装及ganglia使用

flume安装及ganglia使用

flume详细介绍,安装,配置

Flume的安装及使用

flume介绍及应用