← Zpět na všechny články blogu

Jak nainstalovat Kibanu?

David Janík
David Janík 11. 3. 2021 - 8 min. čtení
Blog

Co je Kibana?

Kibana je bezplatná a otevřená frontendová aplikace, která je umístěna na vrcholu Elastic Stacku a poskytuje možnosti vyhledávání a vizualizace dat pro indexovaná data v Elasticsearch. Běžně známý jako nástroj pro tvorbu grafů pro Elastic Stack (označovaný jako ELK Stack po Elasticsearch, Logstash a Kibana). Logstash je bezplatný a otevřený kanál pro zpracování dat na straně serveru, který získává data z mnoha zdrojů, transformuje je a poté je odesílá do vašeho oblíbeného úložiště.

Kibana také funguje jako uživatelské rozhraní pro monitorování, správu a zabezpečení.

Kibana + Elasticsearch

Pro snazší práci s Elasticem je vhodná právě Kibana. Ta má grafické rozhraní, které se umí propojit a dokáže nám ukázat data v přívětivější podobě. Dokáže lépe vyhledávat v uložených datech, vytvářet vizualizace grafů a tabulek a vytvoření komplexních dashboardů.

VPS Centrum

Vyzkoušejte zdarma naši aplikaci pro správu serveru a domén. Budete si připadat jako zkušený administrátor.

Díky Kibaně získáte

  • Přehlednou analýzu logů
  • Monitoring infrastruktury
  • APM – Application Performance Monitoring
  • Přehled bezpečnostních akcí
  • Business analytics

To na jednu monitorovací aplikaci ujde. V dalším článku, se dozvíte, jak ji správně nainstalovat na naše servery s VPS Centrem.

Jak nainstalovat Kibanu?

Pokud jste už nainstalovali Elasticsearch z předchozího návodu, tak tento krok můžete přeskočit. Jedná se pouze o přidání repozitáře.

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -

sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list'

Jakmile máme repozitář přidaný můžeme Kibanu nainstalovat.

aptitude install kibana

Poté musíme v souboru /etc/kibana/kibana.yml upravíme tyto řádky na:

server.basePath: "/kibana"

server.rewriteBasePath: true

Poté upravíme nastavení web serveru v souboru /etc/apache2/sites-available/vpsID.vas-server.cz.conf a vydefinujeme toto makro:

# ################ Macro vpsID.vas-server.cz-kibana ####################

vpsID.vas-server.cz-kibana>

ProxyRequests On

ProxyPreserveHost On



ProxyPass http://127.0.0.1:5601/kibana

ProxyPassReverse http://127.0.0.1:5601/kibana






## Auth

AuthType Basic

AuthName "Kibana"

AuthUserFile /etc/apache2/scripts/kibana-passwd

Require valid-user



Poté v makru-ssl přidáme na konec řádek s Kibanou. Pozor! Instalaci budete mít dostupnou pouze na HTTPS://, takže si to při vložení do adresáře zkontrolujte.

# ################ Only vpsID.vas-server.cz-ssl ####################



 DocumentRoot /www/hosting/vas-server.cz/www/

 Servername vpsID.vas-server.cz

Use vpsID.vas-server.cz

Use vpsID.vas-server.cz-admin

Use vpsID.vas-server.cz-adminer

Use vpsID.vas-server.cz-phpmyadmin

Use vpsID.vas-server.cz-munin

Use vpsID.vas-server.cz-roundcube

Use vpsID.vas-server.cz-phppgadmin

Use vpsID.vas-server.cz-ssl

Use vpsID.vas-server.cz-kibana

Pak si vyvoříme heslo pro přístup ke Kibaně. LOGIN = vaše uživatelské jméno a můžete jej změnit podle potřeby. Poté 2x zadáte heslo, které chcete mít. Doporučujeme si nějaký vygenerovat. Alespoň 15 znaku [.,:-=()[]{}a-zA-Z0-9]

Freelo - Nástroj na řízení úkolů a projektů

Přidej se, pozvi svůj tým a klienty, rozděl práci a sleduj, jak se úkoly dají do pohybu.

htpasswd -c /etc/apache2/scripts/kibana-passwd LOGIN

Pak už nám stačí aktivovat poslední věc. Modul v Apache2 proxy_http příkazem:

a2enmod proxy_http

