ElasticSearch實戰-日志監控平台


1.概述

  在項目業務倍增的情況下,查詢效率受到影響,這里我們經過討論,引進了分布式搜索套件——ElasticSearch,通過分布式搜索來解決當下業務上存在的問題。下面給大家列出今天分析的目錄:

  • ElasticSearch 套件介紹
  • ElasticSearch 應用場景和案例
  • 平台架構

  下面開始今天的內容分享。

2.ElasticSearch 套件

2.1LogStash

  LogStash是一個開源的、免費的日志收集工具,屬於Elastic家族的一員,負責將收集的日志信息輸送到ElasticSearch,為ElasticSearch提供數據源。

2.2ElasticSearch

  ElasticSearch是一個開源的分布式搜索引擎,具備高可靠性,支持非常多的企業級搜索用例。像Solr4一樣,是基於Lucene構建的。支持時間索引和全文檢索。官網:https://www.elastic.co 它對外提供一系列基於Java和HTTP的API,用於索引、檢索、修改大多數配置。

2.3 Kibana

  Kibana也是開源和免費的工具,同樣也是Elastic家族的一員,它可以幫助我們匯總、分析和搜索重要數據日志,並且提供友好的Web可視化界面。它可以為LogStash和ElasticSearch提供一個可視化的Web界面。

  下面我們來看看ElasticSearch的應用場景和案例。

3.ElasticSearch 應用場景和案例

  在面對實時海量數據查詢,實時搜索,全文搜索,ElasticSearch 都能夠很好的去勝任,它是基於 Lucene、RESTful、分布式、面向雲計算設計、實時搜索、全文搜索、穩定、高可靠、可擴展、安裝和使用方便。下面給大家介紹一些場景的案例。

  • Github

  這個開源的托管平台,對於我們開發者來說,並不陌生,我們基本每天都會去訪問Github,而Github使用ElasticSearch來實現搜索,運行在多個集群上。由於代碼搜索索引很大,Github專門指定一個集群。Github使用Elasticsearch搜索20TB的數據,包括13億的文件和1300億行的代碼。

  • Mozilla

  Mozilla公司因Firefox而聞名,它目前使用Elasticsearch將測試的結果以JSON的格式進行存儲,開發人員可以非常方便的查找BUG。

  • Sony

  Sony公司使用Elasticsearch作為信息搜索引擎,以提供對外界的查詢響應。

  另外,還有很多企業也用到了ElasticSearch去作為一個分布式搜索引擎,這里就不一一列舉了。

4.平台架構

  下面,我給大家用一個圖來說明日志監控平台的架構,如下圖所示:

  通過上圖,我們可以清晰的看到日志平台整個流向過程,下面我給大家來解釋圖中的各個環節的含義。首先,多個獨立的Agent,這里就是圖左邊的三個LogStash節點,他們負責收集不同來源的數據,由一個Indexer負責進行匯總和分析數據,在這個當中有一個中間過程,這里我們使用了Broker,用Redis來實現這部分功能,其作用充當一個緩沖區,之后由ElasticSearch負責存儲和搜索數據,最后由前段的Kibana可視化我們收集的數據。

  這里說明幾點需要注意的地方:

  • 采用LogStash收集各種日志數據,其類型可以是:系統日志、文件、Redis、MQ等等。
  • Broker作為遠程代理和中心代理的緩沖區,使用Redis進行實現,原因有二:其一,可以提高系統的性能;其二,可以提高系統的高可用性,當中心代理提取數據失敗時,數據保存在Redis中,可以規避數據丟失的風險。
  • 中心代理使用LogStash,負責從Broker中獲取數據,可以執行相關的分析和處理,它提供有Filter功能。
  • ElasticSearch用於存儲最終的數據,並對外提供搜索功能,基於Restful。
  • Kibana提供一個簡單、豐富的Web View可視化界面,用於可視化ElasticSearch集群中的數據,支持各種查詢、統計和展示。

5.總結

  這篇博客只是給大家入個門,讓大家通過一個日志監控平台的案例去熟悉ElasticSearch套件的使用,以及它的背景。后面我會專門用於一個ElasticSearch實戰系列,來給大家分析這部分內容,包括平台的搭建部署,到平台的實現這一整個流程,這篇文章大家能夠有個印象,熟悉各個套件的作用即可。

6.結束語

  這篇博客就和大家分享到這里,如果大家在研究學習的過程當中有什么問題,可以加群進行討論或發送郵件給我,我會盡我所能為您解答,與君共勉!


免責聲明!

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



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