[go: up one dir, main page]

DE10206000A1 - Installations-Server - Google Patents

Installations-Server

Info

Publication number
DE10206000A1
DE10206000A1 DE10206000A DE10206000A DE10206000A1 DE 10206000 A1 DE10206000 A1 DE 10206000A1 DE 10206000 A DE10206000 A DE 10206000A DE 10206000 A DE10206000 A DE 10206000A DE 10206000 A1 DE10206000 A1 DE 10206000A1
Authority
DE
Germany
Prior art keywords
program code
server
installation
code
nms
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE10206000A
Other languages
English (en)
Inventor
Detlef Daase
Jens Boehme
Bettina Althainz
Irina Mueller
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alcatel Lucent SAS
Original Assignee
Alcatel SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alcatel SA filed Critical Alcatel SA
Priority to DE10206000A priority Critical patent/DE10206000A1/de
Priority to EP02360356A priority patent/EP1338962A3/de
Priority to US10/365,474 priority patent/US20030154472A1/en
Publication of DE10206000A1 publication Critical patent/DE10206000A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zur Installation eines ersten Programmcodes (P1, P2, P3) auf einem Server (NE bis NE9), der über ein Kommunikationsnetz (KN) mit einem Installations-Server (NMS) verbunden ist und auf dem bereits ein zweiter Programmcode installiert ist. Die Erfindung betrifft weiter den Server (NE1 bis NE9) und den Installations-Server (NMS) zur Durchführung dieses Verfahrens. Von dem Installations-Server (NMS) wird ein erster Datensatz (D1) über das Kommunikationsnetz (KN) zu dem Server (NE1 bis NE9) gesendet, der den ersten Programmcode (P1, P2, P3) enthält. Von dem Installations-Server (NMS) wird ein zweiter Datensatz (D2) über das Kommunikationsnetz (KN) zu dem Server (NE1 bis NE9) gesendet, der einen Testcode (PT1, PT2, PT3) für den zu installierenden ersten Programmcode (P1, P2, P3) enthält. Der Server (NE1 bis NE9) überprüft vor einer Integration des ersten Programmcodes (P1, P2, P3) in den zweiten Programmcode (PC2) mittels des Testcodes (PT1, PT2, PT3) den auf dem Server befindlichen zweiten Programmcode (PC2) darauf, ob er kompatibel mit dem ersten Programmcode (P1, P2, P3) ist. Nur, wenn das Ergebnis dieser Überprüfung positiv ist, integriert der Server (NE1 bis NE9) den ersten Programmcode (P1, P2, P3) in den bereits auf dem Server befindlichen zweiten Programmcode (PC2).

