zoukankan      html  css  js  c++  java
  • ELK 使用filebeat替代Logstash收集日志

    使用beats采集日志

    之前也介绍过beats是ELK体系中新增的一个工具,它属于一个轻量的日志采集器,以上我们使用的日志采集工具是logstash,但是logstash占用的资源比较大,没有beats轻量,所以官方也推荐使用beats来作为日志采集工具。而且beats可扩展,支持自定义构建。

    官方介绍:

    https://www.elastic.co/cn/products/beats

    在 192.168.77.134 上安装filebeat,filebeat是beats体系中用于收集日志信息的工具:

    [root@data-node2 ~]# wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.0.0-x86_64.rpm
    [root@data-node2 ~]# rpm -ivh  filebeat-6.0.0-x86_64.rpm

    安装完成之后编辑配置文件:

    [root@data-node2 ~]# vim /etc/filebeat/filebeat.yml  # 增加或者更改为以下内容
    filebeat.prospectors:
    - type: log
       #enabled: false 这一句要注释掉
       paths:
          - /var/log/messages  # 指定需要收集的日志文件的路径
    
    #output.elasticsearch:  # 先将这几句注释掉
      # Array of hosts to connect to.
    #  hosts: ["localhost:9200"]
    
    output.console:  # 指定在终端上输出日志信息
      enable: true

    配置完成之后,执行以下命令,看看是否有在终端中打印日志数据,有打印则代表filebeat能够正常收集日志数据:

    [root@data-node2 ~]# /usr/share/filebeat/bin/filebeat -c /etc/filebeat/filebeat.yml

    以上的配置只是为了测试filebeat能否正常收集日志数据,接下来我们需要再次修改配置文件,将filebeat作为一个服务启动:

    [root@data-node2 ~]# vim /etc/filebeat/filebeat.yml
    #output.console:  把这两句注释掉
    #  enable: true
    
    # 把这两句的注释去掉
    output.elasticsearch:
      # Array of hosts to connect to.
      hosts: ["192.168.77.128:9200"]  # 并配置es服务器的ip地址

    修改完成后就可以启动filebeat服务了:

    [root@data-node2 ~]# systemctl start filebeat
    [root@data-node2 ~]# ps axu |grep filebeat
    root       3021  0.3  2.3 296360 11288 ?        Ssl  22:27   0:00 /usr/share/filebeat/bin/filebeat -c /etc/filebeat/filebeat.yml -path.home /usr/share/filebeat -path.config /etc/filebeat -path.data /var/lib/filebeat -path.logs /var/log/filebeat
    root       3030  0.0  0.1 112660   960 pts/0    S+   22:27   0:00 grep --color=auto filebeat

    启动成功后,到es服务器上查看索引,可以看到新增了一个以filebeat-6.0.0开头的索引,这就代表filesbeat和es能够正常通信了:

    [root@master-node ~]# curl '192.168.77.128:9200/_cat/indices?v' 
    health status index                     uuid                   pri rep docs.count docs.deleted store.size pri.store.size
    green  open   system-syslog-2018.03     bUXmEDskTh6fjGD3JgyHcA   5   1      73076            0     24.8mb         11.6mb
    green  open   nginx-test-2018.03.04     GdKYa6gBRke7mNgrh2PBUA   5   1         91            0        1mb        544.8kb
    green  open   .kibana                   6JfXc0gFSPOWq9gJI1ZX2g   1   1          3            0     26.9kb         13.4kb
    green  open   filebeat-6.0.0-2018.03.04 MqQJMUNHS_OiVmO26NEWTw   3   1         66            0     64.5kb         39.1kb
    [root@master-node ~]# 

    es服务器能够正常获取到索引后,就可以到kibana上配置这个索引了:
    搭建ELK日志分析平台(下)—— 搭建kibana和logstash服务器
    搭建ELK日志分析平台(下)—— 搭建kibana和logstash服务器

    以上这就是如何使用filebeat进行日志的数据收集,可以看到配置起来比logstash要简单,而且占用资源还少。

  • 相关阅读:
    【网易官方】极客战记(codecombat)攻略-地牢-矮人骚乱
    Digital Twin——IoT的下一个浪潮
    PPT |《Kubernetes的兴起》
    视频课程 | Kubernetes的兴起
    干货 | 京东云原生容器—SpringCloud实践(一)
    干货 | 独创分布式网络负载均衡最佳实践
    视频课程 | 云原生下的Serverless浅谈
    ubuntu不能联网的问题
    boost库在windows上的安装
    python tkinter
  • 原文地址:https://www.cnblogs.com/zhangmingda/p/9413128.html
Copyright © 2011-2022 走看看