Elastické vyhľadávanie

Vizualizujte protokoly Apache pomocou ELK Stack

Vizualizujte protokoly Apache pomocou ELK Stack

Monitorovanie a analýza protokolov pre rôzne infraštruktúry v reálnom čase môže byť veľmi namáhavá práca. Pri práci so službami, ako sú webové servery, ktoré neustále zaznamenávajú údaje, môže byť proces veľmi zložitý a takmer nemožný.

Znalosť toho, ako používať nástroje na sledovanie, vizualizáciu a analýzu protokolov v reálnom čase, vám môže pomôcť pri sledovaní a riešení problémov a pri monitorovaní podozrivých systémových aktivít.

Tento tutoriál bude diskutovať o tom, ako môžete použiť jeden z najlepších nástrojov na zhromažďovanie protokolov v reálnom čase a analytické nástroje - ELK. Pomocou ELK, všeobecne známych ako Elasticsearch, Logstash a Kibana, môžete zhromažďovať, zaznamenávať a analyzovať údaje z webového servera apache v reálnom čase.

Čo je ELK Stack?

ELK je skratka používaná na označenie troch hlavných nástrojov otvoreného zdroja: Elasticsearch, Logstash a Kibana.

Elasticsearch je open-source nástroj vyvinutý na hľadanie zhôd vo veľkej zbierke súborov údajov pomocou výberu jazykov a typov dotazov. Jedná sa o ľahký a rýchly nástroj schopný s ľahkosťou spracovať terabajty dát.

Logstash engine je prepojenie medzi serverom a Elasticsearch, čo vám umožňuje zhromažďovať údaje z výberu zdrojov do Elasticsearch. Ponúka výkonné API, ktoré sú ľahko integrovateľné s aplikáciami vyvinutými v rôznych programovacích jazykoch.

Kibana je posledná časť stohu ELK. Jedná sa o nástroj na vizualizáciu údajov, ktorý umožňuje vizuálnu analýzu údajov a generovanie prehľadných správ. Ponúka tiež grafy a animácie, ktoré vám môžu pomôcť pri interakcii s vašimi údajmi.

Zásobník ELK je veľmi výkonný a dokáže robiť neuveriteľné veci v oblasti analýzy údajov.

Aj keď rôzne koncepty, o ktorých budeme diskutovať v tomto tutoriále, vám poskytnú dobré vedomosti o zásobníku ELK, ďalšie informácie nájdete v dokumentácii.

Elasticsearch: https: // linkfy.do / Elasticsearch-Referencia

Logstash: https: // linkfy.do / LogstashReference

Kibana: https: // linkfy.do / KibanaGuide

Ako nainštalovať Apache?

Predtým, ako začneme inštalovať Apache a všetky závislosti, je dobré si uvedomiť niekoľko vecí.

Tento návod sme otestovali na Debiane 10.6, ale bude fungovať aj s inými distribúciami Linuxu.

V závislosti od konfigurácie vášho systému potrebujete oprávnenie sudo alebo root.

Kompatibilita a použiteľnosť zásobníka ELK sa môžu líšiť v závislosti od verzií.

Prvým krokom je zabezpečenie úplnej aktualizácie systému:

sudo apt-get aktualizácia
sudo apt-get upgrade

Ďalším príkazom je inštalácia webového servera apache2. Ak chcete mať nainštalovaný minimálny apache, odstráňte dokumentáciu a obslužné programy z nižšie uvedeného príkazu.

sudo apt-get nainštalovať apache2 apache2-utils apache2-doc -y
sudo služba apache2 štart

Teraz by už mal byť vo vašom systéme spustený server Apache.

Ako nainštalovať Elasticsearch, Logstash a Kibana?

Teraz musíme nainštalovať zásobník ELK. Inštalujeme každý nástroj osobitne.

Elasticsearch

Začnime inštaláciou Elasticsearch. Na jeho inštaláciu použijeme apt, ale stabilné vydanie môžete získať z oficiálnej stránky na stiahnutie tu:

https: // www.elastické.co / na stiahnutie / elasticsearch

Elasticsearch vyžaduje na spustenie Javu. Našťastie je najnovšia verzia dodávaná s balíkom OpenJDK, čo odstraňuje problémy s jej manuálnou inštaláciou. Ak potrebujete vykonať manuálnu inštaláciu, pozrite si nasledujúci zdroj:

https: // www.elastické.co / guide / en / elasticsearch / reference / current / setup.html # jvm-verzia