Description

  • Die Erfindung betrifft ein Verfahren zur Installation eines ersten Programmcodes auf einem Server, der über ein Kommunikationsnetz mit einem Installations-Server verbunden ist und auf den bereits ein zweiter Programmcode installiert ist. Bei dem Verfahren wird von dem Installations- Server zu dem Server ein erster Datensatz über das Kommunikationsnetz gesendet, der den ersten Programmcode enthält. Der erste Programmcode wird sodann in den bereits auf dem Server befindlichen zweiten Programmcode integriert. Die Erfindung betrifft weiter einen Server und einen Installations-Server zur Durchführung des Verfahrens.
  • Die Erfindung geht von dem im Bereich der Telekommunikations-Netze üblichen Verfahren zur Installation von sogenannten "Patches" aus.
  • "Patches" sind kleine Software-Pakete, die zur Korrektur von Fehlern oder zur Leistungserweiterung auf einer Vielzahl von Netzelementen zu installieren sind. Diese "Patches" werden von einem Betreiber des Telekommunikations-Netzes mittels des Netzwerkmanagementsystem auf Netzelemente des Telekommunikations-Netzes heruntergeladen. Anschließend werden sie von dem Netzbetreiber innerhalb der Software des Netzelements mittels Fern-Zugriff auf das Netzelement installiert.
  • Der Nachteil dieses Verfahrens besteht darin, dass es sehr zeitaufwendig ist und einen hohen Ausbildungsstand der Netzbetreiber erfordert.
  • Der Erfindung liegt nun die Aufgabe zugrund, die Installation von Programmcode auf Servern zu verbessern, auf denen bereits Programmcode installiert ist.
  • Diese Aufgabe wird gelöst durch ein Verfahren zur Installation eines ersten Programmcodes auf einem Server nach der Lehre von Anspruch 1. Diese Aufgabe wird weiter gelöst durch einen Server nach der Lehre von Anspruch 10. Diese Aufgabe wird weiter gelöst durch einen Installations- Server zur Unterstützung der Installation eines ersten Programmcodes nach der Lehre von Anspruch 12.
  • Der Erfindung liegt der Gedanke zugrunde, zusammen mit dem auf dem Server zu installierenden Programmcode einen für diesen Programmcode spezifischen Testcode mit zu dem Server zu übertragen. Bevor der Programmcode von dem Server selbständig in die auf dem bereits auf dem Server vorhandene Software integriert wird, wird mittels dem spezifischen Testcode die Kompatibilität der auf den Server befindlichen Software mit dem Programmcode überprüft. Der Server integriert sodann den Programmcode nur dann in die bereits auf dem Server befindliche Software, wenn das Ergebnis der Überprüfung positiv ist.
  • Dieser Ansatz bringt zum einen den Vorteil mit sich, dass der Programmcode an eine Vielzahl von Servern zur Installation verteilt werden kann, deren spezifische aktuelle Software-Installation nicht einheitlich ist. Durch das erfindungsgemäße Verfahren wird hier vermieden, dass Fehler bei der Installation des Programmcodes auftreten. Es ist möglich, die eigentliche Integration des Programmcodes in die auf dem Server vorhandene Software weitgehend oder vollständigen zu automatisieren. Es wird zum einen möglich, Netzbetreiber mit einem geringeren Ausbildungsstand einzusetzen und die für die Installation notwendige Netzbetreiber-Zeit zu reduzieren. Zum anderen wird die Verfügbarkeit des Gesamtsystems erhöht. Fehler bei der Software-Installation werden durch das erfindungsgemäße Verfahren weitestgehend verhindert. Deshalb eignet es sich besonders für den Einsatz in Bereichen, in denen hohe Sicherheitsanforderungen bestehen.
  • Ein weiterer Vorteil besteht darin, dass die Installation von Programmcode in einer Vielzahl von Servern flexibilisiert wird. Die individuelle Software- Installation dieser Server braucht nicht mehr im wesentlichen einheitlich zu sein. Dadurch vereinfacht sich auch die Verwaltung des Gesamtsystems.
  • Vorteilhafte Ausgestaltungen der Erfindung sind den Unteransprüchen zu entnehmen.
  • Es ist vorteilhaft, mit dem Programmcode und dem Testcode einen Installationscode für den zu installierenden Programmcode mit zu dem Server zu übertragen. Der Installationscode gibt hierbei an, wie der Programmcode in die bereits auf dem Server befindliche Software zu integrieren ist. Dies erweitert weiter die Flexibilität des Installationsverfahrens.
  • Weiter ist es vorteilhaft, die Installation des Programmcodes auf dem Server nicht vollständig zu automatisieren, sondern den integrierten Programmcode erst auf ein Kommando des Netzbetreibers hin zu aktivieren. Dadurch bleibt diese letzte Entscheidung in der Hand des Netzbetreibers und die Sicherheit des Gesamtsystems erhöht sich.
  • Weiter ist es vorteilhaft, den Programmcode in komprimierter Form zu dem Server zu übertragen. Dadurch verringert sich die für die Übertragung des Programmcodes notwendige Bandbreite.
  • Weiter ist es vorteilhaft, den auf dem Server vorhandenen Programmcode vor und nach der Integration des übermittelten Programmcodes abzuspeichern. Mitteis dieser Backup-Strategie ist es möglich, auf eine Deinstallationsroutine zu verzichten und den für den Backup notwendigen lokalen Speicher zu reduzieren.
  • Weiter ist es vorteilhaft, in einem Installationsserver, der die Installation des Programmcodes steuert, eine Verteilliste zu führen, die den Installationszustand der Netzelemente beschreibt. Mittels dieser Verteilliste ist es möglich, bereits eine Vorauswahl der Server zu treffen, an die ein zu installierender Programmcode gesendet wird. Dies erhöht weiter die Sicherheit und die Effizienz des Gesamtsystems.
  • Es ist natürlich auch möglich, die Erfindung nicht nur für die Installation von Programmcode auf Netzelementen eines Telekommunikationsnetzes einzusetzen. Vielmehr ist die Erfindung generell für die Installation von Programmcode auf Servern geeignet, auf denen bereits Software installiert ist. Sie ist somit für den Einsatz in beliebigen Computersystemen geeignet.
  • Im folgenden wird die Erfindung anhand mehrerer Ausführungsbeispiele unter zu Hilfenahme beiliegender Zeichnungen beispielhaft erläutert.
  • Fig. 1 zeigt ein Blockschaltbild eines Systems mit einem erfindungsgemäßen Installations-Server und einer Vielzahl von erfindungsgemäßen Servern.
  • Fig. 2 zeigt eine funktionelle Darstellung des Installations-Servers nach Fig. 1 und eines Servers nach Fig. 1.
  • Fig. 1 zeigt einen Installations-Server NMS, ein Kommunikationsnetz KN und mehrere Server NE1 bis NE9.
  • Bei dem Kommunikationsnetz KN handelt es sich um ein Datennetz. Es handelt sich hierbei beispielsweise um ein LAN (Local Area Network), das auf einem Ethernet-Protokoll basiert. Es kann sich bei dem Kommunikationsnetz KN jedoch auch um ein MAN (Metropolitan Area Network) oder um ein ATM (Asynchrome Transfer Mode) basiertes Netz handeln. Es ist weiter möglich, dass das Kommunikationsnetz KN aus mehreren Teilnetzen besteht. Solche Teilnetze können auf unterschiedlichen Transport-Protokollen basieren oder unterschiedlichen Netzbetreibern zugeordnet sein. Als Verbindungs-Schicht kann hierbei eine TCP/IP Protokoll-Stack verwendet werden (TCP = Transmission Control Protocol, IP = Internet Protocol). Es ist weiter möglich, dass es sich bei dem Kommunikationsnetz KN um ein Signalisierungsnetz eines Telekommunikationsnetzes handelt.
  • Der Installations-Server NMS steuert die Installation von Programmcode auf den Servern NE1 bis NE9. Bei dem Server NMS kann es sich um einen Server des Netzwerkmanagementsystems eines Telekommunikationsnetzes handeln. Es ist auch möglich, dass es sich bei dem Installations-Server NMS um einen Server innerhalb eines Computersystems handelt, der der Verwaltung des Computersystems dient.
  • Die Server NE1 bis NE9 stellen Server dar, auf denen Programmcode zu installieren ist. Die Anzahl der Server NE1 bis NE9 ist beispielhaft gewählt. Auf jedem der Server NE1 bis NE9 ist bereits ein Programmcode installiert. Der installierte Programmcode kann hierbei von Server zu Server variieren.
  • Die Server NE1 bis NE3, NE4 bis NE6 und NE7 bis NE9 bilden jeweils eine Gruppe von Servern, die über eine ähnliche Software-Installation verfügen.
  • Die Server NE1 bis NE9 sind jeweils mit dem Kommunikationsnetz KN verbunden. Auch der Installations-Server NMS ist mit dem Kommunikationsnetz KN verbunden. Weiter verfügen sowohl der Installotions-Server NMS als auch die Server NE1 bis NE9 über Mittel (entsprechende Schnittstellenkarten und Software-Treiber), um miteinander über das Kommunikationsnetz KN zu kommunizieren. In diesem Sinne sind der Installations-Server NMS und die Server NE1 bis NE9 über das Kommunikationsnetz KN miteinander verbunden.
  • Es ist hierbei auch möglich, dass einer der Server NE1 bis NE9 oder der Installations-Server NMS mit dem Kommunikationsnetz KN über eine Luft- Schnittstelle, beispielweise eine Funk-Verbindung verbunden ist.
  • Auf den Servern NE1 bis NE3 ist jeweils ein unterschiedlicher Programmcode installiert. Zur Installation eines Programmcodes P1 auf den Servern NE1 bis NE3 sendet der Installations-Server NMS zu den Servern NE1 bis NE3 jeweils einen ersten Datensatz D1 über das Kommunikationsnetz KN, der den Programmcode P1 enthält. Weiter sendet der Installations-Server NMS zu den Servern NE1 bis NE3 einen Datensatz D2 über das Kommunikationsnetz KN, der einen Testcode PT1 für den zu installierenden Programmcode P1 enthält.
  • Es ist weiter möglich, dass der Installations-Server NMS zu den Servern NE1 bis NE3 einen Datensatz D3 über das Kommunikationsnetz KN sendet, der einen Installationscode PI1 für den zu installierenden Programmcode P1 enthält. Der Installationscode PI1 wird von den Servern NE1 bi sNE3 jeweils dazu verwendet, den Programmcode P1 gemäß diesem Installationscode PI1 in den bereits auf dem jeweiligen Server befindlichen Programmcode zu integrieren. Auf die Übermittlung des Datensatzes D3 könnte natürlich auch verzichtet werden. Die Server NE1 bis NE3 könnten beispielweise eine eigenständige Logik enthalten, die bestimmt, wie der Programmcode P1 in den jeweiligen, bereits auf den Servern NE1 bis NE3 befindlichen Programmcode zu integrieren ist.
  • Bei dem Empfang der Datensätze D1 und D2 führen die Server NE1 bis NE3 folgendes Verfahren durch:
    Der jeweilige Server NE1 bis NE3 überprüft vor der Integration des Programmcodes P1 in den auf dem jeweiligen Server befindlichen Programmcode mittels des Testcodes PT1 den auf dem jeweiligen Server befindlichen Programmcode daraufhin, ob er kompatibel mit dem ersten Programmcode ist. Nur wenn das Ergebnis der Überprüfung positiv ist, das heißt wenn der auf dem jeweiligen Server befindliche Programmcode kompatibel mit dem Programmcode P1 erscheint, integriert der jeweilige Server den Programmcode P1 in den bereits auf dem Server befindlichen Programmcode.
  • In analoger Weise sendet der Installations-Server NMS zur Installation eines Programmcodes P2 Datensätze mit dem Programmcode P2, einem Testcode TP2 und einem Installationscode P12 an die Server NE4 bis NE6. Zur Installation eines Programmcodes P3 sendet der Installations-Server NMS Datensätze mit dem Programmcode P3, einem Testcode PT3 und einem Installationscode P13 an die Server NE7 bis NE9.
  • Im folgenden wird der detaillierte Aufbau und die detaillierte Funktionsweise eines erfindungsgemäßen Installations-Servers und eines erfindungsgemäßen Servers an Hand der Funktionsweise des Installations- Servers NMS und des Servers NE1 verdeutlicht.
  • Fig. 2 zeigt den Installations-Server NMS und den Server NE1.
  • Der Installations-Server NMS besteht aus einem oder aus mehreren miteinander verbundenen Rechnern, aus der auf diesen Rechnern aufsetzenden Software-Plattform, und aus auf dieser Software-Plattform aufsetzenden Applikations-Programmen. Bei der Ausführung dieser Applikations-Programme auf der System-Plattform des Installations-Servers NMS werden die im folgenden beschriebenen Funktionen des Installations- Servers NMS ausgeführt.
  • Aus funktioneller Sicht weist der Installations-Server NMS ein Benutzer- Interface UI, eine Steuereinheit IL und zwei Speichereinheiten PDB und PDDB auf.
  • Das Benutzer-Interface UI stellt die Kommunikation mit einem Netzbetreiber OP oder einem System-Administrator bereit. Vorteilhaft ist hierbei, dass die Benutzersteuerung über eine grafische Benutzeroberfläche erfolgt.
  • Bei der Speichereinheit PDB handelt es sich um eine auf der Systemplattform des Installations-Servers NMS bereitgestellten Datenbank oder Datenstruktur. In der Speichereinheit PDB sind zu installierende Programmcodes sowie zugeordnete Testcodes und Installationscodes abgespeichert. Zusätzlich hierzu können jedem abgespeicherten Programmcode noch zusätzliche Daten zugeordnet sein. Diese Daten betreffen beispielsweise Informationen über die Art der Server, auf denen der abgespeicherte Programmcode installationsfähig ist, Daten über die Funktionsweise des abgespeicherten Programmcodes, Daten über den Erstellungstag und die Erstellungsorganisation des Programmcodes oder Daten über eine Autorisation des Programmcodes.
  • Programmcode in diesem Sinne sind zum einen ausführbarer Code, beispielsweise Objekt-Code oder Libraries, oder zu interpretierender Code, beispielsweise Java-Applets. Zum anderen sind Programmcode in diesem Sinne Konfigurationsdateien, Daten, die darzustellende Informationen beschreiben oder sonstige Daten, die Eingangsdaten für Computerprogramme bilden und deren Funktionsweise beeinflussen.
  • Innerhalb der Speichereinheit PDB ist somit beispielsweise eine Liste angelegt, deren Zeilen jeweils einem der Programmcodes P1, P2 und P3 zugeordnet sind und deren Spalten, den Programmcode, den Testcode, den Installationscode und weitere Daten beinhalten. Es ist natürlich auch möglich, diese Daten innerhalb der Speichereinheit PDB anders zu strukturieren. Beispielsweise ist es möglich, Programmcode, zugeordneten Testcode, zugeordneten Installationscode und weitere zugeordnete Daten mittels einer verketteten Liste zu organisieren.
  • Die Speichereinheit PDDB kann in gleicher Weise wie die Speichereinheit PDB realisiert sein. Die Speichereinheit PDDB weist eine Verteilliste auf, die den Installationszustand der Server NE1 bis NE9 beschreibt. Die Verteilliste kann zum einen eine Verteil-Matrix umfassen, die beschreibt, welche der in der Speichereinheit PDB gespeicherten Programmcodes bereits auf welchem der Server NE1 bis NE9 installiert sind. Weiter kann die Verteilliste auch weitere Einzelheiten über die auf den Servern NE1 bis NE9 bereits installierten Programmcodes enthalten. Beispielsweise kann die Verteilliste Informationen darüber enthalten, welche Programme auf welchen der Server NE1 bis NE9 augenblicklich installiert sind. Weiter kann die Verteilliste Informationen enthalten, die Systemeigenschaften der Server NE1 bis NE9 beschreiben.
  • Die Steuereinheit IL steuert die Installation von Programmcodes auf den Servern NE1 bis NE9. Die Funktion der Steuereinheit IL wird hierbei von auf der Systemplattform des Installations-Servers NMS ablaufenden Applikations-Programmen erbracht.
  • Empfängt die Steuereinheit IL über das Benutzer-Interface UI ein Kommando, den Programmcode P1 auf den Servern NE1 bis NE3 zu installieren, so veranlasst sie das Senden des Datensatzes D1, der den Programmcode P1 enthält, über das Kommunikationsnetz KN an die Server NE1 bis NE3. Der Datensatz D1 wird hierbei zusammen mit einem speziellen Kommando an die Server NE1 bis NE3 gesendet. Dieses Kommando gibt den Servern NE1 bis NE3 zu erkennen, dass der Datensatz D1 der Integration des Programmcodes P1 in den bereits auf dem jeweiligen Server NE1 bis NE3 befindlichen Programmcode dient. Die Steuereinheit IL veranlasst weiter, dass der Datensatz D2, der den Testcode PT1 für den zu installierenden Programmcode P1 enthält, über das Kommunikationsnetz KN an die Server NE1 bis NE3 gesendet wird.
  • Der so übermittelte Testcode PT1 ist hierbei so ausgestaltet, dass der jeweilige Server NE1 bis NE3 mittels diesem den auf dem jeweiligen Server NE1 bis NE3 befindlichen Programmcode vor der Integration des Programmcodes P1 daraufhin überprüfen kann, ob er kompatibel mit dem Programmcode P1 ist.
  • Der Testcode PT1 kann bei dieser Überprüfung den auf dem jeweiligen Server befindlichen Programmcode daraufhin Überprüfen, ob bestimmte Programme oder Programmversionen vorhanden sind und ob deren Konfiguration den Anforderungen des Programmcodes P1 entspricht. Weiter ist es auch möglich, dass der Testcode PT1 ein oder mehrere lauffähige Test-Programme enthält, deren Ausführung auf dem jeweiligen Server ein Ergebnis erzeugt, mittels dem überprüft werden kann, ob notwendige Umgebungsbedingungen für den Programmcode P1 vorliegen oder nicht vorliegen. Hierbei ist es auch möglich, dass der Test-Code PT1 Informationen für die Interpretation des Ergebnisses eines solchen Test- Programms beinhaltet.
  • Weiter ist es auch möglich, dass der Testcode PT1 Informationen über spezifische Vorbedingungen enthält, die ein Server aufweisen muss, damit die Kompatibilität des Programmcodes P1 gewährleistet ist. Mittels dem Testcode überprüft der Server dann den auf dem Server befindlichen Programmcode daraufhin, ob der Server solche spezifischen Vorbedingungen erfüllt.
  • Weiter veranlasst die Steuereinheit IL das Senden des Datensatzes D3 über das Kommunikationsnetz KN an die Server NE1 bis NE3. Der Datensatz D3 enthält den Installationscode TI1 für den zu installierenden Programmcode P1. Der Installationscode PI1 ist hierbei so ausgestaltet, dass er den jeweiligen Server NE1 bis NE3 darin unterstützt, den Programmcode P1 in den bereits auf dem jeweiligen Server befindlichen Programmcode zu integrieren. Der Installationscode PI1 enthält spezifische Anweisungen, wie der Programmcode P1 in den bereits auf dem jeweiligen Server befindlichen Programmcode zu integrieren ist. Solche Anweisungen können zum einen die Einbindung des Programmcodes P1 in den auf dem Server befindlichen Programmcode betreffen, als auch eine notwendige Adaption des Programmcodes P1 oder des auf dem Server befindlichen Programmcodes betreffen.
  • Es ist möglich, dass die Steuereinheit IL das Senden der Datensätze D1, D2 und D3 innerhalb eines Gesamtpaketes DS an die Server NE1 bis NE3 veranlasst. Es ist auch möglich, dass die Datensätze D1, D2 und D3 als Einzelpakete zusammen mit jeweiligen Steueranweisungen an die Server NE1 bis NE3 gesendet werden.
  • Es ist vorteilhaft, dass die Steuereinheit IL den Programmcode P1 vor dem Senden komprimiert und der Datensatz D1 so den Programmcode P1 in komprimierte Form enthält. Natürlich ist es auch möglich, dass der Programmcode P1 in der Speichereinheit PDDB bereits in komprimierter Form abgespeichert ist. Weiter ist es auch vorteilhaft, die in dem Packet DS vorhandenen Datensätze D1, D2 und D3 gemeinsam zu komprimieren.
  • Es ist möglich, dass die Steuereinheit IL nicht von dem Netzbetreiber OP über die Benutzer-Schnittstelle UI angewiesen wird, den Programmcode P1 an die Server NE1 bis NE3 zu senden. Es ist auch möglich, dass die Steuereinheit IL mittels Zugriff auf die Daten der Speichereinheit PDDB selbstständig die Auswahl derjenigen Server trifft, an die der Programmcode P1 zu senden ist. Beispielsweise kann die Steuereinheit IL gleichartige Server auswählen, für deren Funktion die Installation des Programmcodes P1 notwendig oder sinnvoll ist. Damit wird dem Netzbetreiber die detaillierte Auswahl der Server abgenommen, auf denen der Programmcode P1 zu installieren ist. Weiter kann die Steuereinheit IL auch für den Netzbetreiber eine Vorauswahl dahingehend treffen, an welchen der Server welcher in der Speichereinheit PDB vorhandene Programmcode zur Installation zu senden ist.
  • Der Server NE1 ist beispielsweise ein Netzelement eines Telekommunikationsnetzes. Besonders vorteilhaft ist, wenn es sich bei dem Server NE1 um einen Billing-Server eines Telekommunikationsnetzes handelt. Gerade bei einem solchen Billing-Server bestehen besonders hohe Anforderungen an die Betriebssicherheit, so dass der Einsatz der Erfindung bei solchen Servern besonders vorteilhaft ist.
  • Der Server NE1 besteht aus einem Rechner und aus der auf diesem Rechner aufsetzenden Software. Der Rechner verfügt über eine Schnittstelleneinheit zur Kommunikation mit dem Installations-Server NMS über das Kommunikationsnetz KN. Eine solche Schnittstelleneinheit besteht beispielsweise in einer Steckerbuchse oder einem Funkteil, mittels dem die Kommunikation mit dem Kommunikationsnetz KN ermöglicht wird.
  • Beim Ablauf der Software auf dem Rechner werden die im folgenden beschriebenen Funktionen des Servers NE1 erbracht. Ein Teil dieser Software stellt ein Programm dar, dass die Installation von Programmcode auf der Systemplattform des Servers NE1 unterstützt. Aus funktioneller Sicht bildet dieses Programm eine Installationseinheit PIP. Der Server NE1 weist weiter einen bereits auf dem Server installierten Programmcode PC2 sowie eine Speichereinheit BDB auf.
  • Der Programmcode PC2 kann die gesamte Software des Servers NE1 umfassen. Es ist natürlich auch möglich, dass der Programmcode PC2 nur laufende Programme oder nur Teile der laufenden Programme des Servers NE1 umfasst. Beispielsweise ist es möglich, dass der Programmcode PC2 nicht das die Installationseinheit PIP bildende Programm sowie die Programme der Software-Plattform des Servers NE1 umfasst. Der Programmcode PC2 kann neben laufenden Programmen auch Daten umfassen.
  • Die Speichereinheit PDB dient der Sicherung von Daten des Servers NE1. Es handelt sich bei der Speichereinheit BDB somit beispielsweise um ein Festplattenlaufwerk, ein Bandlaufwerk oder um einen optischen Speicher.
  • Die Installationseinheit PIP weist mehrere Funktionseinheiten CL, TL, IL1, IL2 und AL auf. Jeder dieser Funktionseinheiten erbringt eine spezielle Funktion innerhalb des die Installationseinheit PIP bildenden Programms.
  • Die Installationseinheit PIP empfängt von dem Installations-Server NMS über das Kommunikationsnetz KN den Datensatz D1, der den Programmcode P1 enthält. Weiter empfängt die Installationseinheit PIP von dem Installations-Server NMS über das Kommunikationsnetz KN den Datensatz D2, der den Testcode PT1 für den zu installierenden Programmcode P1 enthält. Die Funktionseinheit TL überprüft den auf dem Server NE1 befindlichen Programmcode PC2 mittels des Testcodes PT1 daraufhin, ob er kompatibel mit dem Programmcode P1 ist.
  • Die Funktionseinheit CL koordiniert die Funktionen der Funktionseinheiten TL, IL1, IL2 und AL. Wird so von dem Installations-Server NMS eine Anweisung mit Datensätzen D1 und D2 empfangen, die die Installation des in dem Datensatz D1 enthaltenen Programmcodes auf dem Server NE1 anweist, so weist die Funktionseinheit CL ihrerseits die Funktionseinheit TL an, mittels dem Programmcode P1 und dem Testcode PT1 die Kompatibilität des Programmcodes P1 mit dem Programmcode PC2 zu überprüfen. Das Ergebnis dieser Überprüfung wird der Funktionseinheit CL von der Funktionseinheit TL mitgeteilt. Ist das Ergebnis der Überprüfung positiv, das heißt Kompatibilität gegeben, so weist die Funktionseinheit CL die Funktionseinheiten IL1 und II2 an, den Programmcode P1 in den Programmcode PC2 zu integrieren. Ist das Ergebnis negativ, so unterbindet die Funktionseinheit CL die Integration des Programmcodes P1 in den Programmcode PC2. Weiter ist es in diesem Fall vorteilhaft, dass die Funktionseinheit CL das Senden einer entsprechenden Nachricht an den Installations-Server NMS veranlasst.
  • Die Überprüfung der Kompatibilität durch die Funktionseinheit TL erfolgt mittels den bereits oben spezifizierten Möglichkeiten. So werden beispielsweise in dem Testcode PT1 spezifizierte Voraussetzungen überprüft, indem der Programmcode PC2 auf die Erfüllung dieser Voraussetzungen getestet wird. Weiter ist es möglich, dass ein in dem Testcode PT1 spezifiziertes Test-Programm zum Ablauf gebracht wird und das Ergebnis dieses Test-Programms mit in dem Testcode PT1 vorhandenen Bewertungs- Informationen verglichen wird. Weiter ist es auch möglich, dass der Programmcode P1 oder Teile des Programmcodes P1 in einen überwachten Zustand zum Ablauf gebracht wird und das Ergebnis mittels eines in dem Testcode enthaltenen Test-Musters ausgewertet wird.
  • Die Funktionseinheiten IL1 und IL2 steuern die Integration des Programmcodes P1 in den Programmcode PC2. Die Funktionseinheiten IL1 und IL2 integrieren den Programmcode P1 hierbei gemäß dem Installationscode PI1 in den bereits auf dem Server NE1 befindlichen Programmcode PC2. Es ist auch möglich, dass die Funktionseinheiten IL1 und IL2 diese Integration auf Grund einer eigenständigen Logik ohne Zuhilfenahme des Installationscodes PI1 erbringen. Dies hat jedoch den Nachteil, dass die Installation des Programmcodes P1 nicht an die spezifischen Bedürfnisse des Programmcodes PC2 angepasst werden kann.
  • Die Funktionseinheit IL1 passt den Programmcode P1 gemäß dem Installationscode PI1 an den Programmcode PC2 an. Auf Grund von Informationen über den Programmcode PC2 und den Anweisungen des Installationscodes PI1 verändert dien Funktionseinheit IL1 somit den Programmcode P1 in einen Programmcode P1'. Weiter ist es auch möglich, dass die Funktionseinheit IL1 den Programmcode PC2 gemäß dem Installationscode PI1 zur Anpassung an den Programmcode P1 verändert. Auf Grund von Informationen über den Programmcode PC2 und Anweisungen des Installationscodes PI1 führt die Funktionseinheit IL1 somit Modifikationen MOD in dem Programmcode PC2 durch.
  • Die Funktionseinheit IL2 fügt den modifizierten Programmcode P1' gemäß dem Installationscode Ph in den Programmcode P2 ein. Hierbei ist es auch möglich, dass für das Einfügen von der Funktionseinheit IL2 weitere Informationen über den Programmcode P2 ermittelt werden. Diese Informationen werden dann gemäß den Anweisungen des Installationscodes PI1 ausgewertet.
  • Bei dieser von den Funktionseinheiten IL1 und IL2 durchgeführten Integration des Programmcodes P1' in den bereits auf dem Server befindlichen Programmcode PC2 wird ein teil des Programmcodes PC2 durch den Programmcode P1 ersetzt. Es ist auch möglich, dass bei dieser Integration der Programmcode P1' dem Programmcode PC2 hinzugefügt wird.
  • Die Funktionseinheit AL aktiviert die von den Funktionseinheiten IL1 und IL2 durchgeführte Integration des Programmcodes P1 in den Programmcode PC2. Beispielsweise werden die von den Funktionseinheiten IL1 und IL2 eingebrachten Änderungen erst bei einem neuen Systemstart wirksam. Die Funktionseinheit AL veranlasst in diesem Fall die Aktivierung der Integration, in dem sie ein erneutes Hochfahren des Systems veranlasst. Die Funktionseinheit AL aktiviert die Integration des integrierten Programmcodes hierbei erst auf ein Kommando des Installations-Servers NMS. So aktiviert die Funktionseinheit AL die Integration beispielsweise erst dann, wenn der Server NE1 von dem Installations-Server NMS ein Kommando AC empfängt.
  • Weiter steuert die Funktionseinheit AL das Abspeichern des Programmcodes PC2 in der Speichereinheit PDB. Sie veranlasst das Speichern des Programmcodes PC2 vor der Integration des Programmcodes P1 und nach der Integration des Programmcodes P1. Es ist auch möglich, dass die Funktionseinheit AL das Speichern des Programmcodes PC2 vor der Aktivierung der Integration des Programmcodes P1 in den Programmcodes PC2 und nach der Aktivierung dieser Integration veranlasst.

Claims (16)

1. Verfahren zur Installation eines ersten Programmcodes (P1, P2, P3) auf einem Server (NE1 bis NE9), der über ein Kommunikationsnetz (KN) mit einem Installations-Server (NMS) verbunden ist und auf dem bereits ein zweiter Programmcode (PC2) installiert ist, wobei bei dem Verfahren
von dem Installations-Server (NMS) zu dem Server (NE1 bis NE9) ein erster Datensatz (D1) über das Kommunikationsnetz (KN) gesendet wird, der den ersten Programmcode (P1, P2, P3) enthält, und
der erste Programmcode (P1, P2, P3) in den bereits auf dem Server (NE1 bis NE9) befindlichen zweiten Programmcode (PC2) integriert wird,
dadurch gekennzeichnet,
dass von dem Installations-Server (NMS) zu dem Server (NE1 bis NE9) ein zweiter Datensatz (D2) über das Kommunikationsnetz (KN) gesendet wird, der einen Testcode (PT1, PT2, PT3) für den zu installierenden ersten Programmcode (P1, P2, P3) enthält,
dass der Server (NE1 bis NE9) vor der Integration des ersten Programmcodes (P1, P2, P3) in den zweiten Programmcode (PC2) mittels des Testcodes (PT1, PT2, PT3) den auf dem Server befindlichen zweiten Programmcode (PC2) daraufhin überprüft, ob er kompatibel mit dem ersten Programmcode (P1, P2, P3) ist, und
dass der Server (NE1 bis NE9) den ersten Programmcode (P1, P2, P3) in den bereits auf dem Server befindlichen zweiten Programmcode (PC2) integriert, wenn das Ergebnis der Überprüfung positiv ist.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
dass von dem Installations-Server (NMS) zu dem Server (NE1 bis NE9) ein dritter Datensatz (D3) über das Kommunikationsnetz (KN) gesendet wird, der einen Installationscode (PI1, PI2, PI3) für den zu installierenden ersten Programmcode (P1, P2, P3) enthält, und
dass der Server (NE1 bis NE9) den ersten Programmcode (P1, P2, P3) gemäß diesem Installationscode (PI1, PI2, PI3) in den bereits auf dem Server befindlichen zweiten Programmcode (PC2) integriert.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Server (NE1) den zweiten Programmcode (PC2) gemäß dem Installationscode (PI1) an den zweiten Programmcode (PC2) anpasst.
4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Server (NE1) den zweiten Programmcode (PC2) gemäß dem Installationscode (PI1) in den zweiten Programmcode (PC2) einfügt.
5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Server (NE1) den zweiten Programmcode (PC2) gemäß dem Installationscode (PI1) zur Anpassung an den ersten Programmcode (P1) verändert.
6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Server (NE1) bei der Integration des ersten Programmcodes (P1) in den bereits auf dem Server befindlichen zweiten Programmcode (PC2) einen Teil des zweiten Programmcodes (PC2) durch den ersten Programmcode (P1) ersetzt.
7. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Server (NE1) den integrierten ersten Programmcode auf ein Kommando (AC) des Installations-Servers (NMS) aktiviert.
8. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Server (NE1) vor der Integration des ersten Programmcodes (P1) in den zweiten Programmcode (PC2) mittels des Testcodes (PT1) den auf dem Server (NE1) befindlichen zweiten Programmcode (PC2) daraufhin überprüft, ob der Server (NE1) ein oder mehrere spezifische Vorbedingungen erfüllt.
9. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der erste Datensatz (D1) den ersten Programmcode (P1) in kommpremierter Form enthält.
10. Server (NE1 bis NE9) mit einer Schnittstelleneinheit zur Kommunikation mit einem Installations-Server (NMS) über ein Kommunikationsnetz (KN) und mit einer Installationseinheit (PIP) zur Installation eines ersten Programmcodes (P1, P2, P3) auf dem Server (NE1 bis NE9), wobei die Installationseinheit (PIP) so ausgestaltet ist, dass sie von dem Installations- Server (NMS) einen ersten Datensatz (D1) über das Kommunikationsnetz (KN) empfängt, der den ersten Programmcode (P1, P2, P3) enthält, dadurch gekennzeichnet, dass die Installationseinheit (PIP) weiter so ausgestaltet ist, dass sie von dem Installations-Server (NMS) einen zweiter Datensatz (D2) über das Kommunikationsnetz (KN) empfängt, der einen Testcode (PT1, PT2, PT3) für den zu installierenden ersten Programmcode (P1, P2, P3) enthält, dass sie vor der Integration des ersten Programmcodes (P1, P2, P3) in den zweiten Programmcode (PC2) mittels des Testcodes (PT1, PT2, PT3) den auf dem Server (NE1 bis NE9) befindlichen zweiten Programmcode (PC2) daraufhin überprüft, ob er kompatibel mit dem ersten Programmcode (P1, P2, P3) ist, und dass sie den ersten Programmcode (P1, P2, P3) in den bereits auf dem Server (NE1 bis NE9) befindlichen zweiten Programmcode (PC2) integriert, wenn das Ergebnis der Überprüfung positiv ist.
11. Server (NE1) nach Anspruch 10, dadurch gekennzeichnet, dass die Installationseinheit (PIP) weiter so ausgestaltet ist, dass sie ein Abspeichern des zweiten Programmcodes (PC2) vor und nach der Integration des ersten Programmcodes in den zweiten Programmcode veranlasst.
12. Installations-Server (MNS) zur Unterstützung der Installation eines ersten Programmcodes (P1, P2, P3) auf einem oder auf mehreren Servern (NE1 bis NE9), die jeweils über ein Kommunikationsnetz (KN) mit dem Installations-Server (NMS) verbunden sind und auf denen jeweils bereits ein zweiter Programmcode (PC2) installiert ist, wobei der Installations-Server (NMS) mit einer Speichereinheit (PDB) zum Speichern des ersten Programmcodes (P1, P2, P3) und mit einer Steuereinheit (IL) versehen ist, die so ausgestaltet ist, dass sie das Senden eines ersten Datensatz (D1), der den ersten Programmcode (P1, P2, P3) enthält, über das Kommunikationsnetz (KN) an den Server bzw. die Server (NE1 bis NE9) zur Integration des ersten Programmcodes (P1, P2, P3) in den bereits auf dem jeweiligen Server (NE1 bis NE9) befindlichen zweiten Programmcode (PC2) veranlasst, dadurch gekennzeichnet, dass die Steuereinheit (IL) weiter so ausgestaltet ist, dass sie das Senden eines zweiten Datensatzes (D2), der einen Testcode (PT1, PT2, PT3) für den zu installierenden ersten Programmcode (P1, P2, P3) enthält, über das Kommunikationsnetz (KN) an den bzw. die Server (NE1 bis NE9) veranlasst, wobei der Testcodes (PT1, PT2, PT3) so ausgestaltet ist, dass der jeweilige Server (NE1 bis NE9) mittels diesem den auf dem jeweiligen Server befindlichen zweiten Programmcode (PC2) vor der Integration des ersten Programmcodes (P1, P2, P3) in den zweiten Programmcode (PC2) daraufhin überprüfen kann, ob er kompatibel mit dem ersten Programmcode (P1, P2, P3) ist.
13. Installations-Server (NMS) nach Anspruch 12, dadurch gekennzeichnet, dass die Steuereinheit (IL) weiter so ausgestaltet ist, dass sie das Senden des ersten Datensatzes (D1) und des zweiten Datensatzes (D2) an eine Vielzahl von gleichartigen Servern (NE1 bis NE3) veranlasst.
14. Installations-Server (NMS) nach Anspruch 12, dadurch gekennzeichnet, dass der Testcode (PT1) weiter so ausgestaltet ist, dass verschiedene Server (NE1 bis NE3) mit verschiedenem zweiten Programmcodes mittels dem Testcode (PT1) den jeweiligen zweiten Programmcode vor der Integration des ersten Programmcodes (P1) in den jeweiligen zweiten Programmcode daraufhin überprüfen können, ob er kompatibel mit dem ersten Programmcode (P1) ist.
15. Installations-Server (NMS) nach Anspruch 12, dadurch gekennzeichnet, dass die Steuereinheit (IL) weiter so ausgestaltet ist, dass sie das Senden des ersten Datensatzes (D1) und des zweiten Datensatzes (D2) an eine Vielzahl von Netzelementen (NE1 bis NE3) eines Telekommunikationsnetzes veranlasst.
16. Installations-Server (NMS) nach Anspruch 12, dadurch gekennzeichnet, dass die Steuereinheit (PIP) weiter so ausgestaltet ist, dass sie mit einer zweiten Speichereinheit (PDDB) zur Speicherung einer Verteilliste versehen ist, die den Installationszustand der Server (NE1 bis NE9) beschreibt.
DE10206000A 2002-02-14 2002-02-14 Installations-Server Withdrawn DE10206000A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE10206000A DE10206000A1 (de) 2002-02-14 2002-02-14 Installations-Server
EP02360356A EP1338962A3 (de) 2002-02-14 2002-12-17 Installationsserver
US10/365,474 US20030154472A1 (en) 2002-02-14 2003-02-13 Installation server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10206000A DE10206000A1 (de) 2002-02-14 2002-02-14 Installations-Server

