网站文章采集平台(大数据采集平台——Fluentd特殊的平台)
优采云 发布时间: 2021-09-06 21:13网站文章采集平台(大数据采集平台——Fluentd特殊的平台)
在大数据采集平台中,有这样一个特殊的平台,所有的部分都是可定制的,你可以通过简单的配置随时随地采集日志。这是一个非常火爆的大数据采集平台,很多公司都在用,所以本期就介绍这个特殊的平台——Fluentd。
什么是 Fluentd?
Fluentd 是一个开源数据采集器,设计用于处理数据流,有点像 syslogd,但使用 JSON 作为数据格式。采用插件式架构,具有高扩展性和高可用性,同时实现了高可靠的信息转发。
根据(Y)和分析(Y),Fluentd是从Fluent+d派生出来的,形象地说明它是作为守护进程运行的。官网将其描述为数据采集器。在使用中,我们可以先将各种来源的信息发送到Fluentd,然后Fluentd根据配置通过不同的插件将信息转发到不同的地方,比如文件、SaaS平台、数据库甚至可以转发到另一个Fluentd。
官网:
Fluentd 的作用
官网给出的两张图可以让你非常直观的了解Fluentd的作用。
在使用Fluentd之前,日志系统的状态:
使用Fluentd后,日志系统的状态:
机理图:
Fluentd 的功能
1)易于安装
2)占地面积小
3)半结构化数据记录
4)灵活的插件机制
5)可靠缓冲
6)日志转发
Fluentd 的部署和架构
Fluentd 的部署与 Flume 非常相似:
Fluentd 的架构设计和 Flume 完全一样:
Fluentd 的 Input/Buffer/Output 与 Flume 的 Source/Channel/Sink 非常相似。
输入
Input 负责接收数据或主动抓取数据。支持syslog、http、文件尾等
缓冲
缓冲区负责数据采集的性能和可靠性,也有不同类型的缓冲区可以配置,如文件或内存。
输出
Output 负责将数据输出到目的地,例如文件、AWS S3 或其他 Fluentd。
Fluentd 的技术栈
Fluentd 的结构
由于其结构简单,Fluentd 的核心仅收录 3000 行 Ruby。 Fluentd 从各种输入源采集事件并将它们写入输出*敏*感*词*。例如:输入源:HTTP、Syslog、Apache 日志输出源:文件、邮件、RDBMS 数据库、NoSQL 存储
下图展示了输入输出的基本思想:
Fluentd 具有非常好的扩展性,客户可以自己定制(Ruby)Input/Buffer/Output。 Fluentd 在各个方面看起来都与 Flume 非常相似。不同的是,如果使用Ruby来开发,Footprint会更小,但也会带来跨平台问题,无法支持Windows平台。此外,使用JSON统一数据/日志格式是它的另一个特点。与Flumed相比,配置相对简单。