V ďalšom kroku si pomocou príkazu musíme stiahnuť a nainštalovať oficiálny podpisový kľúč Elastic APT:

wget -qO - https: // artefakty.elastické.co / GPG-KEY-elasticsearch | sudo apt-key pridať -

Pred pokračovaním môžete vyžadovať balík apt-transport-https (vyžadovaný pre balíčky poskytované cez https) pred inštaláciou.

sudo apt-get nainštalovať apt-transport-https

Teraz pridajte k zdrojom vhodné informácie o repo.zoznam.d súbor.

echo “deb https: // artefakty.elastické.co / balíčky / 7.x / apt stabilný hlavný “| sudo tee / etc / apt / sources.zoznam.d / elastický-7.X.zoznam

Potom aktualizujte zoznam balíkov vo vašom systéme.

sudo apt-get aktualizácia

Nainštalujte Elasticsearch pomocou nasledujúceho príkazu:

sudo apt-get nainštalovať elasticsearch

Po nainštalovaní Elasticsearch spustite a povoľte štart pri bootovaní pomocou príkazov systemctl:

sudo systemctl daemon-reload
sudo systemctl povoliť elasticsearch.služby
sudo systemctl spusti elasticsearch

Spustenie služby môže chvíľu trvať. Počkajte niekoľko minút a pomocou príkazu potvrďte, že je služba v prevádzke

sudo systemctl status elasticsearch.služby

Pomocou cURL otestujte, či je k dispozícii rozhranie Elasticsearch API, ako je znázornené na výstupe JSON nižšie:

curl -X ZÍSKAŤ "localhost: 9200 /?pekne "

"name": "debian",
"cluster_name": "elasticsearch",
"cluster_uuid": "VZHcuTUqSsKO1ryHqMDWsg",
"verzia":
"number": "7.10.1 ",
"build_flavor": "predvolené",
"build_type": "deb",
"build_hash": "1c34507e66d7db1211f66f3513706fdf548736aa",
"build_date": "2020-12-05T01: 00: 33.671820Z ",
"build_snapshot": false,
"lucene_version": "8.7.0 ",
"minimum_wire_compatibility_version": "6.8.0 ",
"minimum_index_compatibility_version": "6.0.0-beta1 "
,
“Tagline”: “You know, for Search”

Ako nainštalovať Logstash?

Nainštalujte balík logstash pomocou príkazu:

sudo apt-get nainštalovať logstash

Ako nainštalovať Kibana?

Zadajte nasledujúci príkaz na inštaláciu kibany:

sudo apt-get nainštalovať kibana

Ako nakonfigurovať Elasticsearch, Logstash a Kibana?

Tu je postup, ako nakonfigurovať zásobník ELK:

Ako nakonfigurovať Elasticsearch?

V službe Elasticsearch sa dáta zoradia do indexov. Každý z týchto indexov má jeden alebo viac zlomkov. Črep je samostatný vyhľadávač používaný na spracovanie a správu indexov a dotazov pre podmnožinu v klastri v rámci Elasticsearch. Črep funguje ako inštancia lucenského indexu.

Predvolená inštalácia Elasticsearch vytvorí pre každý index päť zlomkov a jednu repliku. Toto je dobrý mechanizmus pri výrobe. V tomto výučbe však budeme pracovať s jedným zlomkom a bez replík.

Začnite vytvorením šablóny indexu vo formáte JSON. V súbore nastavíme počet zlomkov na jednu a nula replík na zodpovedajúce názvy indexov (vývojové účely).

V Elasticsearch sa šablóna indexu týka toho, ako dávate Elasticsearchu nastavenie indexu počas procesu vytvárania.

Vo vnútri súboru šablóny JSON (index_template.json), zadajte nasledujúce pokyny:


"template": "*",
"nastavenie":
"index":
"number_of_shards": 1,
"number_of_replicas": 0


Pomocou cURL použite konfiguráciu json na šablónu, ktorá sa použije na všetky vytvorené indexy.

curl -X PUT http: // localhost: 9200 / _template / defaults -H 'Content-Type: application / json' -d @index_template.json
"potvrdené": true

Po použití Elasticsearch odpovie potvrdeným: pravdivým vyhlásením.

Ako nakonfigurovať logstash?

Aby Logstash zhromažďoval protokoly z Apache, musíme ho nakonfigurovať tak, aby sledoval všetky zmeny v protokoloch zhromažďovaním, spracovaním a následným ukladaním protokolov do Elasticsearch. Aby ste tak mohli urobiť, musíte v Logstashe nastaviť cestu protokolu zhromažďovania.