Publications (1)

Publication Number Publication Date
DE10206000A1 true DE10206000A1 (de) 2003-08-21

Family

ID=27618663

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10206000A Withdrawn DE10206000A1 (de) 2002-02-14 2002-02-14 Installations-Server

Country Status (3)

Country Link
US (1) US20030154472A1 (de)
EP (1) EP1338962A3 (de)
DE (1) DE10206000A1 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10206009A1 (de) * 2002-02-14 2003-08-28 Alcatel Sa Dienstleistungs-Server
DE10206001A1 (de) * 2002-02-14 2003-08-28 Alcatel Sa Verfahren zur Steuerung der Installation von Programmcode auf Netzelementen
DE10241957A1 (de) * 2002-09-10 2004-03-18 Siemens Ag Datenkommunikationssystem, Rechner, sowie Verfahren zur Aktualisierung von auf einem Rechner eines Datenkommunikationsystems gespeicherter Software
US20050257199A1 (en) * 2004-05-13 2005-11-17 Enrico Johansson Method of and system for performance analysis and software component installation
US20050267765A1 (en) * 2004-05-26 2005-12-01 Jun-Jang Jeng Apparatus and method for policy-driven business process exception handling
US8495619B2 (en) * 2005-06-29 2013-07-23 Flexera Software Llc Method and system for pre-deployment conflict checking
EP2674872B1 (de) * 2006-04-21 2019-10-09 Cirba IP Inc. Verfahren und System zur Bestimmung der Kompatibilität von Computersystemen
US8151257B2 (en) * 2007-05-29 2012-04-03 Sap Ag Managing different versions of server components regarding compatibility with collaborating servers
JP5368878B2 (ja) * 2009-05-25 2013-12-18 キヤノン株式会社 情報処理装置、製造装置及びデバイス製造方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE513182C2 (sv) * 1991-06-12 2000-07-24 Icl Systems Ab Förfarande och system för att revidera data i ett distribuerat datasystem
US5845090A (en) * 1994-02-14 1998-12-01 Platinium Technology, Inc. System for software distribution in a digital computer network
US6161218A (en) * 1996-01-16 2000-12-12 Sun Microsystems Inc. Software patch architecture
US6526153B2 (en) * 2001-02-08 2003-02-25 Tibbetts Industries, Inc. Armature assembly for balanced moving armature magnetic transducer and method of locating and adjusting same
US20040205709A1 (en) * 2001-05-09 2004-10-14 Sun Microsystems, Inc. Method,system, and program for providing patch expressions used in determining whether to install a patch

