===== NET-Konsole überwachen ===== ==== Anforderung ==== Eine (p2f)-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 (p2f) 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 (p2f) aus einer Lizenzdatei (signierte XML-Datei), deren Authentizität er wiederum bei einem **Lizenzserver** der SPE Systemhaus GmbH validiert. Es ist klar, dass, sollte diese Software-Management-Konsole ausfallen, über kurz oder lang die gesamte (p2f)-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 [[print2forms:tips:tip31|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 ^ Name ^ IP-Adresse ^ | 1 | spe-systemhaus-smc.net | [GetIP spe-systemhaus-smc.net] | | 2 | spe-systemhaus.net | [GetIP spe-systemhaus.net] | | 3 | backup.spe-systemhaus.net | [GetIP backup.spe-systemhaus.net] | \\ 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 (beiden) 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 [[print2forms:tips:tip23|Überwachung von print2forms]] 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 print2forms Server angehalten. | | 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 unterstützte Anfrage bekommen. | | Fehler | 4004 | Der Dienst wurde nicht vollständig 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 ungültig. | | Fehler | 4006 | Angehalten! Verursacht durch %1. | | Fehler | 4007 | Dieses Programm läuft 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 Konsole mit Build grösser %1 wird benötigt. | | 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(sp)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 ==== * Für die Kommunikation mit dem Lizenzserver wird eine TCP/IP-Verbindung aufgebaut, die den Ziel-Port 55571 verwendet. Werden auf der **Firewall** abgehende Verbindungen geblockt, muss für die Management-Konsole eine Ausnahmeregel eingerichtet werden, die eine rausgehende (!) Verbindung zum Port 55571 erlaubt. * Ist die (p2f)-Installation innerhalb eines Netzes, dessen Firewalls nur mit bestimmten festen IP-Adressen Verbindungen gestatten, ist zur Zeit der dritte Lizenzserver nicht nutzbar. Im Falle, dass dieser ausfällt, muss mit einem PING die aktuelle IP-Adresse des dritten Lizenzservers ermittelt und auf der Firewall freigeschaltet werden. Der Lizenzserver spe.systemhaus-backup.net wechselt seine Adresse im Bereich von mehreren Wochen.\\ \\ Das hier beschriebene Ausfallszenario tritt bei solchen Installationen nach dem Ausfall der ersten zwei Lizenzserver in Aktion. Für solche Installationen ist die hier vorgestellte **Überwachung ein Muss**, weil Zeit gebraucht wird, die IP-Adresse des dritten Lizenzservers zu ermitteln und die Firewall umzukonfigurieren. * Die Lizenzserver stehen an drei verschiedenen Standorten innerhalb Deutschlands, sind über drei verschiedene Provider an das Internet angeschlossen und nutzen drei verschiedene Betriebssysteme. * Um in grossen (p2f)-Installationen, die über mehrere Unternehmensstandorte verteilt sind, einen noch höheren Grad an Betriebssicherheit zu erlangen, können an den einzelnen Standorten (p2f)-Proxies mit eigener Software-Management-Konsole installiert werden, die dann nur den jeweiligen Standort lizenziert. Trifft in der Zentrale der berühmte Bagger das Hauptkabel, oder fällt die VPN-Strecke aus, ist die Niederlassung trotzdem beliebig lang autark lauffähig. * Im Falle eines kompletten **Ausfalls der Internet-Verbindung** darf eine laufende Management-Konsole **niemals angehalten werden**, weil das einer sofortigen Abschaltung der Installation gleichkommt. Für einen Neustart der Konsole ist nämlich eine **aktive Internet-Verbindung zwingend erforderlich**!