Nagios ist eine freie Open-Source Software, die es ermöglicht, komplexe IT-Infrastrukturen sowohl in kleinen Betrieben wie auch in großen Rechenzentren zu überwachen. Nagios besteht aus einem Kern und sogenannten Plugins, welche die eigentliche Überwachungsintelligenz enthalten. Diese Plugins überwachen durch aktive Checks/Abfragen die jeweilige Hard- oder Software. Sie müssen für die Rückmeldung an den Nagios Kern nur eine sehr simple API bedienen und können in jeder Script- und Programmiersprache geschrieben werden. Auf diese Art und Weise ist eine einfache und schnelle aktive Überwachung von jeder erdenklichen Hard- und Software möglich. Neben den Plugins gibt es noch sogenannte Addons, welche zusätzliche Funktionen bereitstellen, wie beispielsweise der Empfang und die Auswertung von SNMP Traps.
Ein Teil der hier vorgestellten Implementierungen ist aufgrund besonderer Anforderungen entstanden, welche durch die vorhandenen Plugins nicht erfüllt werden konnten. Daher werden zum Teil verschiedene Plugins und Addons erweitert und gemeinsam integriert, um eine umfassende Überwachung des jeweiligen Einsatzzwecks zu bieten.
Zusätzlich werden Möglichkeiten beschrieben, andere Open-Source Software in Nagios zu integrieren. Zum einen soll gezeigt werden, wie die vorhandene IT-Infrastruktur in der Software Mediawiki komfortabel und formularbasiert dokumentiert werden kann und wie diese Daten automatisiert für die Nagios Konfiguration bereitgestellt werden können. Zum anderen werden Integrationen von beispielsweise der IDS Software Portsentry beschrieben.
Beschreibungen
Version 1.0: EMC Networker Monitoring mit SNMPTT/Nagtrap
Todo: Autoreset SNMP-Traps mit SNMPTT/Nagtrap
In Progress: Intrusion Detection mit Iptables und Einbindung von check_logfiles
Todo: Formularbasierte Infrastruktur Dokumentation mit Semantic-Mediawiki / Automatisierter Daten Export zu Nagios als benutzerdefinierte Makros
Todo: Tricks / Mousehover mit zusätzlichen Infos in der Webgui, ...
Nagios Tips
Buffer Size erhöhen
(muss je nach Bedarf angepaßt werden)
include/nagios.h
#define MAX_PLUGIN_OUTPUT_LENGTH 8192include/common.h
#define MAX_INPUT_BUFFER 8192#define MAX_PACKETBUFFER_LENGTH 8192
#define MAX_EXTERNAL_COMMAND_LENGTH 8192
Links
Icinga.org - Nagios Fork
Nagiosplugins.org - Offizielle Nagios Plugins
Monitoringexchange.org - Plugin und Addon Exchange
PNP4Nagios.org - Performance Graphen
NagTrap.org - SNMP Trap Frontend
Manubulon - SNMP Plugins
NagVis.org - Visualization
SNMPTT.org - SNMP Trap Translator
Netways.de - Plugins und Addons
Matthias Kettner - check_mk, mklivestatus, ...
ConSol*Labs - check_oracle_health, check_logfiles, ...
Trond Amundsen - check_openmanage (Dell Hardware)
STIC - Einige Nagios Plugins...
Lars Michelsen - Ninja Gui, Downtime Scheduling
Wolfgang Barth - Buch: Nagios - System- und Netzwerk-Monitoring