什麼是 ELK Stack?
ELK Stack 是一個縮略字,用於描述由三個熱門專案組成的堆疊:Elasticsearch、Logstash 和 Kibana。ELK Stack 通常稱為 Elasticsearch,可讓您彙總來自所有系統和應用程式的日誌、分析這些日誌,並為應用程式和基礎設施監控、更快的疑難排解、安全分析建立視覺化等。
E = Elasticsearch
Elasticsearch 是一個建置在 Apache Lucene 上的分散式搜尋和分析引擎。Elasticsearch 支援各種語言、高效能和無結構描述的 JSON 文件,是各種日誌分析和搜尋使用案例的理想選擇。
如需詳細資訊,請參閱什麼是 Elasticsearch?
2021 年 1 月 21 日,Elastic NV 宣佈,他們將變更軟體授權策略,不會根據許可的 Apache 授權版本 2.0 (ALv2) 授權發佈 Elasticsearch 和 Kibana 的新版本。相反地,將根據 Elastic 授權提供此軟體的新版本,且根據 Elastic 授權或 SSPL 提供原始程式碼。這些授權不是開放原始碼,也不向使用者提供相同的自由。為了確保安全、高品質、完全開放原始碼的搜尋和分析套件,您可以使用 OpenSearch 專案,此專案是一個社群驅動型 ALv2 許可的開放原始碼 Elasticsearch 和 Kibana 分支。
L = Logstash
Logstash 是一種開放原始碼資料擷取工具,可讓您從各種來源收集資料、轉換資料並將資料傳送到所需目的地。憑藉預先建置的篩選條件和對 200 多個外掛程式的支援,Logstash 可讓使用者輕鬆擷取資料,而不管資料來源或類型如何。
Logstash 是一種輕量型、開放原始碼的伺服器端資料處理管道,可讓您從各種來源收集資料,動態轉換資料,並將其傳送至所需目的地。它最常用作開放原始碼分析和搜尋引擎 Elasticsearch 的資料管道。由於它與 Elasticsearch 密切整合,具有强大的日誌處理功能,以及具有 200 多個預先建置的可協助您輕鬆為資料編製索引的開放原始碼外掛程式,因此 Logstash 是將資料載入到 Elasticsearch 的熱門選擇。
輕鬆載入非結構化資料
Logstash 可讓您輕鬆地從各種資料來源 (包括系統日誌、網站日誌和應用程式伺服器日誌) 擷取非結構化資料。
預先建置的篩選條件
Logstash 提供了預先建置的篩選條件,因此您可以輕鬆地轉換常見資料類型,在 Elasticsearch 中為資料編製索引,並開始査詢,而無需建置自訂資料轉換管道。
靈活的外掛程式架構
GitHub 上已有 200 多個外掛程式可用,可能已建置您自訂資料管道所需的外掛程式。但是如果沒有適合您需求的一個外掛程式,您可以自己輕鬆建立一個外掛程式。
K = Kibana
Kibana 是一種資料視覺化和探索工具,用於日誌和時間序列分析、應用程式監控和操作智慧使用案例。它提供了强大且易於使用的功能,如長條圖、折線圖、圓餅圖、熱度圖和內建地理空間支援。此外,它還與熱門分析和搜尋引擎 Elasticsearch 密切整合,使 Kibana 成為視覺化 Elasticsearch 中存放的資料的預設選擇。
2021 年 1 月 21 日,Elastic NV 宣佈,他們將變更軟體授權策略,不會根據許可的 Apache 授權版本 2.0 (ALv2) 授權發佈 Elasticsearch 和 Kibana 的新版本。相反地,將根據 Elastic 授權提供此軟體的新版本,且根據 Elastic 授權或 SSPL 提供原始程式碼。這些授權不是開放原始碼,也不向使用者提供相同的自由。為了確保開放原始碼社群和我們的客戶繼續擁有安全、高品質、完全開放原始碼的搜尋和分析套件,我們引進了 OpenSearch 專案,此專案是一個社群驅動型 ALv2 許可的開放原始碼 Elasticsearch 和 Kibana 分支。OpenSearch 套件由搜尋引擎、OpenSearch 及視覺化和使用者界面 OpenSearch Dashboards 組成。
您可以在內部部署、Amazon Elastic Compute Cloud (Amazon EC2) 上或在 Amazon OpenSearch Service 的 Apache 2.0 授權版本 (最高版本 7.10.2) 上執行 Kibana。OpenSearch Dashboards 是 Kibana 的開放原始碼替代方案,Kibana 也可自行管理。它源自 Kibana 最近的開放原始碼版本 (7.10.2)。它包含許多進步,並透過 OpenSearch 專案取得良好的支援。透過內部部署或 Amazon EC2 部署,您負責佈建基礎設施、安裝 Kibana 或 OpenSearch Dashboards 軟體以及管理基礎設施。使用 OpenSearch Service,Kibana 或 OpenSearch Dashboards 將作為全受管服務隨網域自動部署,自動處理用於管理叢集的所有繁重工作。
互動式圖表
Kibana 提供直觀的圖表和報告,您可以使用它們以互動方式瀏覽大量日誌資料。您可以動態地拖動時間視窗,放大和縮小特定的資料子集,並向下切入報告以從資料中擷取可行的洞察。
製圖支援
Kibana 隨附强大的地理空間功能,因此您可以在資料上無縫地將地理資訊分層,並在地圖上視覺化結果。
預先建置的彙總和篩選條件
使用 Kibana 預先建置的彙總和篩選條件,您只需幾個步驟即可執行各種分析,例如長條圖、前 n 個查詢和趨勢。
易於存取的儀表板
您可以輕鬆設定儀表板和報告,並與其他人共享。您只需一個瀏覽器即可檢視和探索資料。
ELK Stack 如何運作?
- Logstash 可擷取、轉換資料並將其傳送至正確的目的地。
- Elasticsearch 可索引、分析及搜尋擷取的資料。
- Kibana 可視覺化分析結果。
ELK Stack 有何功能?
ELK Stack 可用於解決各種問題,包括日誌分析、文件搜尋、安全資訊和事件管理 (SIEM) 以及可觀察性。它提供搜尋和分析引擎、資料擷取和視覺化。
為什麼 ELK Stack 很重要?
ELK Stack 滿足了日誌分析領域的需求。隨著越來越多的 IT 基礎設施遷移到公有雲端,您需要一個日誌管理和分析解決方案,來監控該基礎設施並處理伺服器日誌、應用程式日誌和點擊流。 ELK Stack 為開發人員和 DevOps 工程師提供了一個簡單而強大的日誌分析解決方案,以取得有關故障診斷、應用程式效能和基礎設施監控的寶貴洞察,並且成本頗為低廉。
如何選擇合適的 ELK Stack 解決方案?
在 AWS 中,您可以選擇在 EC2 上自行部署和管理 ELK Stack。但是,自行管理選項還要面臨擴展和縮減,以滿足業務需求或實現安全與合規的挑戰。如果您希望開發人員或 DevOps 工程師利用時間建置創新應用程式或管理營運任務,例如部署、升級、軟體安裝和修補、備份以及監控,那麼 OpenSearch Service 是一種全受管的開放原始碼替代方案,可讓您更輕鬆地在 AWS 上安全、經濟高效地部署、操作和擴展 OpenSearch 叢集。
哪些 AWS 產品支援您的 ELK Stack?
OpenSearch Service 支援 Apache 2.0 授權的 Elasticsearch (版本 1.5 至 7.10) 和 Kibana (版本 1.5 至 7.10) 的多個版本。OpenSearch Service 還支援與 Logstash 整合,以從來源收集和轉換資料,然後將其載入到服務中。
AWS 提供哪些擷取工具?
AWS 提供多種資料擷取工具,例如 Amazon Kinesis Data Firehose、Amazon CloudWatch Logs 和 AWS IoT,可讓您靈活選擇資料擷取工具,以滿足使用案例的要求。若要進一步了解,請參閱 Amazon OpenSearch Service 整合。
OpenSearch 包括來自 Elasticsearch B.V. 的特定 Apache 授權的 Elasticsearch 程式碼和其他原始程式碼。Elasticsearch B.V. 不是其他原始程式碼的來源。ELASTICSEARCH 是 Elasticsearch B.V. 的註冊商標。