Softwareverteilung
Softwareverteilung sind die Prozesse zur Verteilung von Software auf Anwender-PCss.
Bevor eine Software durch einen Anwender verwendet werden kann, muss sie auf einem Computersystem installiert sein und konfiguriert werden (dies gilt auch für das Betriebssystem des Computers).
Bei Personal Computern (PC) muss die Software auf dem Computer des Anwenders installiert werden. Aber auch bei Anwendungen die auf Server Computern betrieben werden (z.B. Web Anwendung) ist je nach Anzahl der Server eine Softwareverteilung notwendig.
Viele Anwender verfügen nicht über die notwendigen Kenntnisse oder Berechtigungen, um Software Applikationen selbst zu installieren. Daher ist es in (grossen) Organisationen üblich, dass diese Aufgabe durch qualifizierte Mitarbeiter für die Anwender durchgeführt wird.
Bei einer großen Anzahl von PC's und/oder Anwendugen ist der Aufwand hierfür sehr groß, so dass es notwendig wird diese Tätigkeit zu automatisieren.
Die Softwareverteilung ist ein kritischer Prozess, da mit ihr auch die Installation sicherheitsrelevanter Applikationen (Virenscanner, Browser, Betriebssystem Korrekturen (Hotfixe)) erfolgt.
Gesamtziel des Einsatz einer Softwareverteilung ist es, eine vollautomatische Erstintstallation, Konfiguration und Wartung einer grossen Anzahl von Computer mit minimalem Aufwand zu realisieren. Weiterhin muss ein störungsarmer und sicherer Betrieb der betreuten Umgebung erreicht werden.
Dieses Ziel kann mit heute verfügbaren Systemen zur Softwareverteilung durchaus erfüllt werden. Es werden Umgebungen mit mehr als 10.000 Computern durch den Einsatz eines einzigen Administrators und weniger Server betrieben!
Bevor Anwendungen installiert werden können, muss zunächst das Betriebssystem (kurz OS von engl. operation system) installiert werden. Dazu kann entweder eine CD/DVD verwendet werden oder ein Protokoll zum Netzwerkboot von Computern (BOOTP, PXE). Im ersten Fall bootet der Computer von der CD/DVD auf der alle notwendigen Dateien gespeichert sind. Das Programm zur Installation des OS (auch auf dem Datenträger) wird automatisch gestartet. Dieses kann oft so vorkonfiguriert werden, dass keine Eingaben durch den Anwender mehr notwendig sind.
Bei der Netzwerkinstallation lädt das BIOS des Computer zunächst vom Netzwerk die notwendigen Programme (meist über das TFTP Protokoll) und führt diese dann aus. In der Regel lädt dieses Programm dann das OS Installationsprogramm von einem Server Computer im Netzwerk.
Nachdem das OS vollständig installiert ist, können die Applikationen (Textverarbeitung, Tabellenkalkulation, Zeichenprogramm...) installiert werden.
Dazu werden diese meist in so genannte Pakete verpackt. Das heißt, die Dateien der Anwendung werden in einem (großen) Archiv zusammengestellt (oftmals komprimiert), dass zusätzlich die notwendigen Programme zur Installation der Applikation enthält.
Für Microsoft Windows kann dabei die MSI Technologie verwendet werden, bei der das Setup Programm bereits im OS integriert ist. Unter LINUX ist das RPM Format weit verbreitet. Das Paket erhält nur noch die notwendigen Dateien der Anwendung und eine Steuerungsdatei, die dem OS mitteilt, welche Aktionen zur Installation durchzuführen sind.
In der Regel sind die Anwender mit der Durchführung der Konfiguration von Anwendungen überfordert (z.B. Eintragen eines Proxy-Server für einen HTML Browser). Überlässt man die Konfiguration der Anwendungen den Anwendern können zusätzlich Sicherheitsrisiken entstehen (z.B. Virenscanner deaktiviert). Eine fehlerhafte Konfiguraton von Anwendungen ist die häufigste Ursache für Störungen bei der Nutzung von Anwendungen.
Daher* Pfade
Dabei kann es sich einerseits um generelle Parameter handeln die für alle erteilung installiert wurden noch konfiguriert werden. Dabe müssen die Anwendungen nachdem Sie durch die SoftwarevVerweise auf andere Computer
Für ein effizientes und sicheres Arbeiten ist es weiterhin notwendig dass zu jedem Zeitpunkt einfach die aktuelle Soll-/Ist-Konfiguration eines Computers dargestellt werden kann. Nur so kann der Administrator feststellen, ob die angestrebte Umgebung funktioniert. Da es sich oft um ein sehr grosse Anzahl von Computern handelt sind auch leistungsfähige Abfragewerkzeuge notwendig, mit denen sich statistische Aussagen machen lassen (z.B. auf wie vielen Computer ist die Software X installiert?).
Die effiziente, transparente und sichere Konfigurationsverwaltung ist maßgeblich für den Erfolg einer Softwareverteilung ausschlaggebend. Fehler in der Konfigurationsverwaltung können sehr leicht massive Störungen nach sich ziehen (z.B. aufgrund falscher Proxy Einstellungen kann kein Anwender mehr auf das Internet zugreifen). Daher sind Maßnahmen zur Qualitätssicherung ein absolutes Muss. Dies sind z.B. Dokumentation der Konfiguration, Schulung der Administratoren, Vieraugenprinzip, Statistische Auswertungen etc.
Übersicht
Zielsetzung der Softwareverteilung
Rollen der Softwareverteilung
Komponenten der Softwareverteilung
Installationsphasen
Installation des Betriebssystems
Installation von Anwendungen
Konfiguration von Anwendungen
nzschlüssel
i werden die Parameter der Anwendung festgelegt. Dies sind z.B:
Es ist auch zu unterscheiden ob die Konfiguration nur einmalig erfolgen soll (Anwender bekommt sinnvolle Einstellungen die er aber individuell anpassen kann) oder aber ob die Softwareverteilung sicherstellen soll dass die Einstellungen durch den Anwender nicht verändert werden können, bzw. das Änderungen automatisch rückgängig gemacht werden.
Ein System zur Softwareverteilung sollte daher in der Lage sein diese Parameter zentral zu verwalten und automatisiert anzuwenden.Konfigurationsverwaltung
Ein üblicher Anwender benötigt für seine tägliche Arbeit heute eine grosse Anzahl von Programmen. Für jeden Anwender/Computer muss daher eine Liste der Pakete hinterlegt werden, die durch die Softwareverteilung installiert werden sollen. Weiterhin müssen die Parameter zur Konfiguration der Anwendungen hinterlegt werden (wieder pro Anweder/Computer). Es ist dabei sehr hilfreich die Anwender/Computer zu gruppieren. Der Administrator der Softwareverteilung kann dann entweder eine ganze Gruppe von Computer/Anwendern oder einzelne konfigurieren, was den Arbeitsaufwand erheblich reduziert.Softwareverteilungssysteme
M23 OpenSource Softwareverteilung für Linux