Restartovat webserver

webserver_restart.sh NEBO systemctl restart apache2

Pak už nám stačí pouze aktivovat Kibanu pomocí příkazu.

systemctl enable kibana --now 

Zkontrolovat, jestli běží.

systemctl status kibana

A následně můžeme jít na adresu a přihlásit se.

https://vpsID.vas-server.cz/kibana/

Po přihlášení uvidíte tuto stránku:

Teď je třeba Kibaně říci, jaká data a logy má sbírat. Tak klikneme na “Add data”.

Nejdříve vybereme, které logy má sbírat.

To je na každém z vás, ale určitě se nám budou hodit logy od:

  • Elasticsearch + Kibana
  • Apache / příp. Nginx
  • MySQL / příp. PostgreSQL
  • Logy mailserveru
  • Systémové logy

Abychom mohli různé moduly aktivovat. Potřebujeme nainstalovat Filebeat. Proces vypadá následovně

  1. Nainstalovat Filebeat na každý systém/server, který chceme monitorovat
  2. Specifikovat lokaci logů
  3. Analyzovat data a roztřídit je do polí a odeslat je do Elasticsearch
  4. Vizualizovat data z logu v Kibaně

Instalace Filebeat (Debian package)

curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.11.1-amd64.deb

dpkg -i filebeat-7.11.1-amd64.deb

Propojení s Elastic stackem

Musíme upravit soubor v /etc/filebeat/filebeat.yml

output.elasticsearch:

hosts: ["localhost:9200"] ### Hostname a port, kde filebeat najde ES

### Pokud to je potřeba, můžete specifikovat uživatele, kteří mají potřebná oprávnění. Elastic doporučuje nastavit asi 4 uživatele. Tak záleží, jak moc si na bezpečnost potrpíte. Pak stačí pod “hosts” přidat 2 řádky

username: "filebeat_internal"

password: "YOUR_PASSWORD"

Ještě aktivujeme kibanu ve stejném souboru takto:

Sbírání dat z logů

Existuje několik způsobů, jak sbírat data pomocí Filebeat:

  • Moduly pro sběr dat
  • Pomocí ECS
  • Ruční konfigurace Filebeat

My si ukážeme, jak zprovoznit moduly pro sběr dat.

filebeat modules list ### Nám ukáže veškeré dostupné moduly k aktivování

My jsme chtěli aktivovat, Elastic search, Kibanu, apache, mysql a systém.

filebeat modules enable elasticsearch kibana system apache mysql

Pak ve složce /etc/filebear/modules.d/ ### najděte konkrétní configy modulů a upravte cesty k vašim logům. Pokud je necháte prázdné filebeat ponechá defaultní lokace podle vašeho OS.

Poslední nastavení před spuštěním

Filebeat přichází s předdefinovanými prostředky pro analýzu, indexování a vizualizaci vašich dat. Ve složce, kde jste prováděli instalaci spusťte příkaz:

filebeat setup -e

Nemělo by vám to skončit na žádné chybě a měli byste vidět něco jako.

Teď už nám zbývá poslední věc. Nastartovat filebeat pomocí příkazu:

service filebeat start

service filebeat status

A teď půjdeme na URL adresu, kde máme kibanu a podíváme se na první data.

Vizualizace dat v Kibaně

Jakmile se přihlásíte, tak klikněte na levé menu a běžte do sekce Analytics > Overview.

Dostanete se sekce, kde můžete vybírat data a udělat z nich dashboardy, nebo pouze objevovat a hledat v logách či vytvářet heatmapy.

Jenom na demonstraci jsme si vybrali Mapy a chtěli jsme si zobrazit, odkud na můj server přicházejí požadavky. Index pattern vybereme filebeat a chceme zobrazit source.geo.location. Výsledek po chvilce vypadá takto. Nejvíce požadavků jde samozřejmě z Evropy a pak boti z Moskvy nebo Číny. 🙂 Klasika.

Následné grafy si můžete uložit a dělat z nich zajímavé dashboardy, které se vám budou zobrazovat. To už záleží na každém z vás, jaká data a logy chce kontrolovat a hlidat.

V sekci Add data / Sample data můžete vybrat nějaké ukázky, díky kterým nasbíráte inspiraci pro svoje tabulky. Např. takhle vypadají webové logy.

