当前位置: 首页 > news >正文

flume----初步安装与配置

目录标题

    • **flume的简单介绍**
      • ⭐flume的**核心组件**
      • ⭐**核心特点**
    • **安装部署**
      • 1)**解压安装包**
      • 2)**修改名字** **(配置文件时,更方便)**
      • **3)⭐⭐配置文件**
      • 4)**兼容Hadoop**
      • 5)**配置环境变量**
      • 6)**测试flume**
    • **⭐启动flume**
      • 1)在`flume`中创建空目录`jobs`
      • 2)在`jobs`内添加文件
      • **最终启动**

flume的简单介绍

Flume 是一个开源的 分布式日志收集系统,由 Apache 开发,主要用于高效地 采集、聚合和传输海量日志数据 (比如网站点击日志、服务器监控日志等),并将这些数据可靠地传递到 目标存储 (如 HDFS、HBase、Kafka 等)

⭐flume的核心组件

1.source(数据接收源头)

  • 负责接数据
    例,监听日志文件的新增内容

2.channel(通道)

  • 负责临时存储数据,确保数据不会丢失,相当于“缓冲区”

  • 存在原因
    数据的**“输入”“输出”**速度有时不同,为了避免数据丢失

3.sink(数据的输出)

  • 负责“送数据”,比如将数据写入
    HDFSkafka

核心特点

  1. 可靠性
  • 数据在传输过程中会持久化缓存(Channel),即使系统故障,数据也不会丢失
  1. 扩展性
  • 可横向扩展多个 Agent(Flume 节点)处理更大数据量
  1. 灵活性
  • 支持多种数据源(HTTP、日志文件、Kafka 等)和目的地(HDFS、HBase、ES 等)

  • 可自定义数据过滤、格式转换等逻辑

安装部署

1)解压安装包

tar -zxvf 文件名 - C 位置

tar -zxvf apache-flume-1.9.0-bin.tar.gz -C /opt/module/

2)修改名字 (配置文件时,更方便)

先进入到 flume 解压后所在的位置,然后修改

mv 原名 更改后的名字

mv apache-flume-1.9.0 flume

3)⭐⭐配置文件

所配置的在flumeconf里面
(zookeeper也是)
切到conf
再配置
flume-env.sh.template

log4j.properties

  • flume-env.sh.template文件
    保留原本的 内容 防止后续使用
    可以 将此文件复制一份 更名为flume-env.sh
cp flume-env.sh.template flume-env.sh

内容均配置到flume-env.sh

⭐添加jdk的路径

export JAVA_HOME=/opt/module/jdk
  • log4j.properties文件

添加:

flume.log.dir=/opt/module/flume/logs

4)兼容Hadoop

flumelib 下的
guava-11.0.2.jar 改名,以兼容hadoop-3.1.3

[root@hadoop102 lib] mv  guava-11.0.2.jar  guava-11.0.2.jar.bak

文件后.bak 可以 架空 此文件,以便兼容 hadoop-3.1.3

5)配置环境变量

vi /etc/profile添加 flumeexport

export FLUME_HOME=/opt/module/flume
export PATH=$PATH:$FLUME_HOME/bin

生效环境变量文件

source /etc/profile

6)测试flume

flume-ng version检查版本

⭐启动flume

启动时,需要进一步配置

1)在flume中创建空目录jobs

mkdir jobs

2)在jobs内添加文件

文件名为flume-netcat-logger.conf

vi flume-netcat-logger.conf

里面的内容是 flume 的启动内容

  • ① 将组件命名
  • ②描述组件/配置源 source
  • ③将一个事件缓冲到channel
  • ④描述组件sink
  • ⑤将输入源source输出sink
    管道channel联系起来

如图
在这里插入图片描述

最终启动

bin/flume-ng agent -n a1 -c conf/ -f jobs/flume-netcat-logger.conf -Dflume.root.logger=INFO,console
nc hadoop01 10050

相关文章:

  • 9.Three.js中 ArrayCamera 多视角相机详解+示例代码
  • Dockerfile讲解与示例汇总
  • C++ 解决一个简单的图论问题 —— 最小生成树(以 Prim 算法为例)
  • <uniapp><插件><UTS>在uniapp中,创建自己的插件并发布到uni插件市场
  • Ubuntu安装SRS流媒体服务
  • 人智交互中的AI世代
  • 2025医疗领域AI发展五大核心趋势与路线研究
  • List--链表
  • C++ 表达式求值优先级、结合律与求值顺序(五十九)
  • 维度的语法:从列表的散文到 ndarray 的十四行诗
  • PostgreSQL oracle_fdw 扩展解析
  • 【DeepSeek认证】最好的MODBUS调试工具
  • 【JAVA ee初阶】多线程(3)
  • 设计模式(状态模式)
  • 2025年- H11-Lc118-53.最大子数组和(普通数组)---java版
  • WPF 程序监控硬件设备状态变化的实现方案
  • MaxScript二维图形布尔(并)运算
  • 【iOS】OC源码阅读——alloc源码分析
  • Android显示学习笔记本
  • 第一天 车联网定义、发展历程与生态体系
  • ​关键词看中国经济“一季报”:韧,长期向好看底气
  • 国家核准10台核电新机组,四大核电央企披露新项目进展
  • 古籍新书·2025年春季|中国土司制度史料集成
  • 深一度|“凑合过”的利物浦,英超第二冠只求性价比
  • 商务部:将打造一批国际消费集聚区和入境消费友好商圈
  • 高璞任中国一汽党委常委、副总经理