Domino SNMP-Agent

15.10.2006 von Martin Kuppinger
SNMP ist ein Standardprotokoll für das Management von Geräten, Systemen und An-wendungen im Netzwerk. Das Protokoll kann auch mit Lotus Domino für Analyse- und Steuerungsfunktionen genutzt werden. Das Konzept, die Implementierung und die Nut-zung des Protokolls sind Gegenstand der folgenden Ausführungen.

SNMP (Simple Network Management Protocol) ist sicherlich nicht der leistungsfähigste Ansatz für das Management von Geräten, Systemen und Anwendungen im Netzwerk. Der Vorteil ist aber, dass SNMP in sehr vielen Hardwarekomponenten und allen Serverbetriebssystemen sowie bei vielen Anwendungen unterstützt wird. Zusammen mit professionellen Management-Anwendungen, die auch für sehr große Unternehmen geeignet sind, führt das dazu, dass SNMP auch heute noch eine große Bedeutung hat. Damit ist SNMP auch für Domino-Server neben den eigenen Monitoring- und Management-Funktionen ein wichtiges Element.

Das Konzept

Mit dem Domino SNMP-Agent liegt eine spezielle Implementierung für einen SNMP-Agent beim Lotus Domino Server vor. Dieser SNMP-Agent arbeitet mit dem SNMP-Agent auf Betriebssystemebene zusammen. Er kommuniziert also nicht direkt mit einer SNMP-Management-Konsole, sondern immer über den vom Betriebssystem bereitgestellten Agent, dessen Funktionalität damit faktisch auf Domino erweitert wird.

Das wird bei einem Blick auf die Architektur (folgendes Bild) deutlich. Der Agent besteht aus einem externen Modul und zwei Add-Ins für den Domino-Server. Das externe Modul ist LNSNMP. Es stellt die Verbindung zwischen den beiden Add-Ins und dem SNMP-Agent des Betriebssystems her. Dieses Modul ist weitestgehend unabhängig vom Domino-Server, wird also von Fehlern beim Domino-Server in der Regel nicht beeinflusst. Damit kann es Informationen über entsprechende Fehler an die SNMP-Management-Konsole weiterleiten.

Architektur: der Domino-SNMP-Agent (Quelle: Lotus)

Die beiden anderen Module sind durch ihre Implementierung als Add-Ins deutlich enger mit dem Domino-Server verknüpft und stürzen bei einem schwerwiegenden Fehler ebenfalls ab.

Verwaltung: Die Auswahl des SNMP-Agents bei Windows.

Eines der beiden Module ist der QuerySet Handler. Dieser fordert einerseits statistische Informationen vom Domino-Server als Ergebnis entsprechender Anforderungen über SNMP an. Außerdem setzt er konfigurierbare Parameter von Domino, soweit sie über SNMP beeinflusst werden können.

Das zweite Modul ist der Event Interceptor. Er verarbeitet Ereignisse und löst SNMP-Traps aus. Die Traps, also Warnungen oder Meldungen, werden von ihm an LNSNMP und von dort an den SNMP-Agent des Betriebssystems weitergegeben, der sie an die Management-Konsole weiterleitet.

Ergänzend wird auch noch eine Domino-MIB (Management Information Base) geliefert, die die spezifischen Domino-Ereignisse beschreibt und bei Management-Anwendungen eingespielt werden kann. Über diese MIB lassen sich wesentliche Teile der Statistiken abfragen, die auch sonst vom Domino-Server gesammelt werden.

Die Funktionalität

Auf dieser Basis steht eine ganze Reihe von Managementfunktionen zur Verfügung:

Domino Administrator: Ein Domino-Server mit gestarteten SNMP-Diensten.

Ein Grundproblem bei SNMP ist das schwache Sicherheitskonzept. Daher muss man genau überlegen, ob dieser Mechanismus eingesetzt werden soll. Die besonders sensiblen Funktionen des Startens und Stoppens von Servern müssen daher auch explizit pro Server konfiguriert werden und stehen nicht standardmäßig zur Verfügung.

