ELK集羣部署搭建

業內常用Elastic Stack的部署方案圖

在這裏插入圖片描述

各部件說明

  • Beats: 一個收集器,可以收集日誌文件、http數據包等等
  • Kafka:消息隊列,用來緩衝存放從Beats流向LogStash數據
  • Redis:也用作消息隊列(Zset),緩衝存放從Beats流向LogStash數據
  • LogStash:數據的處理器,使用多個Filter對數據進行預處理或者豐富數據
  • ElasticSearch:數據處理後的最終存儲位置,用於數據的存儲和索引查詢
  • Kibana:數據的可視化顯示效果
  • X-pack:對集羣進行一個安全監控驗證

常見數據流程

  • Logstash->Elasticsearch->Kibana
  • Beats->Elasticsearch->Kibana
  • Beats->Logstash->Elasticsearch->Kibana
  • Beats->Kafka/Redis->Logstash->Elasticsearch->Kibana

綜上所述總結

隨着流程的細化,系統可靠性得到提高,所以我們接下來選用Beats->Kafka/Redis->Logstash->Elasticsearch->Kibana數據流程作爲我們的解決方案。

案例背景

  • 對現有軌跡存儲方案,環境搭建,數據導入,數據測試,服務編寫,測試結果對比
  • 性能分析緯度: 數據量,時間範圍,空間範圍,空間類型
  • 數據量:1千萬,1億,10億條
  • 時間範圍:1天,1周,1月 時間跨度
  • 空間範圍:1平方公里,10平方公里,50 平方公里,
  • 空間類型:多邊形,圓形,矩形

案例分析

  • 數據來源較爲單一,可以使用PackageBeats或者LogStash直接進行數據採集
  • 基於穩定性思考,採用kafka進行彈性消息處理,避免LogStash宕機造成數據丟失
  • 數據不需要預處理,可以考慮從Beats->Kafka->ES,但是需要部署Kafka-connector
  • 保留LogStash,Beats->Kafka->LogStash->ES ,不需要部署Kafka-connector

案例部署方案圖

在這裏插入圖片描述

案例部署說明

  • Packetbeat:類似於抓包,從客戶端數據源抓取數據
  • Kafka:彈性消息隊列,緩衝數據源相關數據
  • LogStash:消息預處理過濾器,這裏主要是用來替代Kafka-connector連接器的作用
  • ElasticSearch:存儲處理後數據,這裏數據無需處理,直接存取即可
  • Kibana:對數據進行可視化效果展示

案例資源說明

服務名稱 IP 運行內存 硬盤大小 CPU
PacketBeat 192.168.62.10 2GB 20GB 酷睿i7-2820QM @ 2.30GHz
Kafka 192.168.62.11 2GB 20GB 酷睿i7-2820QM @ 2.30GHz
Logstash 192.168.62.12 2GB 20GB 酷睿i7-2820QM @ 2.30GHz
ElasticSearch 192.168.62.13 2GB 20GB 酷睿i7-2820QM @ 2.30GHz
ElasticSearch 192.168.62.14 2GB 20GB 酷睿i7-2820QM @ 2.30GHz
ElasticSearch 192.168.62.15 2GB 20GB 酷睿i7-2820QM @ 2.30GHz
Kibana 192.168.62.15 2GB 20GB 酷睿i7-2820QM @ 2.30GHz
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章