O serverech víme vše. Jaké open source nástroje na správu serverů používáme?

Mít dokonalý přehled o všech běžících serverech je jedna z klíčových oblastí při jejich správě. Potřebujeme o nich vědět vše, jaké mají problémy, zda na nich běží všechny požadované služby, ale i zaznamenávat jejich vytížení a využívání zdrojů, které mají k dispozici. Všechny tyto informace potřebujeme jak k včasným zásahům v případě problémů, tak především ke strategickým rozhodnutím v případě dalšího rozšiřování infrastruktury datacenter. Jaké nástroje k tomu používáme a co se nám osvědčilo?
Správa serverů - profesionálně a efektivně

Kvalitních monitorovacích nástrojů pro správu serverů je dnes celá řada. V našem případě jsme ale vsadili na open source. Na sledování běhu serverů, výpadků a technických incidentů používáme Nagios, respektive jeho upravenou verzi Icinga. Pro dlouhodobé sledování provozních parametrů, výkonu, vytížení a mnoha dalších oblastí pak používáme Munin, který doplňujeme o vlastní pluginy sledující specifické parametry, které nás zajímají. Podívejte se s námi na tyto dva systémy a jejich výhody i nevýhody.

Nagios/Icinga: velké množství pluginů, velké možnosti využití

Využití Nagiosu je velmi výhodné pro jeho rozšířenost. Díky velké oblíbenosti pro něho existuje nepřeberné množství připravených pluginů, které lze navíc relativně jednoduše upravovat pro vlastní potřebu. Lze pomocí něho monitorovat běh serverů a služeb na všech námi využívaných platformách včetně Linuxu, Windows i OpenSolaris (OmniOS).

Icinga rozhraní pro monitorování incidentů na serverech

Icinga - rozhraní pro monitorování incidentů na serverech. FOTO: Autor

Nevýhodou Nagiosu je nepřehledné webové rozhraní a limitované možnosti generování reportů o zachycených událostech. Tyto nedostatky jsme vyřešili přechodem na projekt Icinga, který je postaven právě na kódu Nagiosu (a díky tomu je zachována plná kompatibilita s jeho pluginy, ale i s konfiguračními soubory) a k němu přidává kvalitní webovou nadstavbu s možností generování grafů, sledováním výkonu a přípravou detailních reportů.

Icinga dokáže z nasbíraných dat vykreslovat grafy a generovat reporty.

Icinga dokáže z nasbíraných dat vykreslovat grafy a generovat reporty. FOTO: Autor

Data z linuxových serverů přebírá Nagios/Icinga z NRPE serverů instalovaných na jednotlivých monitorovaných serverech, na Windows serverech používáme specializovaný NSClient++, který je právě pro tyto účely navržen a dovoluje například přebírat i informace z performance monitoru Windows serverů.

Munin: grafy, ve kterých uvidíte všechno

Pro přehled o vytížení a dalších parametrech námi spravovaných serverů a diskových polích využíváme nástroj Munin. Tento nástroj dokáže vytvářet grafy (které generuje pomocí skvělého nástroje RRDtool) a uchovávat jejich celkovou historii, třeba i za několik let zpět. Je opět velmi rozšířený a díky tomu pro něho existuje velká spousta pluginů, které dovolují sledovat prakticky všechny parametry serverů a které mezi sebou sdílejí samotní uživatelé. Dlouhodobě sledujeme prakticky vše, od vytížení disků a procesoru, přes provoz síťových karet, firewallu, webových serverů, databází až po celkovou náročnost virtuálních serverů nebo několik detailních parametrů našich diskových polí.

Munin ukázka grafů monitorujících vytížení procesoru.

Munin ukázka grafů monitorujících vytížení procesoru. FOTO: Autor

Standardní perioda, za kterou Munin sbírá data, je 5 minut a tato hodnota je v Muninu pevně daná. Jak se ale ukázalo, tento interval je tak dlouhý, že v některých případech nedokáže dostatečně přesně zachytit nejrůznější výkonnostní špičky. Proto jsme si Munin upravili pro naše účely na kratší interval jedné minuty, který nám poskytuje mnohem podrobnější obraz o stavu zátěže na našich serverech.

V Muninu máme přehled o vytížení procesorů na virtuálních serverech.

V Muninu máme přehled o vytížení procesorů na virtuálních serverech. FOTO: Autor

Dobrou zprávou je, že i Munin dokáže sbírat všechna data z Performance monitoru na Windows serverech (a tedy prakticky všech výkonnostních parametrů systému). Pro solarisové systémy, na kterých provozujeme disková pole, jsme si pak vyvinuli některé pluginy vlastní, které nám umožňují sledovat efektivitu cachování diskových operací či práci SSD disků, které používáme pro urychlení zápisových operací.

Díky tomu, že Munin ukládá data v otevřeném formátu RRD grafů, s nimi lze dále pracovat. To nám umožňuje například z několika existujících grafů vykreslovat jejich součty a tím například zjišťujeme, kolik I/O operací poskytují naše disková pole všem připojeným serverům dohromady a jakou má pole ještě výkonovou rezervu.

Pomocí vlastního pluginu sledujeme efektivitu cache paměti na diskových polích.

Pomocí vlastního pluginu sledujeme efektivitu cache paměti na diskových polích. FOTO: Autor

Existují i další kvalitní monitorovací nástroje pro správu sítě a serverů, jako například Zabbix, Zenoss, Monit a další. Každý z nich má nějaké výhody, a pokud vás nezaujal Munin ani Icinga, vyzkoušejte je. Důležité je především to, abyste se z nich dokázali o svých serverech dozvědět vše, co potřebujete.

Přidat komentář