Seite 2 Leitfaden zur Einführung einer automatisierten Softwareverteilung
Erklärung:
Ich versichere an Eides Statt durch meine Unterschrift, dass ich die eingereichte Diplomarbeit selbstständig, ohne fremde Hilfe und ohne Benutzung anderer als der angegebenen Hilfsmittel angefertigt habe. Alle Stellen, die wörtlich oder sinngemäß aus veröffentlichten und nicht veröffentlichten Quellen entnommen wurden, sind als solche kenntlich gemacht. Die Arbeit hat in dieser oder ähnlicher Form oder auszugsweise im Rahmen einer anderen Prüfung noch nicht vorgelegen.
Bühl, 01.10.2004
Rüdiger Kelkel
Leitfaden zur Einführung einer automatisierten Softwareverteilung 3
Inhaltsverzeichnis
I. Abkürzungsverzeichnis 6
II. Tabellenverzeichnis. 7
III. Abbildungsverzeichnis. 8
1 Einleitung und Motivation 9
2 Wirtschaftlichkeit. 10
2.1 Kosten bei manueller Installation 12
2.2 Kosten bei Einsatz einer Softwareverteilung. 12
2.3 Nutzenaspekte 13
2.3.1 Vorteile 13
2.3.2 Nachteile 14
3 Anforderungskatalog einer Software-Verteilung. 14
3.1 Installation ohne Interaktion (unattended Installation) 15
3.2 Individualisierbarkeit 16
3.2.1 Maschinenspezifische Parameter. 16
3.2.2 Differenzierung in Funktionstypen. 18
3.3 Protokollierung und Nachvollziehbarkeit 19
3.3.1 Logging. 19
3.3.2 Verteilaufträge 20
3.4 Fehlermanagement. 21
3.4.1 Meldung von Verteilfehlern. 22
3.4.2 automatische Korrektur. 22
3.4.3 Rollback 23
3.5 Scheduling 24
3.6 Lokale Sicherheit 26
3.7 Plattformunabhängigkeit. 26
3.8 Skalierbarkeit 27
3.9 Bandbreitenmanagement 28
3.10 optionale Softwarekomponenten / Software On Demand 29
3.11 Reparierfähigkeit 30
3 12 Lizenzmanagement 31
Leitfaden zur Einführung einer automatisierten Softwareverteilung 4
3.13 Löschen von Software 31
4 Inventarisierung 32
4.1 Inventarisierung der Hardware 32
4.2 Inventarisierung der Software. 33
5 Verteiltechniken. 34
5.1 Push-Technik 34
5.2 Pull-Technik. 34
6 Softwarepakete. 35
6.1 Installation / Konfiguration mit Scripten 35
6.2 Verteilung mittels Paketen. 36
6.3 Status-Rückmeldung (Return-Code) 38
6.4 Integration und Verteiltests. 42
7 Installationen via Softwareverteilung 44
7.1 Betriebssystem 44
7.2 Gerätetreiber 46
7.3 Anwendungen 47
7.4 Updates und Fehlerkorrekturen 48
7.5 Individuelle Einstellungen und Anpassungen. 49
8 Ebenen der Verteilsteuerung. 50
8.1 atomare Verteilung 50
8.2 Verteilung auf Produkt-Ebene 50
8.3 Verteilung auf Release-Ebene 51
9 beteiligte Softwarekomponenten 53
9.1 Server-Komponenten 55
9.2 Client-Komponente. 55
9.3 Verwaltungssystem und Bedienoberfläche. 56
10 Netzstruktur 58
10.1 Netzsicherheit 59
10.2 SV in LANs 60
10.3 SV in WANs 61
11 Software-Images 62
Leitfaden zur Einführung einer automatisierten Softwareverteilung 5
11.1 zentrale Images 62
11.2 dezentrale Images (Mehrstufige Verteilung) 63
11.3 lokale Imagehaltung. 66
12 Kritische Würdigung. 67
13 Zusammenfassung 67
IV. Literaturverzeichnis 70
Anhang A: Markübersicht von Softwareverteillösungen 72
Anhang B: Beispiel einer Antwortdatei zur unattended Installation 73
Seite 6 Leitfaden zur Einführung einer automatisierten Softwareverteilung
I. Abkürzungsverzeichnis
CAD Computer Aided Design - Computerunterstütze Konstruktion CPU Central Processing Unit - Zentraleinheit DFÜ Datenfernübertragung DHCP Dynamic Host Configuration Protocol - Dienst zur automatischen Zuweisung von IP-Adressen DVD Digital Vrsatile Disc - “vielseitige digitale Scheibe“, Medium vergleichbar mit einer CDROM aber mindestens 4,7GB Speicherkapazität EDV elektronische Datenverarbeitung GUI Graphical User Interface - Grafische Benutzerschnittstelle bzw. -oberfläche IP Internet Protokol - Internetprotokoll IT Informationstechnologie
Local Area Network - lokales Netzwerk 1 LAN MSI Microsoft Installer
Multiple Virtual Storage - Großrechner-Betriebssystem von IBM ® MVS
New Technology Kernel * NT
Red Hat ® Package Manager - Installationspakete für Linux RPM SV Softwareverteilung TCP Transmission Control Protokol - Übertragungskontrollprotokoll TCP/IP Transmission Control Protokol/Internet Protokol (siehe TCP und IP)
Universal Serial Bus - Universeller serieller Bus, eine von Intel ® USB
entwickelte Harwareschnittstelle Wide Area Network - Weitverkehrsnetz 2 WAN
1 siehe [Rie01] S. 106
* Windows Systeme mit 32-Bit Kern
2 siehe [Rie01] S. 106
Leitfaden zur Einführung einer automatisierten Softwareverteilung 7
II. Tabellenverzeichnis
Tabelle 1: Beispiel einer Datenbasis für einen Computer zur SV 17
Tabelle 2: Beispiele von SV-Funktionstypen 19
Tabelle 3: Beispiele für Log-Datei-Einträge 20
Tabelle 4: einige Ziele eines Scheduling-Algorithmus. 24
Tabelle 5: Return-Codes des Windows Installers 42
Tabelle 6: Aufbau einer Anwendung aus atomaren Paketen. 51
Tabelle 7: Beispiel-Release der Version x.y. 53
Tabelle 8: Dienstoperationen im Client/Server-Modell 54
Tabelle 9: Beispiele einiger Portnummern 58
Leitfaden zur Einführung einer automatisierten Softwareverteilung
III. Abbildungsverzeichnis
Abbildung 1: Aufteilung der Kosten eines PCs, Quelle Gartner Group
Abbildung 2: Einblick in ein MSI-Paket
Abbildung 3: Software Lifecycle-Phasen: Installation und Betrieb
Abbildung 4: Release-Fortschreibung: Branching und Merging
Abbildung 5: Client/Server-Modell
Abbildung 6: abgehörte Übertragung
Abbildung 7: sicherer Kanal
Abbildung 8: Zentrale Imageversorgung.
Abbildung 9: mehrstufige Imageverteilung
Abbildung 10: Dezentrale Imageversorgung.
Abbildung 11: Marktübersicht Softwareverteilungslösungen
Seite 9 Leitfaden zur Einführung einer automatisierten Softwareverteilung
1 Einleitung und Motivation
Unternehmen, deren EDV-Landschaft sich ausweitet und die mehr und mehr die Computertechnologie nutzen, stehen irgendwann vor der Aufgabe, diese Computersysteme effizient d.h. mit geringem manuellen Aufwand verwalten zu können. Hierzu haben sich am Markt einige Standardlösungen etabliert; man spricht von Systems Management Software. Hierzu hört auch die Verteilung von Software.
Denn das von Hand Bespielen und Updaten von Computern stellt sich als eine zeit- und somit kostenaufwendige Aufgabe dar; viele Rechner müssen quasi mit denselben Softwarekomponenten versorgt werden, also eine sich mehrmals in gleicher Weise wiederholende Tätigkeit. Hinzu kommt, dass oftmals die Geräte über mehrere Standorte verteilt sind; der Standortwechsel des EDV-Personals stellt dann einen weiteren Zeit- und Kostenfaktor dar.
Wenn eine gewisse Anzahl von Computern im Unternehmen eingesetzt wird, entsteht somit die Notwendigkeit, diese automatisiert mit Software zu versorgen. Sowohl die Erstversorgung mit dem Betriebssystem, mit Systemsoftware und Anwendungen als auch das spätere Aktualisieren der Software durch Fixe (Fehlerkorrekturen) und Updates soll automatisiert erfolgen, ohne großen manuellen Aufwand des EDV-Personals. Auch soll im Falle eines Ausfalls eines Computersystems schnell und ohne allzu großen Aufwand ein Ersatzrechner bespielt werden können, der bestenfalls über die gleiche Betriebssystem-Installation und identische Anwendungsprogramme verfügt. Die Infrastruktur einer automatischen Softwareverteilung (kurz SV) spiegelt sich in einem verteilten System wider; es arbeiten Komponenten zusammen, die sich auf vernetzten Computern befinden und kommunizieren. 3 Diese werden in dieser Arbeit genannt und beschrieben.
Ziel der vorliegenden Arbeit ist es, allgemein aufzuzeigen, welche Systemkomponenten grundsätzlich notwendig oder optional sind, um eine automatische Softwareverteilung zu realisieren. Es werden Ansätze unterschiedlicher Konzeptionen erläutert. Es wird ein
3 [CouDolKin02] S. 17
Seite 10 Leitfaden zur Einführung einer automatisierten Softwareverteilung
Leitfaden an die Hand gegeben, der hilft, die Anforderungen an eine SV zu definieren und Standardlösungen an diesen zu messen.
Ziel ist es nicht, die am Markt verfügbaren Standardprodukte zu untersuchen, gegeneinander abzuwägen oder in einem Unternehmen einzuführen. Dennoch ist eine Betrachtung einzelner Teilaspekte mitunter hilfreich, die Funktionen und Konzepte der automatisierten SV besser zu verstehen.
Aufgrund des sehr hohen Marktanteils an Computern mit Microsoft Windows Betriebssystemen wird stellenweise auf Eigenheiten und Besonderheiten in diesem Umfeld detaillierter hingewiesen. Dennoch gilt das hier konzeptionell Erarbeitete auch für andere Umfelder.
2 Wirtschaftlichkeit
Hauptziel beim Einsatz von Systems Management Software ist es, EDV-Systeme von zentraler Stelle aus effizient verwalten und gleichzeitig die Betriebskosten für Änderungs-und Konfigurations-Management zu senken.
Es gilt, die Kosten für das Systems Management durch eine entsprechende Lösung zu minimieren, die optimal in die jeweilige Umgebung passt.
Seite 11 Leitfaden zur Einführung einer automatisierten Softwareverteilung
Abbildung 1: Aufteilung der Kosten eines PCs, Quelle Gartner Group 4
Da eine automatisierte Softwareverteilung als Teil einer Systems Management Lösung implementiert wird, gilt das Gesagte in vollem Umfang auch für diese. Gegenüberzustellen sind die Kosten, wenn Software manuell installiert wird und die Kosten, wenn man die Software automatisiert verteilt. 5
Softwareverteilungen lassen sich unterschiedlich stark automatisieren. Eine Minimallösung könnte beispielsweise darin bestehen, über ein Netzwerk eine Datensicherung zurückzuspielen und diese dann nachzukonfigurieren, indem man z.B. den Computernamen, die IP-Adresse und ähnliches anpasst. Die Maximallösung hingegen ist in der Lage, Rechner komplett zu bespielen und zu konfigurieren. Denkbar ist sogar, dass mittels einer EDV-Anwendung eine Bespielung komplett vorbereitet wird, Parameter wie die IP-Adresse, notwendige Hardware-Treiber etc. werden EDV-unterstützt ermittelt und in Verteilpläne eingebaut, mit dem Ergebnis, dass nach der Verteilung ein voll konfigurierter Rechner zur Verfügung steht, mit dem sofort gearbeitet werden kann. Eine Softwareverteilung ist tendenziell natürlich umso kostenintensiver, je leistungsfähiger sie ist. Plant ein Unternehmen also eine SV, so ist zu berücksichtigen, was automatisiert
4 [INNEO]
5 [NetInstall57] S. 4
Seite 12 Leitfaden zur Einführung einer automatisierten Softwareverteilung
werden soll und was noch manuell getan wird. Je mehr und je öfter Computer zu verteilen sind, umso eher lohnt es sich, stärker in die Automatisierung zu investieren.
2.1 Kosten bei manueller Installation
Grundsätzlich lassen sich Kosten in Personal, Technologie- und Prozesskosten aufteilen. Personalkosten sind in der Vergangenheit gestiegen und werden dies vermutlich auch weiterhin tun. Technologie hingegen wird, wenn man gleiche Kapazität und keinen Technologiewechsel unterstellt, günstiger. Prozesskosten sind stark individuell, lassen sich aber durch Automation senken. 6
Bei einer manuellen Installation fallen „nur“ die Kosten für die Erstinstallation und Installation von Updates an. Diese bestehen nicht lediglich aus reinen Personalkosten, sondern auch Reisekosten etc. müssen ggf. mitberücksichtigt werden. Diese Kosten sind nahezu proportional zur Anzahl der Systeme; Einsparungen aufgrund einer großen Anzahl von Installationen sind sehr gering.
2.2 Kosten bei Einsatz einer Softwareverteilung
Die Anzahl der Kostenpunkte ist hier deutlich größer; im Wesentlichen sind diese: 1. Beschaffungs- oder Entwicklungskosten aller notwendigen Softwarekomponenten 2. in der Regel zusätzliche Hardware 3. Schulung 4. Implementierung des Systems 5. Wartung des Systems
6. Herstellung von verteilfähigen Paketen (Softwarekomponenten) 7. Verteilung der Pakete
Bei einer größeren Anzahl von Systemen fallen die nichtproportionalen Kosten 1 - 6 zunehmend weniger ins Gewicht verglichen mit den Gesamtkosten. Die proportionalen Kosten, nämlich die Verteilung der Pakete (Punkt 7) ist sehr viel kostengünstiger als das manuelle Bespielen eines Rechners. Im Hinblick auf die Gesamtkosten ergeben sich also Skalenerträge oder Kostendegressionseffekte.
6 [BITKOM04] S. 6
Seite 13 Leitfaden zur Einführung einer automatisierten Softwareverteilung
Unter Kostengesichtspunkten ist natürlich anzustreben, dass die oben genannten Posten möglichst gering ausfallen. Dabei ist unter anderem darauf zu achten, dass die vorhandene teuere Hardware optimal genutzt werden kann und dass die Herstellung von verteilfähigen Paketen überschaubar ist und nicht ein benutzerunfreundliches und fehleranfälliges Unterfangen wird.
Wie bei allen größeren IT-Projekten ist eine ausführliche Kosten/Nutzen-Analyse unumgänglich. Hierbei wird das Vorhaben wirtschaftlich beurteilt. Und zwar werden dabei die Auswirkungen unter Berücksichtigung relevanter Nebenwirkungen während der Zeit der Einführung vorausschauend ermittelt und dann auf den Zeitpunkt des Nutzungsbeginns bezogen in Geldgrößen bewertet. 7
2.3 Nutzenaspekte
Beim Einsatz von Systems Management Lösungen, also auch bei einer automatisierten SV, stehen zwar Kostenaspekte im Vordergrund, aber auch die Vor- und Nachteile sind gegenüberzustellen. Die wichtigsten sollen folgend skizziert werden.
2.3.1 Vorteile
Einheitlicher Softwarestand: Werden Computersysteme automatisiert installiert, so besteht die Möglichkeit, Rechner auf einem definierten Stand zu halten. Man kann auf diese Weise vermeiden, dass ein “Wildwuchs“ entsteht. Auf allen Rechnern ist beispielsweise die gleiche Version eines Softwareproduktes installiert. Ferner kann man Konfigurationen gleichhalten, was bewirkt, dass sich die Systeme ähnlich verhalten. Beides ist bei manueller Installation nur sehr schwer und mit großem organisatorischem Aufwand zu realisieren, und dies umso stärker, je mehr Mitarbeiter mit diesen Aufgaben betraut sind.
Erreichbarkeit: Mit einer SV können sehr viele Systeme, die räumlich sehr weit auseinander stehen, innerhalb einer kurzen Zeitspanne durch wenig EDV-Personal mit Software verteilt werden. Als Beispiel mag hier eine Sparkasse oder Volksbank genannt werden, welche 1000 Systeme in einem Umkreis von 50 km betreibt. Es ist leicht
7 [HaNaBeBü97] S.. 490f
Seite 14 Leitfaden zur Einführung einer automatisierten Softwareverteilung
einzusehen, dass diese nicht von Hand installiert bzw. aktualisiert werden können. Verbesserter interner Support: Interne Support-Anfragen entstehen oft durch defekte bzw. zerstörte Installationen oder Konfigurationen. Mit dem Einsatz einer SV ist es in der Regel möglich, schnell etwas nachzuverteilen, um den Fehler zu beseitigen. Zwar helfen Fernwartungs-Tools, mit denen man einen Rechner von der Ferne sehen und bedienen kann, beim Diagnostizieren, aber eine beschädigte Installation kann hiermit nur in seltenen Fällen oder nur mit sehr großem Aufwand korrigiert werden.
Benutzerfreundlichkeit: Für das EDV-Personal fallen deutlich weniger Routineaufgaben an. Neben den zeitlichen Aspekten ist dies auch vorteilhaft für die Motivation und Arbeitszufriedenheit der Mitarbeiter. 8
2.3.2 Nachteile
Die Vorteile einer SV müssen dem zu betreibenden Aufwand und den Kosten gegenübergestellt werden.
Eine automatisierte SV hat, wenn sie entsprechend den Bedürfnissen eingesetzt wird, keine besonderen Nachteile. Allerdings gelten die gleichen “Probleme“ wie bei jeder EDV-Lösung. Denn auch ein SV-System obliegt einem Lebenszyklus und muss gepflegt und in der Regel irgendwann abgelöst werden.
3 Anforderungskatalog einer Software-Verteilung
Dieser Abschnitt beschäftigt sich mit der Frage, was eine Implementierung für eine automatisierte SV leisten kann, soll oder muss. Einem Projektteam kann bei der Auswahl (oder Entwicklung) und Einführung eines Systems dieser Anforderungskatalog als Richtschnur dienen.
An dieser Stelle sei darauf hingewiesen, dass eine gewisse Standardisierung im Hinblick auf die eingesetzte Hard- und Software als Grundvoraussetzung für ein effizientes und kostengünstiges Systems Management angesehen werden kann.
8 vgl. [RoReDo99] S. 193-203
Seite 15 Leitfaden zur Einführung einer automatisierten Softwareverteilung
3.1 Installation ohne Interaktion (unattended Installation)
Eine Installation via SV muss auch dann ablaufen, wenn niemand an dem Rechner angemeldet ist. Dies kann zum Beispiel dann notwendig sein, wenn der Rechner während der Installation (mehrmals) gebootet werden muss.
Auch darf es in der Regel nicht der Fall sein, dass die Installation auf Interaktionen des Benutzers wartet; alle Dialoge, die während einer herkömmlichen Installation stattfinden würden, müssen durch das EDV-Personal und die SV-Lösung automatisiert werden. Denn nur so ist sichergestellt, dass auf alle Installationsfragen die korrekten Antworten gefunden werden (z.B. wäre ein Sachbearbeiter nicht in der Lage, die Netzwerkanbindung zu konfigurieren). Dies wiederum ist eine wichtige Voraussetzung für eine korrekte und einheitliche oder bestimmten Regeln unterliegende Konfiguration der verteilten EDV-Systeme.
Damit eine SV ohne Interaktion des Benutzers durchgeführt werden kann, können die erforderlichen Informationen in einer Antwortdatei hinterlegt werden (Anhang B zeigt ein Beispiel einer Antwortdatei). Oder dem Installationsaufruf werden entsprechende Parameter mitgegeben (z.B. das Installationsverzeichnis).
Unattended Installation heißt also, dass die Installationsprozedur im Hintergrund abläuft, ohne dass der Benutzer aktiv werden muss oder bei seiner Arbeit eingeschränkt wird. Unattended Installation heißt aber nicht, dass Verteilungen ohne Informationen oder Einflussnahme der Benutzer ablaufen.
Wenn eine SV zur Arbeitszeit stattfinden würde ohne den Benutzer zu informieren, könnte dies unerwünschte Effekte mit sich bringen. Es ist leicht einsehbar, dass ein Computersystem nicht einfach selbstständig booten darf. Werden mehrere Verteilschritte gestartet, so mag es notwendig sein, den Rechner zwischen einzelnen Phasen zu booten. Ist dies der Fall, ist sicherzustellen, dass der Benutzer den Reboot unterdrücken beziehungsweise verzögern kann. Oder eine Verteilung ist aus irgendwelchen sonstigen Gründen zur Startzeit nicht erwünscht (z.B. wird mit dem System gerade eine Schulung oder Präsentation gehalten); auch dann sollte eine Verzögerung durch den Benutzer möglich sein.
Arbeit zitieren:
Rüdiger Kelkel, 2004, Leitfaden zur Einführung einer automatisierten Softwareverteilung, München, GRIN Verlag GmbH
Dieser Text kann über folgende URL aufgerufen und zitiert werden:
Einbetten
DOI
Virtualisierung von IT-Infrastrukturen am Beispiel von VMware
Informatik - Wirtschaftsinformatik
Diplomarbeit, 83 Seiten
Übertragungsmöglichkeiten des Toyota Production System auf den Prozess...
BWL - Investition und Finanzierung
Diplomarbeit, 78 Seiten
Softwareverteilung und Systeminstallation - Methoden, Verfahren und To...
Informatik - Technische Informatik
Diplomarbeit, 93 Seiten
Online-Shopsysteme im Vergleich
BWL - Marketing, Unternehmenskommunikation, CRM, Marktforschung
Studienarbeit, 33 Seiten
Business-Intelligence - Eine Übersicht über Systeme, Methoden und Leis...
Informatik - Wirtschaftsinformatik
Seminararbeit, 13 Seiten
Systeminstallation und Softwareverteilung
Seminar Desktop Management
Informatik - Technische Informatik
Seminararbeit, 40 Seiten
Entwickeln einer Anforderungsanalysemethodik anhand eines Projektportf...
Informatik - Wirtschaftsinformatik
Bachelorarbeit, 37 Seiten
Total Cost of Ownership-basierte Kosten-Nutzen-Analyse bei Virtualisie...
Informatik - Wirtschaftsinformatik
Hausarbeit, 37 Seiten
Rüdiger Kelkel hat den Text Leitfaden zur Einführung einer automatisierten Softwareverteilung veröffentlicht
Rüdiger Kelkel hat einen neuen Text hochgeladen
Leitfaden "Interoperable semantische Datenfusion zur automatisierten B...
Miriam Schleipen, Klaus Schick, Thomas Hövelmeyer, Michael Okon, Jiaqiu Wei
Automatisierte Anlagen in Betrieb nehmen und instand halten. Programmi...
Projekte für den Lernfeldunter...
Automatisierte Testplanerstellung für Betriebsstrategien von Hybridfah...
Zustandsbasierte Testfallerste...
Robert Poser
Automatisierte Verhandlungen in Multi-Agenten-Systemen
Entwurf eines argumentationsba...
Ricardo Büttner
Einführung in die Anglo-Amerikanische Rechtssprache (Introduction to A...
Introduction to Anglo-American...
B. Sharon Byrd
0 Kommentare