ELK之日志查詢、收集與分析系統


 

 


項目由來

  (1)開發人員不能登錄線上服務器查看詳細日志,經過運維周轉費時費力
  (2)日志數據分散在多個系統,難以查找與整合
  (3)日志數據量巨大,查詢速度太慢,無法滿足需求
  (4)無法全局掌控項目運行狀況
  (5)日志數據查詢不夠實時
  (6)數據分析人員不會寫代碼,無法分析統計數據
  (7).........

 

 

框架里包含的組件

  Logstash+Elasticsearch+Kibana(ELK
  Logstash:監控,過濾,收集日志。
  Elasticsearch:存儲日志,提供搜索功能。
  kibana:提供web界面,支持查詢,統計,和圖表展現。
  filebeat:輕量級的日志收集工具。
  很多公司都采用該架構構建分布式日志系統,包括新浪微博,freewheel,暢捷通等

  注意:在應用端收集日志時,建議用filebeat。

 

 

 

 

效果圖

 

 

 

 

 

 

架構設計

  (1)使用filebeat
    架構設計1:filebeat(1.3)-->logstash(parse)-->es集群-->kibana--ngix
        缺點:如果logstash出問題會導致filebeat收集的數據丟失
    架構設計2:filebeat(1.3)-->logstash(parse)[loadbalance]-->es集群-->kibana--ngix
      filebeat和>logstash耦合性太高
    架構設計3filebeat(1.3)(3台)-->redis-->logstash(parse)-->es集群-->kibana--ngix(可選)  (我這里,目前為了學習,走這條線路)
      里面redis是一個單線程的實例,redis單線程每秒處理能力一般是10W次左右。
    架構設計4:filebeat(5.0)-->redis/kafka-->logstash(parse)-->es-->kibana--ngix
      filebeat(1.3)不支持輸出到kafka,5.x版本中支持輸出到kafka
  (2)不使用filebeat
      logstash-->kafka-->logstash(parse)-->es-->kibana--ngix
        里面kafka支持水平擴展,可以使用多分區,支持多線程並行執行。
        在應用端收集日志的話,logstash比較重量級,性能消耗比filebeat大
  (3)Filebeat用於日志收集和傳輸,相比Logstash更加輕量級和易部署,對系統資源開銷更小。

 

后續貼圖。

 

 

 

 

ELK實時日志分析平台環境部署--完整記錄

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM