Der SNMP-Manager fragt Werte ab, indem er Anfragen mit einer OID an den Standardport 161/udp schickt, auf dem ein SNMP-Agent horchen muss. Da auf einem System, also unter einer IP-Adresse, immer nur ein Prozess auf einem UDP-Port horchen kann, aber sowohl Betriebssystem, als auch Server-Prozesse wie Domino überwacht werden können sollen, gibt es typischerweise einen SNMP-Master-Agent des Betriebssystems, bei dem sich die SNMP-Slave-Agents der Dienste auf dem Server registrieren können. Bei dieser Registrierung gibt der Slave-Agent dem Master die Wurzel-OID der MIB des Dienstes bekannt. Bei Anfragen des SNMP-Managers werden alle OIDs, die mit dieser Basis-OID beginnen, an den Slave weitergereicht und seine Antwort wiederum über den Master-Agent zurückgegeben.
Bei Domino übernimmt der LNSNMP-Dienst die Rolle des SNMP-Slave-Agents. Dieser Dienst läuft außerhalb des Domino-Servers (nicht als Domino-Server-Add-in), damit er den Domino-Server und seine Unterprozesse beobachten und ihn ggf. starten, neustarten oder beenden kann.
Innerhalb des Domino-Servers müssen aber auch Tasks gestartet werden, die der LNSNMP kontaktiert, um Werte abzufragen bzw. die ihm auftretende Ereignisse in Form von SNMP-Traps zu schicken:
- Der Task Domino QuerySet Handler (quryset) beantwortet Anfragen des LNSNMP,
- der Task Domino Event Interceptor (intrcpt) schickt SNMP-Traps an den LNSNMP und
- der Task Statistic Collector (collect) generiert bei entsprechenden Anfragen die Server-Statistiken.
Das sind die Grundelemente für das Monitoring von Domino über SNMP. Im Teil 2 geht es dann um ein paar hilfreiche, kleine Werkzeuge, die einem helfen können, SNMP-Anfragen abzuschicken und Antworten anzuzeigen.