天天看點

ELK+Filebeat 實作多台伺服器的日志采集和管理,趕快用起來吧

作者:程式猿阿嘴

一、前言

在閱讀這篇博文前,請先了解《如何快速搭建一個簡易的ELK日志分析系統》一文,在這篇博文中我們可以了解學習到EKL系統的搭建,同時實作了讀取一個固定日志檔案中的内容,并進行分析的示例。

在本文中,我們通過引入FileBeats元件,Beats是一個“搬運工”,通過監聽檔案變化,将分布在各個伺服器上的日志搬運到日志收集伺服器(Logstash服務)上,進而實作了日志的集中管理和分析。

二、所需環境

ELK+Filebeat 實作多台伺服器的日志采集和管理,趕快用起來吧

三、部署FileBeat

分别在192.168.1.8,192.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系統的高可用性,我們還可以把Elasticsearch和Logstach部署成叢集,而Kibana是可視化工具,沒必要進行叢集化部署。後續我們再來嘗試如何實作ELK的高可用性部署。

感謝閱讀,希望對你有所幫助 :)

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

繼續閱讀