认识Beats

Beats是用于单用途数据托运人的平台。它们以轻量级代理的形式安装,并将来自成百上千台机器的数据发送到Logstash或Elasticsearch。

(画外音:通俗地理解,就是采集数据,并上报到Logstash或Elasticsearch)

Beats对于收集数据非常有用。它们位于你的服务器上,将数据集中在Elasticsearch中,Beats也可以发送到Logstash来进行转换和解析。

为了捕捉(捕获)数据,Elastic提供了各种Beats:

Beats可以直接(或者通过Logstash)将数据发送到Elasticsearch,在那里你可以进一步处理和增强数据,然后在Kibana中将其可视化。

Filebeat

第1步:安装Filebeat

第2步:配置Filebeat

配置文件:filebeat.yml

为了配置Filebeat:

1. 定义日志文件路径

对于最基本的Filebeat配置,你可以使用单个路径。例如:

filebeat.inputs:
- type: logenabled: truepaths:- /var/log/*.log

在这个例子中,获取在/var/log/*.log路径下的所有文件作为输入,这就意味着Filebeat将获取/var/log目录下所有以.log结尾的文件。

为了从预定义的子目录级别下抓取所有文件,可以使用以下模式:/var/log/*/*.log。这将抓取/var/log的子文件夹下所有的以.log结尾的文件。它不会从/var/log文件夹本身抓取。目前,不可能递归地抓取这个目录下的所有子目录下的所有.log文件。

