Software-Management für Unix und Windows (Teil 1)

Das Verteilen von Anwendungen ist eine Sache sorgfältiger Planung

29.11.1996

Je mehr die Netzwerke in den Unternehmen wuchern, desto größer werden die Probleme mit dem Management aller involvierten Soft- und Hardwarekomponenten. Das gilt insbesondere für PC-Netze, in denen manchmal (etwa bei Versicherungen) bis zu 100000 Zielsysteme mit Anwendungen versorgt werden müssen.

Rund drei Viertel der Kosten für das Unterhalten von Client-Server-Umgebungen entfallen nach gängiger Meinung auf das Verteilen und Verwalten der Software. Im PC-Management dauert es deshalb etwa ein Jahr, bis der Return on Investment erreicht ist. Dementsprechend wächst auch die Nachfrage der Anwender nach geeigneten Hilfsmitteln. So prognostiziert das Marktforschungsinstitut Gartner Group für derartige Management-Systeme einen Umsatzzuwachs von durchschnittlich zwölf Prozent bis zum Jahr 2000.

Jedes Netz- und System-Management-Produkt stellt grundsätzlich eine mehr oder weniger zentralistische Löung dar. Das ist eine Eigenschaft, die heute nicht als besonders attraktiv gilt. Schon jeder einzelne Computer braucht ein umfassendes System zur Verwaltung sämtlicher Ressourcen und Softwarekomponenten - eine Arbeit, die üblicherweise vom Betriebssystem und etlichen Hilfsprogrammen erledigt wird.

Weit komplexer gerät diese Aufgabe in heterogenen Netzen, die ständig wachsen und sich verändern. Ohne eine einheitliche Darstellung, ein Single-Image, droht der Betrieb ab einer bestimmten Größenordnung zu einem Alptraum zu werden. Das ist die Aufgabe des System- und insbesondere des Software-Managements (SWM).

Der Begriff Netzwerk- und System-Management umfaßt:

-das Aufspüren und Registrieren der verteilten Software- und Hardwarekomponenten (Inventory, Asset-Management)

-das Erkennen der Funktionszustände aller beteiligten Komponenten

-die Möglichkeit des eventuell erforderlichen Eingreifens in Fehlerfällen oder bei Leistungsengpässen

-das Unterstützen der einzelnen Benutzer an ihren Desktop-Systemen oder Terminals bei Problemen jedweder Art (User-Helpdesk)

-das Verändern, Erweitern, (Um)konfigurieren oder Updaten von Komponenten innerhalb des Netzes sowie

-das Kontrollieren und Verwalten der erforderlichen Lizenzen für Softwareprodukte und das Durchsetzen der entsprechenden Lizenzbedingungen (Licence-Management).

All diese Aufgaben sind über die verschiedensten Komponenten des Computernetzes abzuwickeln - angefangen bei den physikalischen Netzbausteinen wie Leitungen, Bridges und Routern bis hin zu den eigentlichen Knotenrechnern mit ihren Ressourcen und den vielen im Netz verstreuten System- und Anwendungssoftwarekomponenten. Eingeteilt werden die Aufgaben folgendermaßen:

-Netzwerk-Management bezeichnet alle Aufgaben, die sich im weiteren Sinn auf das gesamte Kommunikationssystem beziehen.

-System-Management umfaßt all die Aufgaben, die die eigentlichen Knoten (Computer) mit ihren Ressourcen betreffen.

-Vom Software-Management werden alle Aufgaben behandelt, die beim Umgang mit Software anfallen. Das Thema Software-Management überschneidet sich teilweise mit den beiden zuvor genannten Themen.

Das Management von Software

Im Mittelpunkt stehen hier das effiziente Verwalten, Verteilen, Installieren/Deinstallieren und Konfigurieren von Softwarekomponenten und Daten auf wohldefinierte, im Netz liegende Systeme oder Systemgruppen. Die meisten dafür geeigneten Lösungen haben eine oberste Instanz, von der aus das gesamte Software-Management erfolgen kann. Diese Instanz wird hier als Manager-System bezeichnet.

Stammen die Management-Produkte von einem Computerhersteller, ist das Manager-System in der Regel nur auf den eigenen Systemplattformen lauffähig. Nur reine Softwarehäuser bieten Lösungen für eine größere Plattformpalette an. Hingegen wird als Zielsystem meistens eine größere Palette von Systemplattformen unterstützt.

Von ausschlaggebendem Gewicht für jedes Softwareprodukt ist seine Benutzerfreundlichkeit. Die meisten Unix-orientierten Management-Systeme sehen dazu als Administratorplatz einen grafischen X-Server vor. Daß bislang kaum Windows-Clients als Bedienerkonsole verwendet werden, ist nur ein vorübergehender Zustand.

Windows als neue Plattform

Das Command-Line-Interface, das fast alle Produkte noch zusätzlich enthalten, erlaubt neben der Bedienung des Software-Management-Systems von einfachen alphanumerischen Terminals aus auch die lose Kombination des SWM-Systems mit anderen Programmen - etwa in Verbindung mit Shell-Scripts oder durch Command-Line-Aufrufe aus anderen Anwendungen heraus. Einige Produkte bieten zudem eine echte Programmier-Schnittstelle (als Bibliothek), so daß sich diese homogen in ein übergeordnetes Programm integrieren. Zumindest bei den Anbietern für Unix-basierte Produkte ist SWM meist in ein mehr oder weniger umfassendes Netzwerk- und System-Management eingebettet.

