ELK+Filebeat 实现多台服务器的日志采集和管理,赶快用起来吧!

>>强大,10k+点赞的 SpringBoot 后台管理系统竟然出了详细教程!

点击关注公众号,利用碎片时间学习

一、前言

在阅读这篇博文前,请先了解《如何快速搭建一个简易的ELK日志分析系统》一文,在这篇博文中我们可以了解学习到EKL系统的搭建,同时实现了读取一个固定日志文件中的内容,并进行分析的示例。

在本文中,我们通过引入FileBeats组件,Beats是一个“搬运工”,通过监听文件变化,将分布在各个服务器上的日志搬运到日志收集服务器(Logstash服务)上,从而实现了日志的集中管理和分析。

二、所需环境

ELK+Filebeat 实现多台服务器的日志采集和管理,赶快用起来吧!

三、部署FileBeat

分别在192.168.1.8192.168.1.9上执行下面安装步骤。

1、下载

#当前目录/usr/local/soft/ELKB
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.3.1-linux-x86_64.tar.gz

2、解压

#当前目录/usr/local/soft/ELKB
tar -zvxf filebeat-6.3.1-linux-x86_64.tar.gz 

3、修改配置文件

默认开启了Elasticsearch的输出,需要注释掉。

修改/usr/local/soft/ELKB/filebeat-6.3.1-linux/filebeat.yml配置文件,添加如下内容:

filebeat.inputs:
 enabled: true
 paths:
     - /usr/local/nginx/logs/access.log #nginx访问日志存放目录
output.logstash:
  # The Logstash hosts
  hosts: ["192.168.1.8:5044"]

4、启动filebeat

#当前目录/usr/local/soft/ELKB/filebeat-6.3.1-linux/
./filebeat -e -c filebeat.yml 

后台启动:

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

5、出现如下界面,说明启动成功。

ELK+Filebeat 实现多台服务器的日志采集和管理,赶快用起来吧!

四、修改Logstash中的配置文件nginx.conf

在上一篇文章中,我们在nginx.conf配置输入源采用固定的文件,如下所示:

input { 
  file{
        path => "/usr/local/nginx/logs/access.log"
        start_position => "beginning"
        type => "nginx_access_log"
  }
}

在这里,需要把固定文件输入源改成Beats,如下所示:

input {
  beats {
    port => 5044
 type => "nginx_access_log"
  }

修改配置文件后,重新启动Logstash即可。

五、访问nginx,产生日志

分别访问http://192.168.1.8/http://192.168.1.9/,每访问一次,就会产生一条访问日志,可以多访问几次,产生日志。

六、使用Kibana查看Elasticsearch索引数据

在上一篇博文中,我们已经配置了相关索引检索,这里直接点击“Disconer”菜单查看日志,如下所示:

ELK+Filebeat 实现多台服务器的日志采集和管理,赶快用起来吧!

通过分析日志,发现有些日志是来至node08节点(192.168.1.8),有些是来至node09节点(192.168.1.9),这就说明在ELK系统中,收集了来至两个服务器上的Nginx的访问日志。

七、总结

通过上述过程,我们已经实现了在多个服务器上部署FileBeat实现日志的动态采集和多服务器上日志的采集。为了实现ELK系统的高可用性,我们还可以把ElasticsearchLogstach部署成集群,而Kibana是可视化工具,没必要进行集群化部署。后续我们再来尝试如何实现ELK的高可用性部署。

感谢阅读,希望对你有所帮助 🙂 

来源:blog.csdn.net/hou_ge/article/details/106182502

欢迎一键三

推荐:

最全的java面试题库

ELK+Filebeat 实现多台服务器的日志采集和管理,赶快用起来吧!
PS:因为公众号平台更改了推送规则,如果不想错过内容,记得读完点一下“在看”,加个“星标”,这样每次新文章推送才会第一时间出现在你的订阅列表里。“在看”支持我们吧!

原文始发于微信公众号(Java笔记虾):ELK+Filebeat 实现多台服务器的日志采集和管理,赶快用起来吧!