Also Published As

Publication number Publication date
EP1338962A2 (de) 2003-08-27
US20030154472A1 (en) 2003-08-14
EP1338962A3 (de) 2004-12-22

Similar Documents

Publication Publication Date Title
DE4235193C2 (de) Netzwerksystem und zugehöriges Softwareverwaltungsverfahren
DE102004062434A1 (de) System und Verfahren zum automatischen Aktualisieren von Funktionalitäten in einem verteilten Netzwerk
EP1430369B1 (de) Dynamischer zugriff auf automatisierungsressourcen
WO2001011822A2 (de) System und verfahren zum testen der belastung wenigstens einer ip-gestützten einrichtung
DE10309246B4 (de) Verfahren für das Event Management
EP0966169B1 (de) Sicherungsverfahren für Betriebsdaten eines Netzelementes und Steuerungseinrichtung für ein Netzelement
DE60224101T2 (de) Kommunikationsnetzwerk
DE10206000A1 (de) Installations-Server
DE102004062432A1 (de) System und Verfahren zum automatischen Erstellen, Installieren und Konfigurieren von Erweiterungen der Funktionalitäten in den Systemknoten eines verteilten Netzwerks
EP1005216A2 (de) Verfahren und Vorrichtung zur Validierung von Konfigurationsdaten für Telekommunikationssysteme
EP1730631B1 (de) Verfahren zur benutzerspezifischen konfiguration eines computers aus einer gruppe von vorbereiteten computern
EP0360135A1 (de) Verfahren zur Interruptverarbeitung in einer Datentverarbeitungsanlage
DE102004007231B4 (de) Verfahren zum Konfigurieren einer Automatisierungskomponente eines Automatisierungssystems und entsprechendes Automatisierungssystem
DE60202190T2 (de) Dienstleistungs-Server
DE10206001A1 (de) Verfahren zur Steuerung der Installation von Programmcode auf Netzelementen
DE19930119C2 (de) Prioritätsverwaltungsverfahren
EP1380908A2 (de) System zur automatischen Konfiguration von Steuerungssoftware
DE10049621A1 (de) Verfahren zum Betreiben eines Datenverarbeitungssystem
DE19959434A1 (de) Verfahren zur Änderung des Betriebssystems eines Telekommunikationsendgerätes
WO2004042479A2 (de) Verfahren zum parametrieren von rechnergestützt arbeitenden geräten
DE10110472C2 (de) Verfahren zum Steuern einer Vielzahl von Computern beim Auftreten eines Stromausfalls
EP0821533B1 (de) Verfahren zum Laden einer Befehlsfolge in einer Telekommunikationsanlage
DE10148877A1 (de) Verfahren zum Verteilen von Daten in einem Datennetz
WO2023241977A1 (de) Aktualisieren einer software durch eine auszuführende umsetzungsvariante
EP1109100B1 (de) Verfahren zur Abarbeitung eines Daten-Ladeauftrags in einem Daten ver- und/oder bearbeitenden System

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee