NET-Konsole überwachen

Anforderung

Eine convert4print-Installation besteht aus vielen Einzelkomponenten, die im Netzwerk verteilt, auch auf vielen Rechnern installiert sein können. Um eine zentrale Lizenzierung der Einzelkomponenten auch im Falle von deren Umzug innerhalb des Netzwerkes zu gewährleisten, bezieht sich convert4print in Lizenzfragen auf eine sogenannte Software-Management-Konsole (ein Programm) - ein irgendwo im Netzwerk installierter Dienst. Dieser Konsolen-Dienst bezieht die Informationen über lizenzierte Einzelkomponenten von convert4print aus einer Lizenzdatei, deren Authentizität er wiederum bei einem Lizenzserver der SPE Systemhaus GmbH validiert (NET-Konsole).

Es ist klar, dass, sollte diese Software-Management-Konsole ausfallen, über kurz oder lang die gesamte convert4print-Installation zum Stehen kommt. Deshalb ist es wichtig, die Funktion der Software-Management-Konsole zu überwachen.

Realisierung

Die Software-Management-Konsole besitzt einen eigenen eingebauten Mechanismus, der einen Hot-Standby-Backup realisiert. Wird die Konsole auf einem zweiten Rechner im Netzwerk installiert, so kann dessen Konsole als Backup-Konsole fungieren, die im Falle eines Ausfalls der Hauptkonsole automatisch deren Aufgaben übernimmt. Dies sichert die Installation gegen Ausfälle, die durch einen defekten Konsolen-Rechner oder ausgefallene Teilbereiche des Netzwerks verursacht werden (siehe Tip Backup-Konsole einrichten).

Ein zweiter Mechanismus innerhalb der NET-Konsole sorgt dafür, dass im Falle, dass keine Netzwerkverbindung zu einem der Lizenzserver hergestellt werden kann, automatisch ein anderer Lizenzserver angesprochen wird. Den Lizenzservern werden dabei Prioritäten zugeordnet:

Priorität DNS-Name Typ, Geltungsdauer IP-Adresse
1 spe-systemhaus-smc.net fest 85.214.207.130
2 spe-systemhaus.net fest 87.128.112.165
3 backup.spe-systemhaus.net fest 37.24.161.14   


Die NET-Konsole versucht, immer beginnend mit der höchsten Priorität, Verbindung mit einem Lizenzserver aufzunehmen. Ist dieser nicht erreichbar, wird der Lizenzserver der nächst niedrigeren Priorität angesprochen, usw. Damit ist eine Funktion der NET-Konsole garantiert, solange mindestens einer der drei Lizenzserver erreichbar ist.

Tritt aber der Fall ein, dass keiner der Lizenzserver erreichbar ist, zum Beispiel weil die Verbindung der Firma zum Internet gekappt ist, wird keiner der beiden Mechanismen eine grosse Hilfe sein. Deshalb ist es immer wichtig, die Konsole(n) auch lokal zu überwachen. Das kann mit kommerziellen Netzwerküberwachungsprogrammen geschehen oder aber auch mit Windows-Bordmitteln.

Wie die Windows-Bordmittel einzusetzen sind, ist im Tip Überwachung von convert4print beschrieben. Für diese Art der Überwachung ist die Kenntnis der Ereignisnummern Grundvoraussetzung. Hier ist die Liste der von der NET-Konsole genutzten Nummern:

Typ Ereignis Beschreibung
Informationen 1000 Der Dienst wurde erfolgreich installiert.
Informationen 1001 Der Dienst wurde erfolgreich entfernt.
Informationen 1002 Der Dienst wurde erfolgreich gestartet.
Informationen 1003 Der Dienst wurde erfolgreich angehalten.
Informationen 2000 Info: %1
Informationen 2001 Debug: %1
Informationen 2002 Ein neues Verzeichnis fuer Logdateien wurde angelegt.
Warnung 3000 Der %1 Dienst laeuft in %2 Tagen ab.
Warnung 3001 Der Dienst wurde bei der Verbindungsaufnahme zum convert4print Server angehalten.
Warnung 3002 Der Dienst hat den USBKey mit neuer Lizenz markiert.
Warnung 3003 Der Dienst hat von Bereitschaft auf Lizenzkonsole umgeschaltet. Nach 30 Tagen schaltet der Dienst die Lizenzverwaltung ab.
Warnung 3004 Es konnte keine Verbindung zum Server hergestellt werden.
Warnung 3005 Es konnte keine Verbindung zum entfernten Lizenz Server hergestellt werden. %1% der Wartezeit abgelaufen.
Fehler 4000 Der Dienst kann nicht entfernt werden.
Fehler 4001 Der Dienst konnte nicht installiert werden.
Fehler 4002 Die Initialisierung schlug fehl. Der Dienst kann nicht gestartet werden.
Fehler 4003 Der Dienst hat eine nicht unterstuetzte Anfrage bekommen.
Fehler 4004 Der Dienst wurde nicht vollstaendig konfiguriert, es wurden keine Daten in der Registry gefunden.
Fehler 4005 Der Fehler %2 ist aufgetreten. Die Lizenzdatei fuer den Dienst wurde nicht gefunden, die Lizenz ist ungueltig oder der USB Key fehlt.
Fehler 4006 Angehalten! Verursacht durch %1.
Fehler 4007 Dieses Programm laeuft nicht unter einem Debugger.
Fehler 4008 Zeitabweichung 1: %1
Fehler 4009 Zeitabweichung 2.
Fehler 4010 Kann keine Verbindung zum Server herstellen. %1% der Wartezeit abgelaufen.
Fehler 4013 Eine Software Management Console mit build groesser %1 wird benoetigt.
Fehler 4014 Lizenz Fehler %1.
Fehler 4015 Server Start Fehler %1.
Fehler 4016 Der %1 Dienst laeuft in %2 Tagen ab.
Fehler 4017 Die Log-Datei %1 konnte nicht geoeffnet werden.
Fehler 4018 Der Fehler %2 ist aufgetreten. Das Zertifikat der Anwendung ist ungueltig.
Fehler 4019 Es konnte noch keine Verbindung zum Server hergestellt werden. Es wird weiter versucht eine Verbindung herzustellen. Es werden keine weiteren Ereignismeldungen fuer diesen Fehler mehr erzeugt.
Fehler 4020 Es konnte noch keine Verbindung zum Lizenz Server hergestellt werden. Es wird kein weiterer Versucht unternommen eine Verbindung herzustellen. Das Programm wird beendet.
Fehler 4021 Das Programm wurde unerwartet beendet. Eine Archivdatei mit Informationen über das Beenden des Programms wurde erzeugt. Die Archivdatei wurde im Ordner '%1' gespeichert.


