Nagios: Der Standard zur effektiven Überwachung der IT-Infrastruktur

„Was man nicht messen kann, kann man auch nicht verwalten“ – so lautet einer der wichtigsten Leitsprüche, wenn es um das Management komplexer IT-Infrastruktur geht. Für viele Unternehmen ist es von elementarer Bedeutung, dass Effizienz und Funktionalität des IT-Betriebs zu jeder Zeit gewährleistet sind. Wer allerdings als Verantwortlicher darauf verzichtet, die verschiedenen Prozesse im Netzwerk zu beobachten, wird dem Wunsch nach dessen Stabilität nur schwer nachkommen können. Nur mithilfe der dauerhaften Überwachung der einzelnen Netzwerkgeräte und deren Prozesse können Probleme schon im Voraus erkannt und behoben werden. Zusätzlich zu einem erfahrenen IT-Team ist die richtige Monitoring-Software dabei der entscheidende Erfolgsfaktor. Mehrfach preisgekrönt gilt Nagios für viele als die beste Wahl, doch was steckt eigentlich hinter der Open-Source-Lösung?

Das steckt hinter Nagios

1996 entwickelte der Amerikaner Ethan Galstad eine Anwendung für MS-DOS, die es ermöglichte, die Erreichbarkeit von Novell-NetWare-Servern mithilfe von Drittanbieter-Programmen zu überprüfen. Basierend auf diesem Basiskonstrukt veröffentlichte er drei Jahre später das Open-Source-Projekt NetSaint, den Vorgänger der heute unter dem Namen Nagios bekannten Monitoring-Software. Galstad gründete 2007 das Unternehmen Nagios Enterprises, das bis heute für die Weiterentwicklung und den Vertrieb der Open-Source-Variante Nagios Core sowie verschiedener kostenpflichtiger Editionen verantwortlich ist.

Nagios steht unter der GNU-GPL-Lizenz und läuft nativ auf diversen unixoiden Systemen. Mithilfe virtueller Maschinen kann die Software allerdings auch auf Windows-Betriebssystemen verwendet werden. Um das Monitoring-Tool zu installieren und zu nutzen, wird außerdem ein Webserver mit PHP-Modul benötigt, wobei der Hersteller die Nutzung von Apache empfiehlt. Zusätzlich zum Programmkern ist der Download der offiziellen Nagios Plugins notwendig. Diese Module sind für die Durchführung und Auswertung der verschiedenen Überwachungsabfragen von Netzwerken, Hosts und Diensten verantwortlich und damit unverzichtbar für die Funktionalität der IT-Software.

So ermöglicht Nagios das Monitoring von Netzwerken und Co.

Es spielt keine Rolle, ob Sie die einzelnen Computersysteme, eine Datenbank oder einen Server überwachen wollen: Sie installieren die Software nicht auf den jeweiligen Geräten, sondern auf einem separaten Nagios-Server. Von diesem aus konfigurieren Sie objektorientiert, welche Systeme und Prozesse beobachtet werden sollen. Dabei dreht sich alles um die vier folgenden Komponenten bzw. Objekt-Typen:

  • Hosts: Als Host definieren Sie alle zu Ihrem Netzwerk gehörenden Geräte, Server, Datenbanken etc., die überwacht werden sollen. Die wichtigste Kennziffer eines Hosts ist die jeweilige IP-Adresse.
  • Services: Mit Services definieren Sie, welche Eigenschaften der Hosts Nagios überprüfen soll. Bei diesen Eigenschaften kann es sich um Dienste, die auf dem Host laufen (HTTP, FTP etc.), interne Attribute wie den verfügbaren Speicherplatz oder physische Merkmale wie den Temperaturwert der Hardware handeln.
  • Kommandos: Mit Kommandos steuern Sie den Ablauf des Monitorings. Mit ihnen konfigurieren Sie, wie die Überwachung von Hosts und Services gestaltet wird und bei welchen auftretenden Ereignissen Nagios Sie benachrichtigen soll.
  • Kontakte: Durch die definierten Kontakte weiß Nagios, wer benachrichtigt werden soll, wenn ein Ereignis auftritt. Die Software sendet in diesem Fall beispielsweise eine E-Mail, eine SMS oder eine Sprachnachricht.

