1. března 2017

Nagios, monitorovací nástroj, který ještě není za zenitem

Nagios je na světě od roku 1999 a v CCA ho používáme již roku 2008. V posledních letech se objevily novější a v některých aspektech lepší nástroje jako je Zabbix, Icinga a další, ale po jejich prověření jsme neobjevili žádnou 'killer feature', která by nás donutila vzít instalaci Nagiosu ve firmě (případně u zákazníků) a přejít z něj na něco jiného.
Na následujících řádcích bychom chtěli shrnout trochu obecné teorie a zárověň Vám předvést do jaké míry se dá vyladit Nagios po několika letech tunění :-)

Proč vůbec řešit něco jako monitorování sítě a služeb?

Hlavním cílem proč mít monitoring je, aby se podpora dozvěděla o problému dříve než zákazník a mohla začít řešit problém a tím minimalizovala dobu výpadku služby (v tomto případě je zákazníkem např. i kolega vývojář, který kvůli nedostupné databázi nemůže pracovat).
Dalším důvodem je, že při výpadku konkrétní služby můžete vidět, kde je problém, např. když monitorovací systém hlásí, že CPU je OK, RAM a disk také, ale služba neběží, zkontroluji tedy nejdříve proces služby, místo postupného vyřazování, kde problém není.

Co je vůbec Nagios a co v základu umí?


  • monitorovací systém s možností upozornění (email, sms) a navázaných akcí
  • open source projekt pod licencí GPL
  • existuje i placená verze s podporou, která se jmenuje Nagios XI
  • kontrola typu ping, snmp http, smtp, ssh, otevřené porty a další
  • v přehledu zobrazit seznam s vyznačeným stavem hostů a služeb včetně textových poznámek

 Co jsme si do Nagiosu přidali – zdroje z webu a stránek Nagiosu


  • bez čeho už si dnes ani monitorování s vidinou historie nebo predikcí věcí budoucích nedokážeme představit je graf, resp. promítnutí hodnot, které vrátila služba v čase. V případě, že se „něco“ zpomalilo, ale ne natolik, aby přišel alarm, je graf jednou z mála možností, jak zjistit, kde bylo v danou dobu úzké hrdlo systému
  • testy přes NRPE agenta, tímto protokolem a agentem (popř. NSClient na Windows) je možné poslat na server dotaz na test, který se provede lokálně a zpět do Nagiosu putuje už jen hodnota, vhodné na sledování CPU, RAM, disku, stav služeb v operačním systému, atd.
  • testování Oracle, MSSQL a PostgreSQL databází, nejen dostupnost listeneru, ale i obsazenost DB, počet spojení, stav záloh
  • aplikace jmx4perl + Jolokia, je užitečná kombinace produktů, kterými je možné sledovat stavy a metriky Java serverů, od využití heap space po počty http stavů za posledních 60 minut

Co jsme si do Nagiosu přidali – vlastní skripty, UI

Byť jsme hledali, tak některé testy jsme nenašli, ať už v té době, kdy jsme test potřebovali, neexistovali, nebo se nám z nějakého malicherného důvodu nelíbili, zkrátka vyrobili jsme si vlastní, nejčastěji Bash popř. Perl.

  • zjišťování stavu tiskáren, hlavně stav zbývajícího toneru
  • posílání testovacích souborů telnetem
  • tzv. Semafor systémů, který zjednodušeně helpdesku řekne, zda nějaký systém nemá problém

Něco na závěr

Doufám, že pokud jste dočetli až sem, tak byl článek aspoň částečně zajímavý nebo Vám dal trochu jiný pohled na téma monitorování. A abychom se nezapomněli pochlubit, v CCA nám Nagios sleduje 219 hostů a 1143 služeb, což je v porovnání s naší největší instalací u zákazníka drobek - tam máme sledováno 352 hostů a 5383 služeb.

Autor článku: Martin Ohera, CCA Group a.s.

Žádné komentáře:

Okomentovat