Jak hlídat důležité metriky systému?

Ještě si ukážeme, jak hlídat důležité metriky systému. Teď místo Filebeat musíme instalovat Metricbeat. Je to dost podobné, takže to už pro nás bude hračka. 🙂

curl -L -O https://artifacts.elastic.co/downloads/beats/metricbeat/metricbeat-7.11.1-amd64.deb

dpkg -i metricbeat-7.11.1-amd64.deb

Půjdeme do složky a v souboru metricbeat.yml uděláme úpravy, jako u Filebeat.

Teď můžeme aktivovat potřebné moduly. Pro dostupné modely pustíme příkaz.

metricbeat modules list

A více modelů najednou aktivujeme takto:

metricbeat modules enable apache system elasticsearch kibana php_fpm mysql munin linux sql

Pak ve složce /etc/metricbeat/modules.d/ ### najděte konkrétní configy modulů a upravte nastavení podle vašeho systému. Pokud je necháte prázdné metricbeat ponechá defaultní lokace podle vašeho OS.

Pak zase spustíme nastavení a aktivujeme metricbeat.

metricbeat setup -e

service metricbeat start

service metricbeat status

A teď můžeme zpátky ke Kibaně. Klikneme na menu vlevo a půjdeme do Observability > Metrics.

Kde máte 3 sekce. Inventory, Metrics Explorer a Settings. Chvíli trvá, než se nasbírají data. Můžete se ale podívat, co všechno je dostupné a jak budete chtít poskládat vlastní dashboard.

Monitoring služeb – Heartbeat

Jdeme na poslední důležitou věc, a to jak hlídat pomocí Kibany vaše systémové služby. Princip je jednoduchý, zadáte URL a jak často se má Heartbeat zeptat, are you alive?

curl -L -O https://artifacts.elastic.co/downloads/beats/heartbeat/heartbeat-7.11.1-amd64.deb

dpkg -i heartbeat-7.11.1-amd64.deb

Zase v souboru /etc/heartbeat/heartbeat.yml nastavíme propojení s ES a Kibanou.

A ve stejném konfiguračním souboru nastavíme služby, které chceme monitorovat.

Máme 3 možnosti:

  • ICMP – Monitor icmp použijte, když chcete jednoduše zkontrolovat, zda je služba k dispozici. Tento monitor vyžaduje přístup root.
  • TCP – Pro připojení přes TCP použijte monitor tcp. Tento monitor můžete volitelně nakonfigurovat tak, aby ověřoval koncový bod odesíláním a / nebo přijímáním vlastního paylodu
  • HTTP – Pro připojení přes HTTP použijte monitor http. Tento monitor můžete volitelně nakonfigurovat, abyste ověřili, že služba vrací očekávanou odpověď, například konkrétní stavový kód, záhlaví odpovědi nebo obsah.

Protokoly tcp a http podporují SSL / TLS a některá nastavení proxy serveru.

Já jsem si pro testování zprovoznil monitoring SSH, ping na server a samozřejmě monitoring VPS Centra. Doporučujeme ale mrknout na dokumentaci přímo od Heartbeat, kde máte více příkladů a vysvětlivek.

Jestli budeme mít problém s nastavením .yml souboru, tak doporučujeme tento online checker pro správnou syntaxi.

A už pojedeme zase starou klasiku.

heartbeat setup -e

service heartbeat-elastic start

service heartbeat-elastic status

Vrátíme se do levého menu v Kibaně a půjdeme do sekce “Uptime”.

A už uvidíte přehledný dashboard, kde máte své monitoringy na jednom místě. Můžete vyhledávat konkrétní věci nebo jí využívat jako celkový přehled o dostupnosti služeb.

Doufáme, že návod přinese spousty užitečných informací, rad a hlavně inspiraci. Oba nástroje toho mají ve svém arzenálu spousty, a stačí pouze objevit ty funkce, které přinesou vám tu největší přidanou hodnotu.

Zůstaňte s námi v kontaktu

Jednou za měsíc posíláme souhrn novinek. Nemusíte se bát, spam neposíláme a odhlásit se můžete kdykoliv...

Karel Dytrych
Tým Váš Hosting
Vyzkoušejte náš trial na týden zdarma

Garance 14denní záruky vrácení peněz

Vyzkoušejte server na týden zdarma

Vyzkoušet server