Zwar unterstützen die meisten Management-Produkte auf Unix-Basis auch PCs als Zielsysteme. Allerdings unterscheiden sie sich ganz erheblich im Grad der angebotenen Integrationstiefe. Die Ursache liegt in der Unterschiedlichkeit beider Betriebssysteme bezüglich der Software-Produkt-konfektionierung, der Installations- und Konfigurationsverfahren.

Manche Anbieter versuchen diese Wesensunterschiede beider Welten dadurch in den Griff zu bekommen, daß sie ein bloßes PC-Software-Management-System als Subsystem in ihr Unix-Produkt mehr oder weniger tief integrieren. Typischerweise erfolgt in diesem Fall die Administration der Softwareverteilung für PC- und Unix-Lösungen auf logisch vollkommen verschiedenen Architekturen, und es wird lediglich die gleiche Infrastruktur zur Verteilung der Softwareprodukte genutzt.

Folgende Eigenschaften sollte ein Software-Management-System besitzen:

Effizienz: Diese Forderung bezieht sich im wesentlichen auf die Netzauslastung während der Softwareverteilung. Effizienz für SWM-Lösungen läßt sich nicht allein durch ein Hochschrauben der Übertragungsraten des Transportsystems erreichen. Das verhindern zum Beispiel schwer beeinflußbare Gegebenheiten wie die Architektur von Wide Area Networks (WANs). Es bleibt also nur die Möglichkeit, die zu übertragenden Datenvolumen so klein wie möglich zu halten. Außerdem sollte der Transfer möglichst selten und nur zu Zeiten geringer Netzauslastung, etwa nachts, erfolgen.

Konsistenz: Die zu verteilende Software muß sich mit der Zielplattform und den dort bereits installierten Programmen vertragen. Eine Voraussetzung, um diese Konsistenz zu erlangen, ist ein umfassendes System zur Verwaltung aller Soft- und Hardwarebestände im Netz. Darüber hinaus muß auch die globale Konsistenz sichergestellt sein. So muß die Version einer Client-Software zu der zugehörigen Server-Software passen.

Bedienerloser Betrieb: Softwareverteilung und -installation sollten grundsätzlich bedienerlos erfolgen können. Berücksichtigt man die üblichen heterogenen Hard- und Software-Umgebungen, wird der hohe Anspruch dieser Forderung deutlich. Die Schwierigkeit besteht dabei weniger in der eigentlichen Verteilung der Software als vielmehr in ihrer automatischen Installation und Konfiguration.

Anders als bei der Netz- und Kommunikationstechnik konnten sich bis heute keine Verfahren, Protokolle, Sprachen oder sonstige Schnittstellen etablieren, die ein vollständiges automatisches Installieren und Konfigurieren von Softwareprodukten für unterschiedliche Plattformen erlauben. Das ist der Grund dafür, daß sich die Produkte gerade in diesem Punkt enorm unterscheiden, obwohl fast alle Anbieter bedienerlosen Betrieb offerieren. Die Konsequenz ist, daß wohl noch längere Zeit Fehler während der Installation auftreten werden. Es ist schon ein Fortschritt, wenn diese gemeldet werden und Administratoren die Möglichkeit haben, Mängel interaktiv zu beseitigen.

Sicherheit: Neben dem Logging von Ereignissen zur Problemverfolgung wird vielleicht eine Aufzeichnung für Revisionszwecke gefordert, so daß sich stets nachvollziehen läßt, welcher Administrator welche Softwareprodukte und Daten auf welche Systeme installiert beziehungsweise deinstalliert hat. Ein derartiges Feature hilft bei eventuellen lizenz-, betriebssicherheits- oder datenschutzrelevanten Schwierigkeiten.

In einem großen Netz stellt die schlagartige Umstellung eines Produkts auf eine neuere Version meistens ein zu hohes Risiko dar. Deshalb wird eine neue Version möglichst schrittweise verbreitet. Ein solches Verfahren setzt natürlich voraus, daß sich parallel mehrere Versionen eines Produkts verwalten lassen, ohne daß dabei Inkonsistenzen entstehen.

Ein nicht zu unterschätzendes Problem ist, daß bei der Softwareverteilung auch Viren verbreitet werden. In das SWM-System integrierte Virensuchprogramme bieten eine gewisse Sicherheit. Dennoch bringen nur organisatorische Maßnahmen des Betreibers einen wirklichen Schutz.

Doch mit der erfolgreichen Verteilung von Software ist es nicht getan. Die Anwendungen müssen in ihren verschiedenen Release-Ständen auch verwaltet werden. Es entstehen gewaltige Informationsmengen, für deren Bewältigung manche SWM-Systeme eine relationale Datenbank einsetzen. Andere kommen mit indexsequentiellen Dateien aus. Die Verwaltung selbst geschieht entweder durch ein ständiges Fortschreiben des Ist-Zustands oder im optimalen Fall aktuell durch eine entsprechende Inventory-Funktion. Insofern ist die Softwareverteilung eng an das Asset-Management geknüpft.

Ebenfalls in enger Beziehung zum SWM steht das Lizenz-Management. Schließlich liegt es nahe, mit der Software auch die Lizenzen zu verwalten.

Angeklickt

Es existieren bereits einige Produkte für Software-Management. Der Beitrag arbeitet heraus, auf welche Eigenschaften und Funktionalitäten es vor allem bei der Softwareverteilung ankommt. Im zweiten Teil wird auf die konkreten Methoden zur Verteilung eingegangen.

*Karl-Heinz Samson ist Spezialist für Software-Management bei der Siemens-Nixdorf Informationssysteme AG in Paderborn.