H__D  

Beats介绍

  Beats 是轻量型数据采集器,Beats 是一个免费且开放的平台,集合了多种单一用途数据采集器。它们从成百上千或成千上万台机器和系统向 Logstash 或 Elasticsearch 发送数据。

  官网:https://www.elastic.co/cn/beats/

  文档:https://www.elastic.co/guide/en/beats/libbeat/current/index.html

  架构图

  

Filebeat介绍

  FileBeat 是一款轻量型日志采集器,当您要面对成百上千、甚至成千上万的服务器、虚拟机和容器生成的日志时,请告别 SSH 吧。Filebeat 将为您提供一种轻量型方法,用于转发和汇总日志与文件,让简单的事情不再繁杂。

Filebeat使用

使用准备:

  系统:CentOS 7.4

  本例使用的是ES 7.6.1版,Filebeat也是7.6.1版

  ES安装参考:【ElasticSearch】 ElasticSearch安装(一)

使用步骤

  1、下载Filebeat,filebeat-7.6.1-linux-x86_64.tar.gz

  2、解压到指定目录

    命令:tar -zxvf filebeat-7.6.1-linux-x86_64.tar.gz /data/soft/

    Filebeat目录结构如下:

       

    目录布局

类型 描述 默认位置 配置选项
home Filebeat安装的主目录。   path.home
bin 二进制文件的位置。 {path.home}/bin  
config 配置文件的位置。 {path.home} path.config
data 永久数据文件的位置。 {path.home}/data path.data
logs Filebeat创建的日志的位置。 {path.home}/logs path.logs

  3、在主目录中,自定义一个测试配置文件test.yml,内容如下:

 1 # 输入
 2 filebeat.inputs:
 3   # 标准输入    
 4 - type: stdin
 5   enabled: true
 6 
 7 # 输出
 8 # 输出到控制台
 9 output.console:
10   pretty: true
11   enable: true 

  4、启动filebeat,指定配置文件运行filebeat

    命令:./filebeat -e -c test.yml

  5、在控制台输入hello,效果如下:

    

  6、命令说明

    命令:./filebeat -e -c filebeat.yml

    • -c:配置文件位置
    • -path.logs:日志位置
    • -path.data:数据位置
    • -path.home:家位置
    • -e:关闭日志输出
    • -d 选择器:启用对指定选择器的调试。 对于选择器,可以指定逗号分隔的组件列表,也可以使用-d“*”为所有组件启用调试.例如,-d“publish”显示所有“publish”相关的消息。

    后台启动filebeat

    • nohup ./filebeat -e -c filebeat.yml >/dev/null 2>&1 & 将所有标准输出及标准错误输出到/dev/null空设备,即没有任何输出
    • nohup ./filebeat -e -c filebeat.yml > filebeat.log &

     关闭命令:

    • 查看filebeat进程:ps -ef|grep filebeat
    • 杀死进程:kill pid

读取文件

  filebeat读取文件示例

  1、自定义一个测试配置文件test-log.yml,内容如下:

 1 # 自定义测试配置文件test-log.yml
 2 
 3 # 输入
 4 filebeat.inputs:
 5 - type: log
 6   enabled: true
 7   paths:
 8     - /data/logs/*.log
 9 # 输出
10 output.console:
11   pretty: true
12   enable: true

  2、指定配置文件运行filebeat

    命令:./filebeat -e -c test-log.yml

  3、增加日志文件,并添加内容到日志文件中

    命令:echo "hello" >> /data/logs/test.log

    命令:echo "world" >> /data/logs/test.log

  4、查看filebeat控制台输出内容,如下:

    

输出到Elasticsearch

  1、自定义一个测试配置文件test-log.yml,内容如下:

 1 # 自定义测试配置文件test-log.yml
 2 
 3 # 输入
 4 filebeat.inputs:
 5 - type: log
 6   enabled: true
 7   paths:
 8     - /data/logs/*.log
 9 
10 # 指定索引的分区数
11 setup.template.settings:
12   index.number_of_shards: 3
13 
14 # 输出到指定ES的配置
15 output.elasticsearch:
16   hosts: ["127.0.0.1:9200"]
17   username: "elastic"
18   password: "123456"

  2、指定配置文件运行filebeat

    命令:./filebeat -e -c test-log.yml

  3、增加日志文件,并添加内容到日志文件中

    命令:echo "abc" >> /data/logs/test.log

    命令:echo "123" >> /data/logs/test.log

  4、查看ES索引数据,如下:

    增加了2个索引

    

    索引数据

    

 

posted on 2020-06-21 12:43  H__D  阅读(1636)  评论(0编辑  收藏  举报