Hlavní navigace

MONIT - Monitorujte svoje daemony

Milan Gigel 25. 1. 2002

Pomerne dôležité je zabezpečiť na svojich serverov beh určitých daemonov pre poskytovanie žiadaných služieb. Ako však zabezpečiť dohľad nad ich behom a v prípade nežiadaného výpadku uskutočniť automatický štart daemonov? Ako robiť ich monitoring na diaľku a byť informovaný o výpadkoch. Všetky tieto otázky rieši celkom zaujímavý projekt s názvom MONIT.

1. Inštalácia

Domovskú stránku projektu nájdete na adrese www.tildeslash­.com/monit, z ktorej je potrebné stiahnuť si distribučný balík a nasleduje rozbalenie a inštalácia klasickým spôsobom, akým sme zvyknutí:

tar xzvf monit-2.1.1.tar.gz
cd monit-2.1.1
./configure
make
make install
2. konfigurácia

Nasleduje úprava konfiguračného súboru, ktorého základnú štruktúru nájdete v súbore monitrc.

set daemon  60
set logfile syslog
set mailserver localhost
set httpd port 1230
allow localhost
allow admin:pustimadnu

check apache with pidfile /usr/local/apache/logs/httpd.pid
    start program = "/etc/rc.d/init.d/httpd start"
    stop program  = "/etc/rc.d/init.d/httpd stop"
    port 80   protocol http
    alert admin@domena.sk

check tacacs with pidfile /var/run/tac_plus.pid
    start program = "/etc/rc.d/init.d/tac_plus start"
    stop program  = "/etc/rc.d/init.d/tac_plus stop"
    port 49
    alert admin@domena.sk

Parametrom set daemon určujeme beh v režime daemon s kontrolou behu definovaných daemonov vo frekvencii 60 sekúnd. Voľba logfile určuje typ logovania, v našom prípade je to syslog, môžete však špecifikovať ľubovoľný názov súboru pre ukladanie logových správ. Položka mailserver nastavuje mailový server pre odosielanie notifikačných správ o zistených nezrovnalostiach a realizovaných štartov daemonov. Nakoľko tento monitorovací engine obsahuje aj web rozhranie s celkom zaujímavou informačnou hodnotou, je potrebné špecifikovať port, na ktorom má integrovaný web server bežať a viac ako vhodné je špecifikovať zoznam hostov, pre ktorých je prístup k web rozhraniu povolený a prihlasovacie meno a heslo k službe, nakoľko web interface umožňuje jednotlivé monitorované služby manuálne vypínať.

V ďalšej časti konfiguračného súboru nasleduje definícia jednotlivých kontrolovaných daemonov. Definujeme pid súbor daného procesu, štartovací a ukončovací skript, port na ktorom beží daný daemon aj s možnosťou definície pluginu pre kontrolu komunikácie, s ktorých máme k dipozícii ftp, smtp, pop, nntp a imap. Pre jeden daemon je možné priradiť aj viacero portov, ako napríklad pre apache 80 a 443. Pre daemony používajúce UDP komunikáciu, ako je napríklad bind, je potrebné definovať port ako port 53 type udp. Poslednou položkou dielčej definície je emailová adresa, na ktorú sa majú zasielať notifikácie k danému daemonu, kde je vhodné použiť bránu na SMS správy na mobilný telefón.

Konfiguráciu máme vytvorenú, môžeme teda prejsť k spusteniu samotného minitoringu.

3. aktivovanie a používanie

Monitoring spustíme nasledovne

monit -c /etc/monit.conf

alebo pomocou priloženého skriptu rc.monit v ./contrib, ktorý je určený pre spúšťanie a ukončovanie v rámci jednotlivých runleveloch a jednoduchú implementáciu do systému. Pre hľadanie chýb vám poslúži parameter -v, ktorý vypisuje na konzolu podrobné informácie o činnosti.

Jednoduché web rozhranie je prístupné prostredníctvom ľubovoľného web prehliadača na definovanom hoste a porte. Zobrazenie môže vyzerať nasledovne:

monit proces manager

proces status

Kontrolné súčty, ktoré sú zobrazené pre jednotlivé daemony slúžia na rozpoznanie zmeny, napríklad reinštalácia a podobne pre zamedzenie nechceným reštartom. Ak sa kontrolný súčet zmení, jedntlivý daemon prestane byť monitorovaný do reštartu mechanizmu MONIT.

Jednotlivé kontrolované procesy môžeme teraz prostredníctvom MONITu aktivovať, deaktivovať a reštartovať, a to nasledovne

monit start/stop/restart <daemon>

V prípade, že názov daemonu nie je uvedený, uskutoční sa táto činnosť pre všetky monitorované daemony. Pre výpis aktuálneho stavu poslúži

monit status

a pre manuálnu kontrolu ich behu

monit validate

Ako vidíte, jedná sa skutočne o jednoduchý nástroj, ktorého jednoduchá implementácia zjednoduší správu systému a v kombinácii monitoringu s ovládaním v prípade nečakaného výpadku zabezpečí nápravu, či už reštartom daného daemonu, alebo spustením jeho náhrady.

Našli jste v článku chybu?

25. 1. 2002 17:58

Lubos Bulej (neregistrovaný)

Pokud jde o Apache, jde to pres
SSLPassPhraseDialog exec:<path-to-script>, heslo se ocekava na stdin.

Otazku bezpecnosti uz necham na Vas :)




25. 1. 2002 10:42

Petr Šimeček (neregistrovaný)

Řešil jste někdo, jak nastartovat httpd s SSL certifikaty tak, aby se zadala pass fraze? Nebo alespon tak, aby se nastartoval httpd bez ssl? Mám přes web konfigurovane proxyny v klientech a je pro me nutne, aby httpd bezel. Pres ssl se chodi z venku na postu, ale to neni klicove...
Petr


Podnikatel.cz: K EET. Štamgast už peníze na stole nenechá

K EET. Štamgast už peníze na stole nenechá

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

DigiZone.cz: Česká televize mění schéma ČT :D

Česká televize mění schéma ČT :D

Root.cz: Vypadl Google a rozbilo se toho hodně

Vypadl Google a rozbilo se toho hodně

120na80.cz: Bojíte se encefalitidy?

Bojíte se encefalitidy?

Vitalia.cz: To není kašel! Správná diagnóza zachrání život

To není kašel! Správná diagnóza zachrání život

Vitalia.cz: Baletky propagují zdravotní superpostel

Baletky propagují zdravotní superpostel

DigiZone.cz: Sony KD-55XD8005 s Android 6.0

Sony KD-55XD8005 s Android 6.0

Podnikatel.cz: Prodává přes internet. Kdy platí zdravotko?

Prodává přes internet. Kdy platí zdravotko?

Vitalia.cz: Paštiky plné masa ho zatím neuživí

Paštiky plné masa ho zatím neuživí

DigiZone.cz: ČT má dalšího zástupce v EBU

ČT má dalšího zástupce v EBU

Podnikatel.cz: EET zvládneme, budou horší zákony

EET zvládneme, budou horší zákony

120na80.cz: Jak oddálit Alzheimera?

Jak oddálit Alzheimera?

Měšec.cz: Jak vymáhat výživné zadarmo?

Jak vymáhat výživné zadarmo?

Podnikatel.cz: Na poslední chvíli šokuje vyjímkami v EET

Na poslední chvíli šokuje vyjímkami v EET

Lupa.cz: Není sleva jako sleva. Jak obchodům nenaletět?

Není sleva jako sleva. Jak obchodům nenaletět?

Měšec.cz: Zdravotní a sociální pojištění 2017: Připlatíte

Zdravotní a sociální pojištění 2017: Připlatíte

120na80.cz: Rakovina oka. Jak ji poznáte?

Rakovina oka. Jak ji poznáte?

DigiZone.cz: Recenze Westworld: zavraždit a...

Recenze Westworld: zavraždit a...

Podnikatel.cz: EET: Totálně nezvládli metodologii projektu

EET: Totálně nezvládli metodologii projektu