Eine moderne Unternehmens-Monitoring-Umgebung muss eine ganze Menge Anforderungen erfüllen. Sie muss zunächst einmal alle SNMP-fähigen Netzwerkkomponenten wie Switches und Router, aber auch Server und darauf laufende Applikationen überwachen können. Neben den reinen Monitoringfunktionen wird eine komfortable Management- und Steuerkonsole immer wichtiger, über die IT-Verantwortliche die Umgebung verwalten sowie die gesammelten und aufbereiteten Daten auswerten. Im Internet- und Mobil-Zeitalter sind eine Web-Schnittstelle und die Zugriffsmöglichkeiten für ein Tablet oder Smartphone ein Muss. Wenn die Umgebung dann auch noch Agenten zur Verfügung stellt und auf unterschiedlichen Plattformen einsetzbar ist, steht dem Glück eines Administrators kaum noch etwas im Wege.
Die Initiatoren des NetXMS-Projekts [1] verstehen die Umgebung als Enterprise-Monitoring-System, die für den Einsatz in kleinen, mittleren, aber auch großen IT-Infrastrukturen geeignet ist. Dank der Three-Tier-Architektur, die auf Agenten für das Sammeln der Daten setzt, ist NetXMS ausreichend skalierbar, um sich an unterschiedliche Netzwerkgrößen anpassen zu lassen. Die gesammelten Daten werden von einem zentralen Monitoring-Server verarbeitet und einer Datenbank gespeichert.
Für den Zugriff auf die Daten steht eine plattformübergreifende Managementkonsole zur Verfügung. Alternativ kann NetXMS über ein Web-Interface oder eine Android-Konsole gesteuert und administriert werden. Der NetXMS-Server, das Herzstück der Monitoring-Umgebung, ist für Linux-artige Betriebssysteme und Windows 2003 (oder höher) verfügbar. Für das Monitoring von Netzwerk-Clients gibt es modulare Monitoring-Agents für die genannten Betriebssysteme – ebenso für BSD-basierte Systeme und Novell NetWare.
Wie es sich für eine professionelle Monitoring-Umgebung gehört, kann NetXMS den Status von Netzwerk-Devices, von Hosts und von Applikationen überwachen, die auf Servern ausgeführt werden. NetXMS kann Performance-Daten der Infrastrukturkomponenten und Server für die spätere Analyse sammeln. Das System kann textbasierte Protokolldateien im Auge behalten und die Daten der Windows-Ereignisanzeige verwerten. Die freie Umgebung erkennt die Netzwerk-Topologie, identifiziert automatisch neue Hosts und integriert sie ins Monitoring. Eine nützliche und praktische Funktion für Administratoren, die viel unterwegs sind: NetXMS verschickt seine Hinweise und Warnungen nicht nur per E-Mail, sondern auf Wunsch auch per SMS.
NetXMS verwendet für das Monitoring der Netzwerkkomponenten entweder einen nativen NetXMS- oder einen SNMP-Agenten, der die relevanten Daten auf den Netzwerk-Clients einsammelt und an den Monitoring-Server übergibt. Für die Administration des Servers stehen Ihnen eine Java-basierte Konsole, der Web-Zugriff und eine mobile Konsole für Android-Geräte zur Verfügung.
NetXMS verwendet eine SQL-Datenbank für die Speicherung der Daten. Die gesamte Netzwerkinfrastruktur wird innerhalb der Monitoring-Umgebung als ein Satz von Objekten behandelt, wobei jedes Objekt eine reale oder eine logische Entity beziehungsweise eine Gruppe solcher Objekte darstellt. Bei verschiedenen Objektgruppen beginnt NetXMS automatisch damit, Daten zu sammeln, sobald diese der Umgebung hinzugefügt werden.
Die Monitoring-Umgebung verwendet verschiedene Polling-Typen für das Einlesen der Daten:
- Status: Bestimmt den aktuellen Status eines Objekts.
- Configuration: Liest die aktuelle Konfiguration des Objekts ein.
- Topology: Sammelt alle verfügbaren Daten zur Netzwerk-Topologie.
- Discovery: Findet potenziell neue Netzwerkknoten während des Discovery-Zyklus.
- Routing: Sammelt Informationen über das IP-Routing.
Jeder Knoten und jedes Objekt kann verschiedene Performance-Parameter wie etwa “Freier Speicher“, “CPU-Auslastung“ besitzen. NetXMS bezeichnet die Parameter als DCI (Data Collection Items). Für die Ausgabe von Hinweisen und Warnungen ist die Definition von Grenzwerten notwendig. Sie bestehen immer aus einer Bedingung und einem Ereignispaar. Die aufgetretenen Ereignisse werden vom NetXMS Event Processor der Reihe nach verarbeitet – und zwar entsprechend den im System hinterlegten Verarbeitungsregeln.