Flume简介

Flume是一个Java编写的日志采集框架,用于实时采集数据。它包含Source、Channel和Sink三个组件,Source负责采集数据,Channel作为缓冲区存储数据,Sink负责将数据发送到目标如HDFS。本文介绍了如何配置和使用Flume,包括从特定端口、文件末尾、目录监控数据,并将结果持久化到HDFS。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(一)什么是Flume?

Flume 是一个用 Java 编写的用于采集日志的框架。我们可以配置 Flume 监控一个文件的末尾,当文件内容发生变化的时候实时的将数据采集到 HDFS 上;也可监控一个目录,当这个目录新增了文件时,将这个文件采集到 HDFS 上。

(二)Flume架构

在这里插入图片描述
Flume 主要由三部分组成:Source,Channel,Sink。

  • Source:数据源,用来采集数据。
  • Channel:频道,用来缓存数据。
  • Sink:沉淀,用来将 Channel 中的数据发送到指定的目的,比如 HDFS,Kafka 等。

(三)安装和配置

  1. 解压压缩包
  2. 修改配置 conf/flume-env.sh 设置 JAVA_HOME 即可

(四)使用 Flume 采集日志

案例一:监控特定端口发送的数据,打印到控制台
#bin/flume-ng agent -n a1 -f myagent/a1.conf -c conf -Dflume.root.logger=INFO,console
#定义agent名, source、channel、sink的名称
a1.sources = r1
a1.channels = c1
a1.sinks = k1

#具体定义source
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值