flume安装与应用举例

Posted 金融科技探索

tags:

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

flume简介

flume是一个开源、分布式、高可用的海量日志采集、聚合和传输系统。flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(比如文本、HDFS、Hbase等)的能力 。
  flume的数据流由事件(Event)贯穿始终。事件是Flume的基本数据单位,它携带日志数据(字节数组形式)并且携带有头信息,这些Event由Agent外部的Source生成,当Source捕获事件后会进行特定的格式化,然后Source会把事件推入(单个或多个)Channel中。你可以把Channel看作是一个缓冲区,它将保存事件直到Sink处理完该事件。Sink负责持久化日志或者把事件推向另一个Source。


架构图


                                               (图片来源于网上)


flume安装

  1. 下载


       http://mirrors.shu.edu.cn/apache/flume/1.6.0/apache-flume-1.6.0-bin.tar.gz

       并存放到 /home/hadoop/instSoft

   2. 解压安装

       hadoop 用户执行

       sudo mkdir /usr/local/flume

       sudo tar -zxf /home/hadoop/instSoft/apache-flume-1.6.0-bin.tar.gz  -C /usr/local/

       cd /usr/local/

       sudo mv apache-flume-1.6.0-bin flume

       sudo chown hadoop:hadoop -R /usr/local/flume

       sudo chmod 755 -R /usr/local/flume


3. 设置环境变量

    hadoop 用户执行

    vi /etc/profile

    在文件最后追加以下两行内容:   

    export FLUME_HOME=/usr/local/flume

    export PATH=$PATH:$FLUME_HOME/bin


    让变量生效

    source /etc/profile


4. 设置flume配置文件

    修改flume配置文件

    cd /usr/local/flume/conf

    cp flume-env.sh.template flume-env.sh

    vi flume-env.sh

    在文件最后添加JAVA_HOME 和HADOOP_HOME(根据实际情况):

    export JAVA_HOME=/usr/lib/jvm/jre-1.7.0-openjdk.x86_64

    export HADOOP_HOME=/usr/local/hadoop


 5. 验证是否成功

     flume-ng version

flume安装与应用举例


flume举例

  以spool为例

  

Spool监测配置的目录下新增的文件,并将文件中的数据读取出来。

(1) 创建agent配置文件

     cd /usr/local/flume/conf/

     vi spool.conf

     输入以下内容: