Beats 入门介绍

原创 2018-02-24 16:23 阅读(321)次

Beats官方给出的介绍如下

Beats 平台集合了多种单一用途数据采集器。这些采集器安装后可用作轻量型代理,从成百上千或成千上万台机器向 Logstash 或 Elasticsearch 发送数据。

其实这个功能在我好几年前(第一家公司的时候)曾经开发过类似的产品,是从很多网络设备上获取状态,生成日志再分析的系统。我最先介绍他,是我相信很多大数据项目中,数据采集是非常重要的,甚至比之后放到hadoop或者elasticsearch分析来得重要(ma fan)。因为采集需要适配各种不同的源头,每多一种源头就需要编写一类采集器。举例:美图公司为了采集数据,也自己开发了一个"育母蜘蛛"的采集框架。

Beats 包含了好几种beat.

1.   Filebeat 提供一种轻量型方法,用于转发和汇总日志与文件。Fb支持“断点续传“,而且当接收端(logstash)压力过大的时候,可以控制Fb减缓速度。他用来采集各种日志这类现成的文本数据。

2.   MetricBeat   用于从系统和服务收集指标。cpu, 内存等。MB还通过提供各种内部模块来支持从服务收集指标,如apache,nginx,mysql,redis等等

3.    Packetbeat  网络数据包采集器。 PB支持很多应用层协议,http,dns,mysql,redis等。特别他可以将捕获的数据先后进行decode,correlate, extract, group动作(数据格式统一化等处理)再发到elaticsearch。

4.   Winlogbeat  用于windows事件日志的采集。

5.   Auditbeat 收集linux审计框架的数据,和auditd相同。与 auditd 不同的是,Auditbeat 会组合相关消息到一个事件里面,避免被杂乱无章,重复及无意义的消息淹没。还可以用来监控文件目录的变化。

6.   Heartbeat, 主动探测服务的可用性。包括用ICMP, TCP和HTTP进行ping检测。

特别,以上这些beat都是基于libbeat 这个通用库,所以你也可以基于libbeat开发自己的采集器。





上一篇:Elastic Stack 介绍
下一篇:logstash 入门介绍