前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >关于 Flume

关于 Flume

原创
作者头像
来自银河系的员程序
发布于 2022-02-09 06:48:17
发布于 2022-02-09 06:48:17
44600
代码可运行
举报
文章被收录于专栏:Java学习中Java学习中
运行总次数:0
代码可运行

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.htmlhttp://archive.apache.org/dist/flume/

Flume的安装

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

将安装包上传到服务器并解压
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
tar -zxvf apache-flume-1.8.0-bin.tar.gz
修改安装包名称
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mv apache-flume-1.8.0-bin flume-1.8.0
修改配置文件
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
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

flume-env.sh
flume-env.sh

配置环境变量

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
vi /etc/profile

添加如下内容

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
末尾追加
#FLUME
export FLUME_HOME=/opt/flume/flume-1.8.0
export PATH=$PATH:$FLUME_HOME/bin

保存后,加载生效

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
source /etc/profile
查看版本
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
flume-ng version

出现问题

解决方案

1、修改 Flume 的 flume-ng 文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
vim flume-ng

2、编辑内容

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
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)

修改前

修改后

查看版本

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
flume基础教程
flume 作为 cloudera 开发的实时日志收集系统,受到了业界的认可与广泛应用。Flume 初始的发行版本目前被统称为 Flume OG(original genera﹋on,原创世纪),属于 cloudera。
Java架构师必看
2021/07/22
7820
Flume的安装与综合使用
Flume + Kafka基本是日志实时采集的标准搭档了。 本篇文章基于Flume-ng-1.6.0-cdh5.7.0 + CentOS6.7 + JDK1.6+ 下载,安装JDK 1.解压到 ~/app 2.将java配置系统环境变量中: vi ~/.bash_profile export JAVA_HOME=/home/hadoop/app/jdk1.8.0_144 export PATH=$JAVA_HOME/bin:$PATH 3.source ~/.bash_profile下让其配置生
sparkle123
2018/04/26
6040
Flume的安装与综合使用
Flume简介和安装
Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。
编程那点事
2023/02/25
3570
Flume简介和安装
Hadoop数据分析平台实战——150Flume介绍离线数据分析平台实战——150Flume介绍
离线数据分析平台实战——150Flume介绍 Nginx介绍 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。 一般情况下,我们会将nginx服务器作为一个静态资源的访问容器。 Nginx安装步骤 Nginx安装步骤如下:(使用yum命令安装) 使用root用户登录。 查看nginx信息,命令:yum info nginx. 如果查看nginx信息提示ngin
Albert陈凯
2018/04/08
5560
Hadoop数据分析平台实战——150Flume介绍离线数据分析平台实战——150Flume介绍
Apache Flume及快速安装
在一个完整的离线大数据处理系统中,除了 hdfs+mapreduce+hive 组成分析系统的核心之外, 还需要数据采集、结果数据导出、任务调度等不可或缺的辅助系统,而这些辅助工具在hadoop 生态体系中都有便捷的开源框架,如图所示:
Maynor
2022/11/30
4140
Apache Flume及快速安装
flume采集数据实时存储hive两种解决方案
        本方案的核心是flume采集数据后,按照hive表的结构,将采集数据输送到对应的地址中,达到数据实时存储的目的,这种实时实际上是一种准实时。
尚浩宇
2018/08/17
5.7K0
flume采集数据实时存储hive两种解决方案
【数据采集与预处理】流数据采集工具Flume
数据流 :数据流通常被视为一个随时间延续而无限增长的动态数据集合,是一组顺序、大量、快速、连续到达的数据序列。通过对流数据处理,可以进行卫星云图监测、股市走向分析、网络攻击判断、传感器实时信号分析。
Francek Chen
2025/01/22
810
【数据采集与预处理】流数据采集工具Flume
Flume篇---Flume安装配置与相关使用
Copy过来一段介绍Apache Flume 是一个从可以收集例如日志,事件等数据资源,并将这些数量庞大的数据从各项数据资源中集中起来存储的工具/服务,或者数集中机制。flume具有高可用,分布式,配置工具,其设计的原理也是基于将数据流,如日志数据从各种网站服务器上汇集起来存储到HDFS,HBase等集中存储器中。官网:http://flume.apache.org/FlumeUserGuide.html
LhWorld哥陪你聊算法
2018/09/13
1.5K0
Flume篇---Flume安装配置与相关使用
大数据环境搭建-Flume
在环境变量中增加如下命令,可以使用 bd 快速切换到 /data/tools/bigdata
码客说
2022/04/27
3990
Flume日志采集框架的使用
原文链接:https://foochane.cn/article/2019062701.html
foochane
2019/07/02
7560
Flume——高可用的、高可靠的、分布式日志收集系统
图1 从这里可以看出需要我们安装 hdfs, hive, hbase的支持, 只要我们安装了 ,运行时就会自动读取这些应用
时间静止不是简史
2020/07/24
1.4K0
Flume介绍
在一个完整的离线大数据处理系统中,除了 hdfs+mapreduce+hive 组成分析系统的核心之外,还需要 数据采集、结果 数据导出、 任务调度等不可或缺的辅助系统,而这些辅助工具在hadoop生态体系中都有便捷的开源框架,如图所示:
用户4870038
2021/02/05
3840
Flume介绍
大数据日志收集框架之Flume实战
flume官方文档:http://flume.apache.org/documentation.html
静谧星空TEL
2021/04/27
9830
大数据日志收集框架之Flume实战
Flume-ng配置
Flume是一个分布式、可靠、和高可用的海量日志聚合的系统,支持在系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。
星哥玩云
2022/06/29
3180
Apache Flume详细介绍及Flume的安装部署
#定义这个agent中各组件的名字 a1.sources = r1 a1.sinks = k1 a1.channels = c1
刘浩的BigDataPath
2021/04/13
2.3K0
Apache Flume详细介绍及Flume的安装部署
大数据日志收集框架之Flume入门
Flume是Cloudrea公司开源的一款优秀的日志收集框架,主要经历了两个大的版本,分别是 Flume-OG Flume-NG OG是0.9.x的版本,依赖zookeeper,角色职责不够单一
我是攻城师
2018/05/14
1.2K0
Flume和Kafka的区别与联系「建议收藏」
flume一般用于日志采集,可以定制很多数据源,减少开发量,基本架构是一个flume进程agent(source、拦截器、选择器、channel<Memory Channel、File Channel>、sink),其中传递的是原子性的event数据;
全栈程序员站长
2022/09/10
1.4K0
Flume-1.8.0_部署与常用案例
在一个完整的大数据处理系统中,除了hdfs+mapreduce+hive组成分析系统的核心之外,还需要数据采集、结果数据导出、任务调度等不可或缺的辅助系统,而这些辅助工具在hadoop生态体系中都有便捷的开源框架,如图所示:
踏歌行
2020/10/15
4670
Flume-1.8.0_部署与常用案例
Flume安装及部署
(adsbygoogle =window.adsbygoogle ||[]).push({});
猿码优创
2019/07/27
2.1K0
Flume快速入门
在一个完整的离线大数据处理系统中,除了HDFS+MapReduce+Hive组成分析系统的核心之外,还需要数据采集、结果数据导出、任务调度等不可或缺的辅助系统,而这些辅助工具在Hadoop生态体系中都有便捷的开源框架,如图所示:
Java架构师必看
2021/05/14
5890
Flume快速入门
相关推荐
flume基础教程
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文