(画外音:

  假设配置的输入路径是/var/log/*/*.log,假设目录结构是这样的:

  

  那么只会抓取到2.log和3.log,而不会抓到1.log和4.log。因为/var/log/aaa/ccc/1.log和/var/log/4.log不会被抓到。

2. 如果你发送输出目录到Elasticsearch(并且不用Logstash),那么设置IP地址和端口以便能够找到Elasticsearch:

output.elasticsearch:hosts: ["192.168.1.42:9200"]

3. 如果你打算用Kibana仪表盘,可以这样配置Kibana端点:

setup.kibana:host: "localhost:5601"

4. 如果你的Elasticsearch和Kibana配置了安全策略,那么在你启动Filebeat之前需要在配置文件中指定访问凭据。例如:

output.elasticsearch:hosts: ["myEShost:9200"]username: "filebeat_internal"password: "{pwd}"
setup.kibana:host: "mykibanahost:5601"username: "my_kibana_user"  password: "{pwd}"

第3步:配置Filebeat以使用Logstash

如果你想使用Logstash对Filebeat收集的数据执行额外的处理,那么你需要将Filebeat配置为使用Logstash。

output.logstash:hosts: ["127.0.0.1:5044"]

第4步:在Elasticsearch中加载索引模板

在Elasticsearch中,索引模板用于定义设置和映射,以确定如何分析字段。(画外音:相当于定义索引文档的数据结构,因为要把采集的数据转成标准格式输出)

Filebeat包已经安装了推荐的索引模板。如果你接受filebeat.yml中的默认配置,那么Filebeat在成功连接到Elasticsearch以后会自动加载模板。如果模板已经存在,不会覆盖,除非你配置了必须这样做。

通过在Filebeat配置文件中配置模板加载选项,你可以禁用自动模板加载,或者自动加载你自己的目标。

配置模板加载

默认情况下,如果Elasticsearch输出是启用的,那么Filebeat会自动加载推荐的模板文件 ——— fields.yml。

  • 加载不同的模板
  • setup.template.name: "your_template_name"
    setup.template.fields: "path/to/fields.yml"

    覆盖一个已存在的模板

  • setup.template.overwrite: true

    禁用自动加载模板

  • setup.template.enabled: false

    修改索引名称

  • # 默认情况下,Filebeat写事件到名为filebeat-6.3.2-yyyy.MM.dd的索引,其中yyyy.MM.dd是事件被索引的日期。为了用一个不同的名字,你可以在Elasticsearch输出中设置index选项。例如:
    output.elasticsearch.index: "customname-%{[beat.version]}-%{+yyyy.MM.dd}"
    setup.template.name: "customname"
    setup.template.pattern: "customname-*"
    setup.dashboards.index: "customname-*"

手动加载模板

./filebeat setup --template -E output.logstash.enabled=false -E 'output.elasticsearch.hosts=["localhost:9200"]'

第5步:设置Kibana dashboards

Filebeat附带了Kibana仪表盘、可视化示例。在你用dashboards之前,你需要创建索引模式,filebeat-*,并且加载dashboards到Kibana中。为此,你可以运行setup命令或者在filebeat.yml配置文件中配置dashboard加载。

./filebeat setup --dashboards

第6步:启动Filebeat

./filebeat -e -c filebeat.yml -d "publish"

第7步:查看Kibana仪表板示例

http://127.0.0.1:5601

完整的配置

#=========================== Filebeat inputs ==============
filebeat.inputs:- type: logenabled: truepaths:- /var/log/*.log#============================== Dashboards ===============
setup.dashboards.enabled: false#============================== Kibana ==================
setup.kibana:host: "192.168.101.5:5601"#-------------------------- Elasticsearch output ---------
output.elasticsearch:hosts: ["localhost:9200"]

启动Elasticsearch

  /usr/local/programs/elasticsearch/elasticsearch-6.3.2/bin/elasticsearch

启动Kibana

  /usr/local/programs/kibana/kibana-6.3.2-linux-x86_64/bin/kibana

设置dashboard

  ./filebeat setup --dashboards

启动Filebeat

  ./filebeat -e -c filebeat.yml -d "publish"

浏览器访问  http://192.168.101.5:5601

 查看索引

请求:

curl -X GET "localhost:9200/_cat/indices?v"

响应:

health status index                     uuid                   pri rep docs.count docs.deleted store.size pri.store.size
yellow open   bank                      59jD3B4FR8iifWWjrdMzUg   5   1       1000            0    475.1kb        475.1kb
green  open   .kibana                   DzGTSDo9SHSHcNH6rxYHHA   1   0        153           23    216.8kb        216.8kb
yellow open   filebeat-6.3.2-2018.08.08 otgYPvsgR3Ot-2GDcw_Upg   3   1        255            0     63.7kb         63.7kb
yellow open   customer                  DoM-O7QmRk-6f3Iuls7X6Q   5   1          1            0      4.5kb          4.5kb

其它相关

《Elasticsearch 快速开始》

转载于:https://www.cnblogs.com/cjsblog/p/9445792.html

开始使用Filebeat相关推荐

  1. 2021年大数据ELK(二十):FileBeat是如何工作的

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 FileBeat是如何工作的 一.input和harvester 1.inpu ...

  2. 2021年大数据ELK(十九):使用FileBeat采集Kafka日志到Elasticsearch

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 使用FileBeat采集Kafka日志到Elasticsearch 一.需求分 ...

  3. 2021年大数据ELK(十八):Beats 简单介绍和FileBeat工作原理

    全网最详细的大数据ELK文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 Beats 简单介绍和FileBeat工作原理 一.Beats 二.FileB ...

  4. ELK教程3:logstash的部署、SpringBoot整合ELK+Filebeat

    本篇文章主要讲解如下安装Logstash,logstash依赖于Java环境,首先安装Java,安装脚本如下: yum install java logstash安装 Logstash的安装脚本如下: ...

  5. 一篇文章搞懂Filebeat

    本文使用的Filebeat是7.7.0的版本,文章将从如下几个方面说明: Filebeat是什么,可以用来干嘛 Filebeat的原理是怎样的,怎么构成的 Filebeat应该怎么玩 Filebeat ...

  6. filebeat.yml配置和logstash.conf

    (1) filebeat.prospectors: - input_type: log paths: - /log/abcbillserver.log #- /home/haoren/data/fil ...

  7. 写给大忙人的ELK最新版6.2.4学习笔记-Logstash和Filebeat解析(java异常堆栈下多行日志配置支持)...

    接前一篇CentOS 7下最新版(6.2.4)ELK+Filebeat+Log4j日志集成环境搭建完整指南,继续对ELK. logstash官方最新文档https://www.elastic.co/g ...

  8. filebeat配置详解

    filebeat5.x配置详解 https://blog.yuzunzhi.com/filebeat%E9%85%8D%E7%BD%AE%E8%AF%A6%E8%A7%A3/ https://www. ...

  9. ELK6.0已取消filebeat配置document_type

    原文出处:https://blog.51cto.com/kexiaoke/2092029 一.起因  在使用ELK5.5的时候,如果遇到需要在同一台机器上收集不同类型的日志,比如:同时收集一台机器上的 ...

  10. filebeat启动多个_【翻译】Filebeat相关(一)

    原文:https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-overview.html#filebeat-overview F ...

最新文章

  1. 无线节能信标核心板V4-测试-2021-4-3
  2. ubunut 下关闭apache服务自动启动
  3. [C++对象模型][9]虚继承与虚函数表
  4. 敏捷软件开发实践-Sprint Status Track
  5. jQuery.proxy debug
  6. matlab机械臂工作空间代码_【ROS-Moveit!】机械臂控制探索(3)——基于python的API示例代码分析...
  7. Codeforces Round #742 (Div. 2) F. One-Four Overload 构造 + 二分图染色
  8. 【~~~】POJ-1006
  9. python怎么发送微信给自己_Python新手教程:Python微信定时自动给【女朋友】发送天气预报...
  10. 某计算机系统20位地址线 8位数据线,同济大学2009-2010(1)微机原理期终考试试题(B卷)...
  11. linux 查看进程与端口以及内存资源
  12. 小鹏汽车面试经验分享
  13. Fiddler:安卓抓包配置
  14. 【C语言】下标法 编写数组元素的输入与输出
  15. Vue-cli的安装与基本操作
  16. 开源高手推荐十大最流行开源软件
  17. STM32F103--BKP
  18. JavaScript——移动端网页特效
  19. vue中 @scroll的使用
  20. 如何应用BIM技术加快项目进度?

热门文章

  1. resizableImageWithCapInsets:方法的探析 (转载笔记)
  2. cocoaPods 创建自己的依赖库
  3. CentOS 6.2安装配置pacemaker
  4. pyqt5-两个窗口之间相互显示隐藏
  5. Qt5学习笔记之QQ登录界面三:添加图片资源
  6. Linux下打开Android调试器DDMS的方法
  7. js中获取时间new date()的用法和获取时间戳
  8. Vue学习笔记进阶篇——多元素及多组件过渡
  9. 字符设备驱动笔记——中断方式按键驱动之linux中断处理结构(五)
  10. 【排序算法】冒泡排序的三种方法