Auch wenn Nagios selbst nicht auf den verschiedenen Hosts installiert wird, werden Plug-ins, die interne Daten überprüfen sollen, dennoch direkt auf ihnen ausgeführt. Eine selten genutzte Methode, um diese Ausführung zu bewirken, ist der Fernzugriff, der allerdings mit einem hohen Aufwand und – bei einer sicheren Verbindung – auch mit einer unverhältnismäßigen Systemauslastung verbunden ist. Die einfachere Alternative ist das Installieren von speziellen Programmen auf den Hosts. Diese führen einzig die vorkonfigurierten Systemabfragen aus und übermitteln die Ergebnisse über Netzwerk-Ports an den Nagios-Server. Standardmäßig wird hierfür der Nagios Remote Plugin Executor (NRPE) genutzt, mit dessen Unterstützung Nagios auch Windows-Systeme überprüfen kann.

Eine weitere Möglichkeit, mit der Nagios an die jeweiligen Daten kommt, ist der passive Check. In diesem Fall fordert gar nicht die Monitoring-Software die Informationen an, sondern ein anderes Programm wie Nagios Service Check Acceptor (NSCA). Dem Überwachungs-Server wird im Anschluss einzig das Ergebnis mitgeteilt, das er im Anschluss entsprechend verarbeitet. Unabhängig von der Überprüfungsart wir dem Nagios-Server immer einer der folgenden vier Statuswerte übermittelt:

  • 0 (OK): Bei der Überprüfung wurde kein Problem festgestellt.
  • 1 (WARNING): Die Überprüfung hat eine Warnmeldung verursacht.
  • 2 (CRITICAL): Bei der Überprüfung ist ein kritisches Problem aufgetreten.
  • 3 (UNKNOWN): Der Status des überprüften Hosts bzw. Services konnte nicht ermittelt werden.

Zusätzlich erhält das Monitoring-Programm auch einen Zeitstempel, einen internen Befehl sowie optional einen Text, der vom Check ausgegeben werden kann.

Vor- und Nachteile von Nagios

Dass Nagios als Monitoring-Lösung so gefragt ist, ist vor allem auf den riesigen Funktionsumfang zurückzuführen. Dank des freien Quellcodes kann die Software seit der Veröffentlichung an die eigenen Vorstellungen angepasst und erweitert werden. Über 1.000 Plug-ins sowie diverse alternative Frontends sind im Laufe der Zeit entwickelt und größtenteils kostenfrei zur Verfügung gestellt worden. In Kombination mit dem modularen Aufbau können so selbst unerfahrenere Administratoren ein Funktions-Set zusammenstellen, das die Bedürfnisse ihres Netzwerks abdeckt, ohne dass eigene Schnittstellen programmiert werden müssen.

Der einzige größere Nachteil von Nagios ist die aufwändige Konfiguration von Server und Objekt-Typen, die durch eine fehlende deutsche Sprachausgabe zusätzlich erschwert wird. Aus diesem Grund ist es empfehlenswert, sich bereits im Vorhinein mit der Bedienung des Tools zu beschäftigen und beispielsweise die Anleitungen und Nagios-Tutorials auf der Herstellerseite zu inspizieren.

Welche Nagios-Alternativen gibt es?

Nagios ist zwar zum Standard des IT-Monitorings geworden, allerdings ist es in Sachen Netzwerk-Überwachung keinesfalls alternativlos. Es gibt verschiedene ähnliche, aber auch weniger komplexe Tools, deren Nutzung ebenfalls empfehlenswert ist. Aus dem Open-Source-Bereich sind hier vor allem die Enterprise-Lösung Zabbix und das in Deutschland entwickelte Windows-Programm PRTG Network Monitor. Proprietäre Lösungen wie ManageEngine und CA befassen sich meist nicht nur mit der Überwachung, sondern dem kompletten Management des Netzwerks und sind – insofern das notwendige Budget vorhanden ist – sinnvolle Nagios-Alternativen für große Unternehmen.