ELK: Beats Introduction

Filebeat运行

Filebeat简介

1.读取日志文件, 但不做数据的解析处理
2.保证数据”At Least Once” 至少被读取一次, 即数据不会丢失
3.其他能力
<1>处理多行数据
<2>解析JSON格式数据
<3>简单的过滤功能

Filebeat使用流程:

1.安装
2.配置filebeat.yml
3.配置模板-index template
4.配置Kibana Dashboards
5.运行

Filebeats配置文件:

Filebeat配置模板-index template

1.建议通过ES API来创建template, 如果不使用filebeat module功能
2.使用filebeat module功能的话就要从filebeat自带的template来设置

Filebeat配置Kibana Dashboard

Filebeat集成Kibana Dashboard, 用于快速展示数据
1.结合Modules使用
2.一次性全部导入

Filebeat运行

Filebeat常见架构

1.通过filebeat采集日志, 将日志发送给logstash进行日志处理(grok解析等), 接下来将数据发送给es, es将数据进行存储查询, 最后通过kibana进行可是展示
2.通过filebeat采集日志, 通过elasticsearch进行数据解析、存储、查询(Ingest Node), 最后给kibana进行可视化分析

Elasticsearch Ingest Node

1.是5.x新增的一个节点类型
<1>在数据写入es前(bulk/index操作)对数据进行处理
<2>可设置为独立的ingest node专门进行数据转换处理(node.ingest: true) <3>api endpoint为pipeline

Ingest Node-Pipeline

1.Pipeline由一些列processor组成, 类似logstash的filer plugin

2.Pipeline的API比较简单, 主要有如下4个:
<1>创建PUT
<2>获取GET
<3>删除DELETE
<4>模拟调试SIMULATE

3.Processor对应Logstash的Filter Plugin, 基本都有相应的关键字
<1>Convert
<2>Grok
<3>Date
<4>Gsub
<5>Join
<6>Json
<7>Remove
<8>Script对应Ruby code
4.注意处理解析错误的情况

5.日志处理中常用到的es的插件(可以直接通过ingest进行数据处理):

6.pipeline的使用比较简单, 在索引相关的api中都有pipeline的参数可以指定

7.filebeat可以在output.elasticsearch中指定pipeline

Filebeat Modules

1.提供很多开箱即用的module

2.配置位于module文件夹中, 如nginx module(module/nginx)的相关配置如下
<1>Prospector配置:位于access/config/nginx-access.yml
<2>Index Template配置:fields.yml
<3>Ingest Pipeline配置:access/ingest/default.json
<4>Kibana Dashboards配置:kibana

发表评论

电子邮件地址不会被公开。 必填项已用*标注