Menu Zavrieť

Monitorovanie servera s elastic stack

Monitorovanie servera s Elastic Stack

  • Autor: Miroslav Kohútik
  • Verzia Elastic Stack: 6.7.0
  • Operačný systém : Ubuntu 16.04

Elastic Stack je skupina produktov od spoločnosti Elastic postavených okolo databázy Elastisearch, ktoré sú navrhnuté na prácu s dátami z akéhokoľvek zdroja.

V tomto článku si ukážeme ako monitorovať stav služby Elasticsearch a záťaž servera za použitia služieb Elastic Stack.

Pred tým než začneme, nainštalujeme si Elasticsearch, návod nájdeme v sekcii Príprava pred inštaláciou na začiatku tohto článku.

X-pack

X-pack je rozšírenie pre Elastic Stack, ktoré poskytuje bezpečnostné, výstražné, monitorovacie a hlásiace služby v jednom balíčku. Od Elastic Stack verzie 6.3 je X-Pack súčasťou každého komponentu Elastic Stack a tým odpadá predošlá nutnosť osobitnej inštalácie.

Kibana

Kibana je komponent Elastic Stacku pre vizualizáciu dát z Elasticsearchu. Pre potreby monitorovania sprístupňuje monitorovacie dáta, ktoré generuje X-Pack.

Inštalácia Kibany

Stiahneme a nainštalujeme si verejný GPG kľúč

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

Stiahneme si inštalačný balíček Kibany

wget https://artifacts.elastic.co/downloads/kibana/kibana-6.7.0-amd64.deb

Rozbalíme a nainštalujeme balíček s Kibanou

sudo dpkg -i kibana-6.7.0-amd64.deb
Konfigurácia Kibany

Teraz by sme už mali mať Kibanu pripravenú na použitie, avšak iba na lokálnom zariadení. Ak sa chceme na Kibanu pripájať zo vzdialeného zariadenia, musíme ešte nastaviť IP adresu, na ktorej chceme mať dostupné webové rozhranie Kibany.

Otvoríme konfiguračný súbor kibana.yaml

sudo nano /etc/kibana/kibana.yaml

V súbore nájdeme riadok #server.host: “localhost”, odkomentujeme ho (vymažeme znak “#” na začiatku) a prepíšeme ho na server.host: “x.x.x.x”, kde x.x.x.x je IP adresa zariadenia, na ktorom práve inštalujeme Kibanu. V prípade, že náš Elasticsearch beží na inej adrese alebo porte ako localhost:9200, musíme v tomto súbore nasmerovať Kibanu na správnu IP adresu alebo port.

kibana.yaml

Ak chceme aby sa Kibana spustila pri zapnutí servera spustíme nasledujúce dva príkazy

sudo /bin/systemctl daemon-reload
sudo /bin/systemctl enable kibana.service

Teraz už môžeme Kibanu spustiť nasledovným príkazom

sudo systemctl start kibana.service

Nasledujúcim príkazom skontrolujeme status Kibany

sudo systemctl status kibana.service

K webovému rozhraniu Kibany pristupujeme cez prehliadač zadaním kombinácie IP adresy servera a defaultného portu Kibany: x.x.x.x:5601.
K monitorovacím dátam sa dostaneme v záložke monitoring. Pri prvom spustení sa nám zobrazí informácia o tom, že monitorovanie je momentálne vypnuté, zapneme ho kliknutím na tlačidlo “Turn on monitoring”.

Záložka monitoring pri prvom spustení

Stav služby Elasticsearch na serveri potom môžeme sledovať kliknutím na “Nodes”, kde sa nám zobrazí zoznam zariadení, na ktorých je distribuovaný Elasticsearch.

Záložka monitoring pri aktívnom nasadení

Metricbeat

X-pack zbiera len štatistiky o stave jednotlivých komponentov Elastic Stack. Na monitorovanie stavu celkového zaťaženia servera je v Elastic Stacku určený komponent Metricbeat.

V prípade, že máme funkčnú Kibanu, inštalácia Metricbeatu je jednoduchá.

Stiahneme a nainštalujeme Metricbeat balíček

curl -L -O https://artifacts.elastic.co/downloads/beats/metricbeat/metricbeat-6.7.0-amd64.deb
sudo dpkg -i metricbeat-6.7.0-amd64.deb

Upravíme súbor /etc/metricbeat/metricbeat.yml pridaním nasledujúcich riadkov

setup.kibana:
    host: "192.168.1.186:5601"
output.elasticsearch:
    hosts: ["localhost:9200"]

Povolíme systémový modul, ktoý umožňuje Metricbeatu zbierať monitorovacie dáta

sudo metricbeat modules enable system

Nakonfigurujeme Metricbeat:

sudo metricbeat setup

Spustíme Metricbeat:

sudo systemctl start metricbeat.service

Teraz by sme už mali vidieť štatistiky o stave servera v záložke dashboard zobrazením “[Metricbeat System] Host overview”.

Stav servera

Zdroje:

Rate this post

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

The reCAPTCHA verification period has expired. Please reload the page.