Installation und Implementierung

Der erste Schritt bei der Installation von SNMP für Lotus Domino ist die Einrichtung des SNMP-Agents auf Betriebssystemebene, also beispielsweise bei Windows. Dort findet sich der Agent im Bereich Verwaltungs- und Überwachungsprogramme bei Windows-Komponenten hinzufügen/entfernen im Bereich Software der Systemsteuerung.

Dieser Dienst muss anschließend ebenso wie der Lotus Domino-SNMP-Agent gestartet werden. Letzterer muss allerdings zunächst als Dienst konfiguriert werden. Um ihn als Dienst zu konfigurieren und die SNMP-Agenten auf System- und Domino-Ebene zu starten, werden in dieser Reihenfolge die folgenden Befehle verwendet:

lnsmp –Sc
net start snmp
net start lnsnmp

Anschließend müssen noch drei Dienste im Domino Administrator geladen und in die notes.ini für den späteren automatischen Start eingefügt werden:

Der letztgenannte ist für das Sammeln von Ereignissen auf verschiedenen Domino-Servern zuständig.

Konfigurationsaspekte

Die weitere Konfiguration erfolgt in der Monitoring Configuration Database, also events4.nsf. Dort können nun Event-Handler konfiguriert werden, um spezifische Domino-Traps zu erzeugen. Bei einem Event-Handler lässt sich bei der Konfiguration angeben, dass die Verarbeitung als SNMP-Trap erfolgen soll (siehe Bild).

Event Handler Wizard: Die Auswahl von SNMP bei der Definition eines Event-Handlers.

Die Erstellung solcher Event-Handler unterscheidet sich im Prinzip nicht von der Vorgehensweise, die man auch sonst beim Monitoring von Domino-Servern anwendet. Allerdings muss der Notification-Server auf * gesetzt werden.

Dieser Schritt ist letztlich in erster Linie Fleißarbeit. Da man sehr viele Möglichkeiten hat, um Event-Handler in Domino zu erstellen, kann man auch sehr umfassende Informationen an die SNMP-Management-Konsole weiterleiten, die allerdings so vorbereitet sein muss, dass sie die erzeugten Informationen verarbeiten kann.

Das bedeutet, dass man im ersten Schritt alle vorkonfigurierten Event-Handler daraufhin analysieren sollte, ob man sie auch in Verbindung mit SNMP benötigt. Wenn das der Fall ist, muss man analoge neue Event-Handler definieren, mit denen die Benachrichtigungen als SNMP-Traps gesendet werden. In den meisten Fällen wird man aber nur eine Teilmenge der Informationen an eine SNMP-Management-Konsole senden, um einen Grundstatus des Systems nachverfolgen zu können. Spezielle Analysefunktionen wird man dagegen eher bei Domino mit den dort verfügbaren Mitteln ausführen.

Was man aber letztlich mit dem Domino-SNMP-Agent macht, ist damit weniger eine Frage von Domino als der eingesetzten Management-Konsole für SNMP. Deren Funktionen sind entscheidend dafür, wie und in welchem Maße Management-Informationen von Domino-Servern abgefragt und verarbeitet werden. Und je mehr spezifische Informationen man an diese übergibt, umso höher wird der Anpassungsaufwand bei der Management-Konsole. Hier muss man genau überlegen, wie weit sich dieser Aufwand lohnt.

Allerdings reicht die Nutzung von SNMP alleine für Domino-Umgebungen trotz der recht weit reichenden Möglichkeiten in der Regel kaum aus. SNMP ist eher eine Ergänzung zu speziellen Monitoring-Funktionen oder spezialisierten Produkten wie den Schnittstellen zu Tivoli für die Analyse von Ereignissen auf dem Domino-Server.