Wichtig ist weiterhin zu wissen, was in dem einzig interessierenden Fall passiert, dass keine Netzwerkverbindung zu einem Lizenzserver der SPE Systemhaus GmbH hergestellt werden kann, weil dies in letzter Konsequenz zum Stillstand führt.

Kann keine Verbindung zu einem der Lizenzserver hergestellt werden, werden in der Ereignisanzeige entsprechende Meldungen abgesetzt, die so angeordnet sind, dass auf sie abgestuft reagiert werden kann, wenn die Meldungen eben überwacht und entsprechende externe Ereignisse (z.B. EMails, SMS, etc) ausglöst werden. Nachfolgend ist ein typisches Szenario abgebildet - die Meldungen sind, so wie in der Ereignisanzeige, von unten nach oben zu lesen:

Typ Zeit Ereignis Beschreibung
Informationen 28.05.2013 16:04:21 1003 Der Dienst wurde erfolgreich angehalten.
Fehler 28.05.2013 16:04:18 4020 Es konnte noch keine Verbindung zum Lizenz Server hergestellt werden. Es wird kein weiterer Versuch unternommen eine Verbindung herzustellen. Das Programm wird beendet.
Fehler 28.05.2013 16:01:17 4010 Es konnte keine Verbindung zum Lizenz Server hergestellt werden. 90% der Wartezeit abgelaufen.
Fehler 28.05.2013 15:58:15 4010 Es konnte keine Verbindung zum Lizenz Server hergestellt werden. 80% der Wartezeit abgelaufen.
Fehler 28.05.2013 15:55:14 4010 Es konnte keine Verbindung zum Lizenz Server hergestellt werden. 70% der Wartezeit abgelaufen.
Fehler 28.05.2013 15:52:13 4010 Es konnte keine Verbindung zum Lizenz Server hergestellt werden. 60% der Wartezeit abgelaufen.
Warnung 28.05.2013 15:49:12 3005 Es konnte keine Verbindung zum Lizenz Server hergestellt werden. 50% der Wartezeit abgelaufen.
Warnung 28.05.2013 15:46:11 3005 Es konnte keine Verbindung zum Lizenz Server hergestellt werden. 40% der Wartezeit abgelaufen.
Warnung 28.05.2013 15:43:10 3005 Es konnte keine Verbindung zum Lizenz Server hergestellt werden. 30% der Wartezeit abgelaufen.
Warnung 28.05.2013 15:40:08 3005 Es konnte keine Verbindung zum Lizenz Server hergestellt werden. 20% der Wartezeit abgelaufen.
Warnung 28.05.2013 15:35:06 3005 Es konnte keine Verbindung zum Lizenz Server hergestellt werden. 10% der Wartezeit abgelaufen.
Warnung 28.05.2013 15:34:06 3004 Es konnte keine Verbindung zum Lizenz Server hergestellt werden.
Informationen 28.05.2013 15:24:02 1004 Lizenz bestätigt.


Das hier abgebildete Szenario basiert auf einer Einstellung der XML-Variablen 'NetHold = 30' und 'NetTry = 10' innerhalb der Lizenzdatei. Typische Werte einer produktiven Lizenz sind hingegen 'NetHold = 480' und 'NetTry = 240', das heist, die Konsole fragt alle vier Stunden nach einer Bestätigung der Lizenz durch den Lizenzserver, und läuft, für den Fall, dass keine Bestätigung erfolgt, noch für weitere acht Stunden.

Die Ereignisse 3005 und 4010 haben dann einen zeitlichen Abstand von immerhin 48 Minuten. Wird bereits auf das Ereignis 3004 hin eine Nachricht an einen Administrator ausgelöst, hat dieser immerhin noch acht Stunden Zeit, sich um die Behebung des Problems zu kümmern.

Bemerkungen