====== ELK Stack (Elastic Stack) ====== **ELK Stack** je zkratka pro spojení tří open-source projektů: **Elasticsearch**, **Logstash** a **Kibana**. Společně tvoří platformu, která umožňuje sbírat logy ze všech systémů, ukládat je na jedno místo a v reálném čase je analyzovat. V posledních letech byl stack rozšířen o čtvrtou komponentu – **Beats**, proto se dnes častěji používá oficiální název **Elastic Stack**. ===== Komponenty stacku ===== Proces zpracování dat probíhá jako v potrubí (pipeline): ==== 1. Beats (Sběr dat) ==== Lehcí agenti instalovaní přímo na serverech nebo koncových zařízeních. Sbírají data (logy, metriky, síťový provoz) a posílají je dál. * **Filebeat:** Sleduje a odesílá soubory s logy. * **Metricbeat:** Sbírá metriky (CPU, RAM) ze systému a služeb. ==== 2. Logstash (Zpracování a transformace) ==== Nástroj pro transformaci dat. Logy z různých zdrojů (nejen z Beats) vyčistí, sjednotí jejich formát a obohatí je (např. o geolokalizaci podle IP adresy). * K parsování nestrukturovaného textu používá filtry jako [[grok|Grok]]. ==== 3. Elasticsearch (Ukládání a vyhledávání) ==== Srdce celého stacku. Jde o distribuovaný vyhledávací a analytický engine postavený na Apache Lucene. Ukládá data ve formátu JSON a umožňuje v nich extrémně rychle vyhledávat. ==== 4. Kibana (Vizualizace) ==== Webové rozhraní pro Elasticsearch. Umožňuje uživatelům vytvářet grafy, mapy, dashboardy a provádět vizuální analýzu dat bez nutnosti psát složité dotazy. ===== Architektura a tok dat ===== Typický tok dat vypadá následovně: `Uzel (Beats) --> Transformace (Logstash) --> Indexace (Elasticsearch) --> Dashboard (Kibana)` V jednodušších architekturách mohou Beats posílat data přímo do Elasticsearch, čímž se vynechá Logstash (pokud není potřeba složitá transformace dat). ===== Hlavní využití v praxi ===== * **Log Management:** Centralizované ukládání logů z webových serverů, aplikací a síťových prvků. * **Monitoring infrastruktury:** Sledování vytížení serverů a chybových stavů v reálném čase. * **Bezpečnost (SIEM):** Identifikace útoků (např. Brute Force) díky analýze neobvyklých vzorců v logách. * **Business Intelligence:** Sledování nákupního chování uživatelů v e-shopech. ===== Výhody a nevýhody ===== ^ Výhody ^ Nevýhody ^ | **Škálovatelnost:** Lze snadno rozšířit na stovky serverů. | **Náročnost na paměť:** Elasticsearch vyžaduje hodně RAM. | | **Open-source:** Základní verze je zdarma. | **Komplexita:** Správa velkých clusterů vyžaduje zkušenosti. | | **Rychlost:** Výsledky vyhledávání jsou téměř okamžité. | **Indexace:** Vyšší režie na disk při ukládání velkého objemu dat. | > **Zajímavost:** ELK Stack používají giganti jako Netflix, LinkedIn nebo GitHub k monitorování svých miliardových toků událostí každý den. --- **Viz také:** [[grok|Grok]], [[json|JSON]], [[siem|SIEM]], [[cloud-monitoring|Cloud Monitoring]]