一文带你入门Flume

人生之路坎坎坷坷,跌跌撞撞在所难免。但是,不论跌了多少次,你都必须坚强勇敢地站起来。任何时候,无论你面临着生命的何等困惑抑或经受着多少挫折,无论道路多艰难,希望变得如何渺茫,请你不要绝望,再试一次,坚持到底,成功终将属于勇不言败的你。

导读:本篇文章讲解 一文带你入门Flume,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

1,Flume概述

Flume是Cloudera提供的一款高可用,高可靠的,分布式海量日志采集软件。

Flume的核心是把数据从数据源(source)收集过来,再将收集到的数据送到指定的目的地(sink)。为了保证数据的成功传输,在数据传送到目的地(sink)之前会先将数据缓存下来(channel),在数据真正到达目的地后,再将缓存的数据删除。

2,架构图

在这里插入图片描述

Agent:Flume的核心角色是Agent,Agent本身是一个JAVA进程他运行在Flume所在的节点。

Source:采集源,数据源负责采集数据

Sink:下沉地,采集数据的目的地,用于想下一级Agent传递数据或者往最终存储系统中存储数据。

Channel:Agent内部的传输通道。用于把数据从Source传输到Sink,传输单位为event。

Event:Event是Flume内部传输的基本单元。Event将传输的数据进行封装,如果是文本文件,通常是一行记录。Event也是事物的基本单位。event从Source流向Channel,再到Sink。本身是一个字节数组。并可携带 headers(头信息)信息。event 代表着一个数据的最,小完整单元,从外部数据源来,向外部的目的地去。
一个完整的Event包括Event headers,Event body,Event 信息。其中Event信息就是Flume采集的日志记录。

3,Flume采集系统结构图。

在这里插入图片描述
在这里插入图片描述

4,安装部署。

上传安装包到所需要采集数的节点。
然后解压安装

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

获取安装包可微信关注公众号“暗物质魂”回复Flume,也可自己前往官网下载
进入安装目录下的conf目录修改flume-env.sh,添加JAVA_HOME即可

5,入门案例

监听本地44444端口的数据变化。
在Flume安装目录下新建job文件夹,进入此文件夹,
vi netcat-logger.conf 编辑

# 定义这个 agent 中各组件的名字
a1.sources = r1
a1.sinks = k1
a1.channels = c1
# 描述和配置 source 组件:r1
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = 44444
# 描述和配置 sink 组件:k1
a1.sinks.k1.type = logger
# 描述和配置 channel 组件,此处使用是内存缓存的方式
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100
# 描述和配置 source channel sink 之间的连接关系
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1

启动Flume,在Flume安装目录下输入命令

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

-c conf 指定 flume 自身的配置文件所在目录
-f conf/netcat-logger.con 指定我们所描述的采集方案
-n a1 指定我们这个 agent 的名字
测试
Xshell重新开一个窗口
输入 telnet localhost 44444 后输入hello Flume
查看Flume打印数据是否又hello Flume输出。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/133809.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!