CentOS7搭建Flume服务器
发布日期:2021-06-28 19:43:28 浏览次数:2 分类:技术文章

本文共 2215 字,大约阅读时间需要 7 分钟。

Flume的官网是,官网提供了丰富实用的技术资料。另外还有一个中文版的文档。

一、下载软件

网站提供了各个版本的下载。

cd /var/softwareswget https://mirrors.tuna.tsinghua.edu.cn/apache/flume/1.9.0/apache-flume-1.9.0-bin.tar.gz

二、解压

tar -zxvf apache-flume-1.9.0-bin.tar.gz -C /var/app

三、创建配置文件

cd /var/app/apache-flume-1.9.0-bin/mkdir -p conf/jobvi conf/job/netcat-flume-logger.conf
# example.conf: 一个单节点的 Flume 实例配置# 配置Agent a1各个组件的名称a1.sources = r1a1.sinks = k1a1.channels = c1# 配置Agent a1的source r1的属性a1.sources.r1.type = netcata1.sources.r1.bind = localhosta1.sources.r1.port = 44444# 配置Agent a1的sink k1的属性a1.sinks.k1.type = logger# 配置Agent a1的channel c1的属性,channel是用来缓冲Event数据的a1.channels.c1.type = memorya1.channels.c1.capacity = 1000a1.channels.c1.transactionCapacity = 100# 把source和sink绑定到channel上a1.sources.r1.channels = c1a1.sinks.k1.channel = c1

这个配置文件就是从官网和中文网复制下来的一个agent的配置文件,它描述了一个日志收集逻辑。即从本地44444端口获取数据,然后在控制台打印出来,如果端口不断输入数据,Flume也会不断进行收集和输出。因为Flume就是一个流式日志收集框架。

四、测试

1. 启动一个agent

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

此时处于阻塞状态,agent正在监听44444端口,等待数据。

2. 另外打开一个终端,启动netcat。不过要先安装netcat。

nc localhost 44444

然后发送数据,在agent那边就可以看到新的日志输出。

五、进阶测试

测试的套路就是修改或者另建一个配置文件,按照官网给定的规则配置source、channel、sink和bind,source是输入配置,就是数据来源,channel是缓存部分,sink是数据输出目标,bind则是channel跟输入与输出线路的绑定关系。这跟logstash的配置很像。

我们这里的测试,就是把数据源改成监控本地日志文件的追加内容,然后输出到另外的本地文件序列中。这里的本地日志文件内容增加我们用echo来模拟。

vi conf/job/file-flume-file.conf
# example.conf: 一个单节点的 Flume 实例配置# 配置Agent a1各个组件的名称a1.sources = r1a1.sinks = k1a1.channels = c1# 配置Agent a1的source r1的属性a1.sources.r1.type = execa1.sources.r1.command = tail -F /tmp/logs/test01.loga1.sources.r1.shell = /bin/bash -c# 配置Agent a1的sink k1的属性a1.sinks.k1.type = file_rolla1.sinks.k1.sink.directory = /tmp/logs# 配置Agent a1的channel c1的属性,channel是用来缓冲Event数据的a1.channels.c1.type = memorya1.channels.c1.capacity = 1000a1.channels.c1.transactionCapacity = 100# 把source和sink绑定到channel上a1.sources.r1.channels = c1a1.sinks.k1.channel = c1

启动agent。

bin/flume-ng agent -n a1 -c conf -f conf/job/file-flume-file.conf

我们用以下命令不断改变向本地文件追加内容。

echo hello world >> /tmp/logs/test01.log

在/tmp/logs文件夹下会多出很多一时间戳命名的文件。这就是我们的输出文件。这些文件会定时30秒重新创建一个,不管有没有数据。我们可以查看有数据的文件,能够看到我们追加的内容。

 

转载地址:https://blog.csdn.net/xxkalychen/article/details/117405250 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Sentinel接口限流框架在Springboot中的简单应用
下一篇:Docker搭建Yearning服务器

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2024年04月28日 10时01分15秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

升职加薪必看!读完我这份《Android开发核心源码精编解析》面试至少多要3K!附答案 2019-04-29
华为架构师深入讲解Android开发!为什么Flutter能最好地改变移动开发?吐血整理 2019-04-29
基于安卓的兼职app开发!万字长文轻松彻底入门Flutter,终获offer 2019-04-29
大牛深入讲解!2021年Android网络编程总结篇,书籍+视频+学习笔记+技能提升资源库 2019-04-29
大牛深入讲解!算法题+JVM+自定义View,大厂内部资料 2019-04-29
太厉害了!记录一次腾讯Android岗面试笔试总结,全套教学资料 2019-04-29
如何成为杰出的程序员?阿里P8架构师的Android大厂面试题总结,已拿到offer 2019-04-29
字节跳动社招面试记录,关于网络优化你必须要知道的重点,附面试题答案 2019-04-29
大牛手把手带你!宅家36天咸鱼翻身入职腾讯,经典好文 2019-04-29
大牛深入讲解!Android高级工程师面试实战,一线互联网公司面经总结 2019-04-29
如何成为杰出的程序员?2021年Android高级面试题,2年以上经验必看 2019-04-29
字节跳动社招面试记录,2021年上半年最接地气的Android面经,实战解析 2019-04-29
学习安卓开发!我凭什么拿到了阿里、腾讯、今日头条3家大厂offer?再不刷题就晚了! 2019-04-29
安卓3d游戏开发视频!春招我借这份PDF的复习思路,完整版开放下载 2019-04-29
安卓app开发!大厂Offer拿到手软啊!年薪超过80万! 2019-04-29
安卓ndk开发!高级Android晋升之View渲染机制,附答案 2019-04-29
安卓开发交流!Android程序员架构之路该如何继续学习?含爱奇艺,小米,腾讯,阿里 2019-04-29
安卓开发网!Android面试知识点总结宝典助你通关!含泪整理面经 2019-04-29
安卓开发者!京东面试真题解析,移动架构师成长路线 2019-04-29
查漏补缺!Android开发还会吃香吗?Android面试题及解析 2019-04-29