踏上大数据第一步:flume

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
日志服务 SLS,月写入数据量 50GB 1个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: Flume 是一个分布式、可靠且高效的系统,用于收集、聚合和移动大量日志数据。它是 Apache 顶级项目,广泛应用于 Hadoop 生态系统中。Flume 支持从多种数据源(如 Web 服务器、应用服务器)收集日志,并将其传输到中央存储(如 HDFS、HBase)。其核心组件包括 Source、Channel 和 Sink,分别负责数据获取、临时存储和最终存储。本文还介绍了在 Ubuntu 20.04 上安装 Flume 1.9.0 的步骤,涵盖 JDK 安装、Flume 下载、解压、配置环境变量及验证安装等详细过程。

添加图片注释,不超过 140 字(可选)


一、概述

Flume是一个分布式、可靠、可用的系统,用于高效地收集、聚合和移动大量日志数据。它旨在从不同的数据源收集数据,并将其存储到中央数据存储中,如HDFS、HBase或Solr等。Flume是Apache旗下的一个顶级项目,是Hadoop生态系统中的一个重要组件。  

Flume的主要应用场景包括:

  1. 日志收集 Flume可以高效地从各种Web服务器、应用服务器等收集日志数据,并将其传输到HDFS或其他存储系统中,为后续的数据分析做准备。
  2. 数据采集 除了日志数据,Flume还可以从各种来源采集其他类型的数据,如网络流量数据、社交数据、邮件数据等,并进行数据整理和传输。
  3. 数据传输 Flume可以在不同的节点之间传输数据,支持多种数据源和目的地,可以实现数据的分层传输。
  4. 实时数据流处理 Flume提供了一个简单的基于事件的数据模型,可以结合其他工具(如Spark Streaming)对实时数据流进行处理和分析。
  5. 多路复用 Flume支持复杂的数据流拓扑结构,允许将相同的数据流复制到多个目的地,方便构建冗余备份流或分层数据存储结构。

Flume的架构主要由以下三个核心组件组成:

  • Source:用于从外部获取数据到Flume
  • Channel:用于连接Source和Sink,作为事件的临时存储
  • Sink:用于从Channel中移除事件并且存储到外部系统中


添加图片注释,不超过 140 字(可选)


二、安装

安装 Apache Flume 1.9.0 在 Ubuntu 20.04 系统上的步骤如下:

准备工作

在开始安装之前,请确保系统已经安装了JDK,因为 Flume 需要 JDK 来运行。您可以通过运行 java -version 来检查 JDK 是否已安装。如果没有安装可以进行安装。

JDK安装

apt install openjdk-8-jdk

安装完成后,验证Java版本:

java -version

如果出现相应的版本信息说明已经安装成功了。

那么apt install的java安装的目录在哪里呢?

# which java   /usr/bin/java # ls -l /usr/bin/java   /usr/bin/java -> /etc/alternatives/java # ls -l /etc/alternatives/java   /etc/alternatives/java -> /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java

也就是/usr/lib/jvm/java-8-openjdk-amd64就是java安装目录即JAVA_HOME,后面会用到配置。

下载 Flume

  1. 访问 Apache Flume 的官方网站或直接下载 Flume 1.9.0 的压缩包。
  2. 使用 wgetcurl 命令下载 Flume 压缩包到您的系统中。

wget http://archive.apache.org/dist/flume/1.9.0/apache-flume-1.9.0-bin.tar.gz

安装 Flume

  1. 解压下载的 Flume 压缩包。

tar -zxvf apache-flume-1.9.0-bin.tar.gz

  1. 将解压后的 Flume 目录移动到 /usr/local/flume

mv apache-flume-1.9.0-bin /usr/local/flume

配置环境变量

  1. 打开 /etc/profile 文件添加 Flume 的环境变量。

vim /etc/profile

  1. 在文件末尾添加以下内容:

export FLUME_HOME=/usr/local/flume export PATH=$PATH:$FLUME_HOME/bin

  1. 更新环境变量。

source /etc/profile

修改配置

1.复制配置文件

cd /usr/local/flume/conf/ mv flume-conf.properties.template flume-conf.properties mv flume-env.sh.template flume-env.sh mv flume-env.ps1.template flume-env.ps1

2.修改flume-env.sh

找到export JAVA_HOME=这条配置,打开前面的#并设置为java_home的目录,见JDK安装

vim flume-env.sh export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

验证安装

运行以下命令来验证 Flume 是否安装成功:

flume-ng version


添加图片注释,不超过 140 字(可选)


后面有文章介绍flume的具体使用,敬请关注....


相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
8月前
|
存储 消息中间件 监控
【Flume】Flume在大数据分析领域的应用
【4月更文挑战第4天】【Flume】Flume在大数据分析领域的应用
|
分布式计算 Hadoop 大数据
大数据平台搭建(容器环境)——Flume1.9 安装配置
大数据平台搭建(容器环境)——Flume1.9 安装配置
大数据平台搭建(容器环境)——Flume1.9 安装配置
|
SQL 分布式计算 监控
大数据Flume快速入门
大数据Flume快速入门
145 0
|
8月前
|
消息中间件 分布式计算 大数据
【大数据技术Hadoop+Spark】Flume、Kafka的简介及安装(图文解释 超详细)
【大数据技术Hadoop+Spark】Flume、Kafka的简介及安装(图文解释 超详细)
404 0
|
SQL 存储 监控
大数据Flume企业开发实战
大数据Flume企业开发实战
79 0
|
21天前
|
存储 分布式计算 大数据
Flume+Hadoop:打造你的大数据处理流水线
本文介绍了如何使用Apache Flume采集日志数据并上传至Hadoop分布式文件系统(HDFS)。Flume是一个高可用、可靠的分布式系统,适用于大规模日志数据的采集和传输。文章详细描述了Flume的安装、配置及启动过程,并通过具体示例展示了如何将本地日志数据实时传输到HDFS中。同时,还提供了验证步骤,确保数据成功上传。最后,补充说明了使用文件模式作为channel以避免数据丢失的方法。
59 4
|
5月前
|
存储 分布式计算 大数据
【Flume的大数据之旅】探索Flume如何成为大数据分析的得力助手,从日志收集到实时处理一网打尽!
【8月更文挑战第24天】Apache Flume是一款高效可靠的数据收集系统,专为Hadoop环境设计。它能在数据产生端与分析/存储端间搭建桥梁,适用于日志收集、数据集成、实时处理及数据备份等多种场景。通过监控不同来源的日志文件并将数据标准化后传输至Hadoop等平台,Flume支持了性能监控、数据分析等多种需求。此外,它还能与Apache Storm或Flink等实时处理框架集成,实现数据的即时分析。下面展示了一个简单的Flume配置示例,说明如何将日志数据导入HDFS进行存储。总之,Flume凭借其灵活性和强大的集成能力,在大数据处理流程中占据了重要地位。
124 3
|
数据采集 消息中间件 监控
大数据组件-Flume集群环境搭建
大数据组件-Flume集群环境搭建
225 0
|
8月前
|
消息中间件 分布式计算 大数据
【大数据技术】Spark+Flume+Kafka实现商品实时交易数据统计分析实战(附源码)
【大数据技术】Spark+Flume+Kafka实现商品实时交易数据统计分析实战(附源码)
274 0
|
SQL 负载均衡 监控
大数据Flume特性
大数据Flume特性
110 1