关于 Flume

关于 Flume


简介

在一个完整的大数据处理系统中,除了hdfs+mapreduce+hive组成分析系统的核心之外,还需要数据采集、结果数据导出、任务调度等不可或缺的辅助系统,而这些辅助工具在hadoop生态体系中都有便捷的开源框架,如图所示:

在这里插入图片描述

设计Flume的宗旨是向Hadoop批量导入基于事件的海量数据。一个典型的例子是利用Flume从一组Web服务器中收集日志文件,然后把这些文件中的日志事件转移到一个新的HDFS汇总文件中以做进一步处理,其终点(sink)通常为HDFS。也可以写到HBASE或Solr等其他系统。

概述

  • Flume是Cloudera提供的一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。
  • Flume可以采集文件,socket数据包、文件夹等各种形式源数据,又可以将采集到的数据输出到HDFS、hbase、hive、kafka等众多外部存储系统中
  • 一般的采集需求,通过对flume的简单配置即可实现
  • Flume针对特殊场景也具备良好的自定义扩展能力,因此,flume可以适用于大部分的日常数据采集场景

当前Flume有两个版本:

  • Flume 0.9X版本的统称Flume-og
  • Flume1.X版本的统称Flume-ng
    由于Flume-ng经过重大重构,与Flume-og有很大不同,使用时请注意区分

运行机制

1、要想使用Flume,就需要运行Flume代理。Flume代理是由持续运行的source(数据源),sink(数据目标)已经channel(用于连接source和sink)构成的Java进程。Flume 是由一组以分布式结构相互连接的代理构成

2、Flume分布式系统中最核心的角色是agent,flume采集系统就是由一个个agent所连接起来形成

3每一个agent相当于一个数据传递员(Source 到 Channel 到 Sink之间传递数据的形式是Event事件;Event事件是一个数据流单元),内部有三个组件:

  • Source:采集源,用于跟数据源对接,以获取数据
  • Sink:下沉地,采集数据的传送目的,用于往下一级agent传递数据或者往最终存储系统传递数据
  • Channel:angent内部的数据传输通道,用于从source将数据传递到sink

在这里插入图片描述

Flume采集系统结构图

简单结构

单个agent采集数据

在这里插入图片描述

复杂结构

多级agent之间串联
1.第一种:2个agent串联

在这里插入图片描述

2.多个agnet的采集的数据进行汇总

在这里插入图片描述

3.采集的数据可以下层到不同的系统中

在这里插入图片描述

安装Flume

Flume的下载

下载地址https://flume.apache.org/download.html或http://archive.apache.org/dist/flume/

Flume的安装

Flume框架对hadoop和zookeeper的依赖只是在jar包上,并不要求flume启动时必须将hadoop和zookeeper服务也启动。

将安装包上传到服务器并解压
tar -zxvf apache-flume-1.8.0-bin.tar.gz
修改安装包名称
mv apache-flume-1.8.0-bin flume-1.8.0
修改配置文件
cd flume-1.8.0/conf
cp flume-env.sh.template flume-env.sh
chmod 777 flume-env.sh

在flume-env.sh脚本中配置JAVA_HOME

export JAVA_HOME= /usr/jdk1.8.0_131

在这里插入图片描述

配置环境变量
vi /etc/profile

添加如下内容

末尾追加
#FLUME
export FLUME_HOME=/opt/flume/flume-1.8.0
export PATH=$PATH:$FLUME_HOME/bin

保存后,加载生效

source /etc/profile
查看版本
flume-ng version

出现问题

在这里插入图片描述

解决方案

1、修改 Flume 的 flume-ng 文件

vim flume-ng

2、编辑内容

local HBASE_JAVA_LIBRARY_PATH=$(HBASE_CLASSPATH="$FLUME_CLASSPATH" \
        ${HBASE_IN_PATH} org.apache.flume.tools.GetJavaProperty \
        java.library.path 2>/dev/null | grep hbase)

修改前

在这里插入图片描述

修改后

在这里插入图片描述

查看版本

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值