Začnite vytvorením konfigurácie protokolu Logstash v súbore / etc / logstash / conf.d / apache.konf

vstup
súbor
path => '/ var / www / * / logs / access.prihlásiť sa
type => "apache"


filter
grok
match => "message" => "% COMBINEDAPACHELOG"


výkon
elasticsearch

Teraz nezabudnite povoliť a spustiť službu logstash.

sudo systemctl povoliť logstash.služby
sudo systemctl spusti logstash.služby

Ako povoliť a nakonfigurovať Kibanu?

Ak chcete povoliť Kibanu, upravte hlavný .yml konfiguračný súbor umiestnený v / etc / kibana / kibana.yml. Vyhľadajte nasledujúce položky a odkomentujte ich. Po dokončení použite službu systemctl na spustenie služby Kibana.

server.port: 5601
server.hostiteľ: "localhost"
sudo systemctl povoliť kibanu.service && sudo systemctl start kibana.služby

Kibana vytvára indexové vzory na základe spracovaných údajov. Preto musíte zbierať protokoly pomocou programu Logstash a ukladať ich do aplikácie Elasticsearch, ktorú môže Kibana používať. Na vytvorenie protokolov z Apache použite curl.

Keď máte protokoly z Apache, spustite Kibanu vo svojom prehliadači pomocou adresy http: // localhost: 5601, ktorá spustí indexovú stránku Kibana.

V zásade musíte nakonfigurovať vzor indexu, ktorý používa Kibana na vyhľadávanie protokolov a generovanie správ. Kibana predvolene používa indexový vzor logstash *, ktorý sa zhoduje so všetkými predvolenými indexmi generovanými programom Logstash.

Ak nemáte žiadnu konfiguráciu, kliknutím na vytvoriť spustíte prezeranie protokolov.

Ako zobraziť protokoly Kibana?

Keď budete pokračovať v plnení požiadaviek Apache, Logstash zhromaždí protokoly a pridá ich do Elasticsearch. Tieto protokoly môžete zobraziť v Kibane kliknutím na možnosť Objaviť v ľavej ponuke.

Karta Objaviť vám umožňuje zobraziť protokoly tak, ako ich generuje server. Ak chcete zobraziť podrobnosti protokolu, jednoducho kliknite na rozbaľovaciu ponuku.

Čítať a porozumieť údajom z protokolov Apache.

Ako vyhľadávať protokoly?

V rozhraní Kibana nájdete vyhľadávací panel, ktorý vám umožní vyhľadávať údaje pomocou reťazcov dotazu.

Príklad: stav: aktívny

Viac informácií o reťazcoch dotazov ELK sa dozviete tu:

https: // www.elastické.co / guide / en / elasticsearch / reference / 5.5 / query-dsl-query-string-query.html # query-string-syntax

Pretože máme do činenia s protokolmi Apache, jednou z možných zhôd je stavový kód. Preto hľadaj:

odpoveď: 200

Tento kód vyhľadá protokoly so stavovým kódom 200 (OK) a zobrazí ich spoločnosti Kibana.

Ako vizualizovať protokoly?

Vizuálne informačné panely môžete v Kibane vytvoriť výberom karty Vizualizovať. Vyberte typ informačného panela, ktorý chcete vytvoriť, a vyberte svoj vyhľadávací index. Predvolenú hodnotu môžete použiť na testovacie účely.

Záver

V tejto príručke sme diskutovali o prehľade používania zásobníka ELK na správu protokolov. Tento článok však môže pokrývať ešte viac. Odporúčame preskúmať na vlastnú päsť.

Ako zmeniť smer posúvania myši a touchpadu v systéme Windows 10
Myš a TouchpadNielenže uľahčujú výpočty, ale sú aj efektívnejšie a menej časovo náročné. Nemôžeme si predstaviť život bez týchto zariadení, ale je pra...
Ako zmeniť veľkosť, farbu a schému ukazovateľa myši a kurzora v systéme Windows 10
Ukazovateľ myši a kurzor vo Windows 10 sú veľmi dôležité aspekty operačného systému. Dá sa to povedať aj pre iné operačné systémy, takže v skutočnosti...
Hry Zadarmo a open source herné motory pre vývoj hier pre Linux
Zadarmo a open source herné motory pre vývoj hier pre Linux
Tento článok sa bude zaoberať zoznamom bezplatných a otvorených herných nástrojov, ktoré možno použiť na vývoj 2D a 3D hier v systéme Linux. Existuje ...