Umbau eines Netzwerk-Konfigurationsdienstes

Stichwörter

Datenbanken, SQL, Java, JDBC, C++, OLE-DB, NT-Services

Aufgabenstellung

Der Auftraggeber ist der Weltmarktführer im Bereich des Betriebs von Datennetzen.

Für die Netzwerkkonfiguration existierten bei Projektbeginn eine Datenbank, die Konfigurationsaufträge (z. B. Leistungsprofile für die Endkunden, Cross-Connects von Netzelementen etc.) erfasste sowie ein in einem früheren Projekt von Bardenheuer erstellter Konfigurationsdienst (als NT-Service), der diese Aufträge las, vorverarbeitete, in geeignete Konfigurationsbefehle für das Netzwerk umsetzte und den Erfolg bzw. Misserfolg als Statusmeldung an die Konfigurationsdatenbank sandte.

Die Aufgabe bestand darin, zur Steigerung der Robustheit eine Pufferdatenbank einzuführen, die die Aufträge der Konfigurationsdatenbank zwischenspeichert. Ein in Java geschriebener Vermittlungsdienst (NT-Service) soll die Aufträge von der Konfigurationsdatenbank abholen und in die Pufferdatenbank übertragen.

Um den Datendurchsatz zu erhöhen, sollte der Vermittlungsdienst in mehrere getrennte Prozesse aufgeteilt werden, die jeweils eine eigene geografische Region des Netzwerks bearbeiten. Da bei Ausfall einer dieser Dienst-Instanzen die anderen unbeeinflusst weiterarbeiten können, schafft diese Änderung zusätzlich Ausfallsicherheit.

Neue Architektur des Konfigurationsdienstes

Neue Architektur des Konfigurationsdienstes

Lösung

Bardenheuer erstellte zunächst eine Leistungsbeschreibung zur Dokumentation der gegebenen Anforderungen.

Auf der Grundlage dieses Dokuments konnten unabhängig voneinander der Java-Vermittlungsdienst, die Pufferdatenbank und der Umbau des Konfigurationsdienstes realisiert werden.

Bei der Programmierung des Java-Dienstes wurden zwei getrennte Datenbank-schnittstellen für den Oracle-Server der Konfigurationsdatenbank und den MS-SQL-Server der Pufferdatenbank implementiert sowie die vermittelnden Klassen erstellt. Die Klassen wurden einzeln und im Zusammenhang mit den Datenbanken mit Hilfe des Test-Frameworks JUnit getestet. Der lauffähige Java-Vermittlungsdienst wurde dann mittels des Java-Service-Wrappers der Fa. Tanuki als NT-Service installiert.

Bardenheuer erstellte das Datenmodell und die erforderlichen Stored Procedures zum Test und Zugriff beider Dienste auf die Pufferdatenbank. Projektbegleitend entstand ferner eine Simulation der Konfigurationsdatenbank zum Test des Java-Dienstes und zur Erstellung von Testdaten für das Gesamtsystem.

Bei dem bereits existierenden, in C++ erstellten Konfigurationsdienst wurden alle Zugriffe auf die Oracle-Datenbank durch entsprechende Zugriffe auf die MS-SQL-Server-Pufferdatenbank ersetzt. Das in OLE-DB erstellte Datenbank-Interface blieb dabei weitestgehend unverändert.

Außerdem war es erforderlich, den Code für die Registrierung als NT-Service zu erweitern, da nun jeder einzelne Prozess mit dem Code der Region, für die er zuständig ist, parametriert werden muss. Der Konfiguration der Netzelemente erfolgt über einen DCOM-Server je verwalteter Region.


Sie wünschen weitere Informationen oder haben Fragen zur Realisierung eines Projekts? Senden Sie uns eine E-Mail mit Ihrem Anliegen und wir werden uns umgehend mit Ihnen in Verbindung setzen. Gerne helfen wir Ihnen auch telefonisch unter der Nummer 089 547054-0 weiter.