Neben der klassischen CD-Installation, der skriptbasierten Einrichtung und dem Klonen bietet das Streamen von Betriebssystemen eine elegante und flexible Delivery-Methode. Mit einer Provisioning-Lösung virtualisiert der Administrator das Betriebssystem, relevante Informationen zur systemspezifischen Konfiguration sowie gegebenenfalls benutzerspezifische Anwendungen in einem zentralen Image und weist dies anschließend dynamisch via Netzwerk einem oder mehreren Clients oder Servern zu.
Der Wyse Streaming Manager erlaubt beispielsweise die parallele Bereitstellung von
Windows-Betriebssystemen und Anwendungen in einem Produkt. Als Endgerät dient ein Thin Client von
Wyse, der lediglich mit Arbeitsspeicher und Prozessor ausgestattet ist und weder Flash-Speicher
noch Festplatten oder sonstige lokale Speichermedien benötigt. Die Images verschiedener Systeme
lassen sich für das gesamte Unternehmen vereinheitlichen und zentral bereitstellen. Auch die
Konfigurationsparameter liegen zentral auf dem Wyse Streaming Server. Sind das Betriebssystem und
die erforderlichen Applikationen auf das Client-System übertragen, werden sie dort lokal
ausgeführt. Dateien und Applikationen verbleiben jedoch auf dem zentralen Server. Dort ist ihre
Verwaltung, Pflege und Sicherung wesentlich einfacher.
In ähnlicher Weise agiert auch der Citrix Provisioning Server. Seine Funktionsweise basiert auf der Streaming-Technik von Ardence, einem Unternehmen, das Citrix im Januar 2007 übernommen hat. Mit Citrix Provisioning Server 4.5 kann die IT-Abteilung effizient und schnell Betriebssysteme (Windows und Linux) nach Bedarf ("on demand") auf beliebigen festplattenlosen Standardserver oder -Desktops bereitstellen. Zunächst gilt es, so genannte Vdisks (Virtual Disks) - bestehend aus Betriebssystem, systemspezifischen Treibern und gegebenenfalls installierten Anwendungen - zu erstellen und in einem Storage-System vorzuhalten.
Durch einen Boot-Vorgang direkt über das Netzwerk wird der Inhalt der entsprechenden Vdisk auf die physischen oder virtuellen Endgeräte (Target Devices) gestreamt und dort lokal ausgeführt. Auf den Zielgeräten ist dabei Software weder vor- noch permanent installiert. Auf diese Weise ist es einfach, Systemen nach Bedarf unterschiedliche Aufgaben zuzuweisen. Ein Reboot genügt, um zum Beispiel aus einem Webserver einen Datenbankserver zu machen oder in einem virtuellen Desktop Windows XP oder Vista bereitzustellen. Zu den benötigten Komponenten zählen: der Streaming-(Provisioning-)Service/Server, eine Konfigurationsdatenbank, ein DHCP- und TFTP-Dienst für das PXE (Preboot Execution Environment, unterstützt wird Firmware ab Version 0.99J und der Service ab Spezifikationsversion 2.1), ein Storage-System (iSCSI, SAN, NAS oder CIFS) und der Citrix-Lizenzserver (Bild 1).
Eine wichtige Voraussetzung für den Einsatz einer Provisioning-Lösung ist, dass die vorgesehenen Server- oder Client-Systeme einen Netzwerk-Boot-Vorgang ausführen können; dies ist bei fast allen aktuellen Servern und Desktops auf dem Markt der Fall. PXE ist eine BIOS-Erweiterung und ermöglicht anstelle des Bootens über die lokale Festplatte einen netzwerkbasierten Boot-Vorgang. PXE nutzt die Kombination von DHCP und TFTP. Der Citrix Provisi-oning-Server kann die dafür benötigten einzelnen Dienste (DHCP, Proxy DHCP, Boot-Server) selbst bereitstellen. Er lässt sich aber auch mit beliebigen Kombinationen von selbstständigen Servern implementieren. Den Netzwerk-Boot-Vorgang initiiert eine geeignete Netzwerkkarte selbst, die einen PXE-kompatiblen Redirection-Service (Proxy DHCP) per Broadcast auf Port 67 (UDP) sucht. Dann erhält sie die Informationen zu den verfügbaren PXE-Boot-Servern. Im nächsten Schritt kontaktiert sie den entsprechenden Boot-Server, um von ihm den TFTP-Pfad zum Laden des NBPs (Network Bootstrap Program) zu erhalten. Dieser Boot-Loader wird anschließend in den Arbeitsspeicher geladen und ausgeführt. Der Provisioning Server ist auch ohne einen PXE-Service verwendbar. Dabei liefert ein DHCP-Server über die Option 66 die Information des TFTP-Servers als FQDN (Fully Qualified Domain Name) oder IP-Adresse und über die Option 67 den Dateinamen des Boot-Loaders.
Der Streaming- oder Provisioning-Service verwaltet die Client-Verbindungen und den Zugriff auf die so genannte Vdisks, die auf einem separaten Netzwerkspeicher liegen. Der Provisioning-Client liest zum Booten zirka 60 MByte eines Windows-Betriebssystems von der Vdisk. Dieser Vorgang dauert - bei 60 MByte, also 480 MBit und einem Netz mit 10 MBit/s) rund 48 Sekunden und ermöglich dann das Login am System. Die Tabelle auf Seite 46 zeigt die Übertragungsvolumina der Windows-Betriebssysteme.
Um ein Betriebssystem für das Streaming vorzubereiten, ist es zunächst erforderlich, eine Vdisk - eine Abbildung des Systems in installierter Form - zu erstellen. Dazu ins-talliert der Systemverwalter die Client-Software des Provisioning Servers auf dem "Master Target Device". Nach dem Herunterfahren bootet das System durch Umstellung im BIOS mit PXE. Der Provisioning-Server-Streaming-Service zeigt dann auf der Konsole eine Auswahl auf dem Target Device. Per Auswahl "Select Vdisk" erzeugt der Administrator mit dem Image Builder Utility ein "Golden Image" und speichert es in eine vorbereitete Vdisk. Danach setzt er in der Administratorenkonsole des Provisioning Servers unter den "Client Properties? die Client-Boot-Option auf "Virtual Disk First?. Unter den "Disk Properties? ist der "Disk Access Mode? für das System auszuwählen.
Der Citrix Provisioning Server kennt zwei Arten von Vdisks: das Private-Image und das
Standard-Image. Im Private-Image-Modus besitzt jedes System ein eigenes Image mit Schreib- und
Leserechten und lässt sich individuell an die Benutzeranforderungen anpassen. Durch die zentrale
Verwaltung dieser Vdisks ergibt sich zwar ein höherer Plattenplatzverbrauch, aber auch wesentliche
Vorteile für ein zentrales Back-up oder schnelles und einfaches Disaster Recovery.
Der Standard-Image-Modus hingegen erlaubt mehreren Clients die gleichzeitige Nutzung desselben
Images via Netzwerk. Der Vorteil liegt hier im geringen Plattenplatzverbrauch für nur eine Vdisk,
die sich aber durch mehrere Systeme nutzen lässt: Das Image ist nur lesbar und steht als "
Master-Image" für Gruppen von Desktops bereit, die die gleichen Funktionen benötigen – wie zum
Beispiel Call-Center-Clients oder Schulungs-PCs. Es muss aber sichergestellt sein, dass der
jeweilige Client-Maschinenname, die Domain-Zugehörigkeit und die individuellen Einstellungen
eindeutig sind.
Ein Standard-Image ist mit Novells Edirectory-Services, Samba und dem Microsoft Active Directory
verwendbar. Zudem steht eine Integration in das Active Directory mit Group Policy Objects (GPOs)
zur Verfügung. Empfohlen sind Roaming User Profiles und Folder Redirection. Für die individuellen
Einstellungen beinhaltet der Provisioning Server das Client Personality Feature. Veränderungen, die
das Betriebssystem oder Anwendungen während der Nutzung vornehmen, werden in einen Write Cache
geschrieben. Es gibt drei Cache-Typen: Server-based Disk, Client-based Disk sowie Client-based RAM.
Zusätzlich sind folgende Einstellungen für eine optimale Funktion des Standard-Images sinnvoll: das
Ausschalten von System- Restore, Energiesparfunktion (Hibernation) und automatischen Updates
(Windows, Antivirus). In jedem Fall sollte die Funktion Power Save auf der Netzwerkkarte
deaktiviert sein, da sonst die Verbindung zur Vdisk verloren geht.
Ein großer Vorteil einer Provisioning-Lösung besteht darin, über ein Master-Image vielen
Benutzern ein identisches System zur Verfügung zu stellen. Dies erfordert jedoch Methoden zur
Personalisierung, die man auch von physischen Desktops her kennt. Eine besondere Anforderung ist
daher die Implementierung von Richtlinieneinstellungen.
An dieser Stelle setzen eine Add-on-Lösung wie Jumping Profiles oder der Appsense
Environment-Manager an. Werden die Personalisierungsdaten mithilfe von Profilmanagementsystemen
zentral und nicht auf dem gestreamten Desktop oder virtuellen Image gespeichert, bleiben alle
Einstellungen für die nachfolgenden Zugriffe konsistent bestehen. Auf diese Weise lassen sich auch
alle Konfigurationsdaten der Benutzer, die auf dem PC gespeichert sind und zuerst an eine zentrale
Stelle verschoben wurden, nahtlos zu einem virtuellen oder einem gestreamten Desktop migrieren.
Für Hochverfügbarkeit (High Availability, HA) der Citrix-Streaming-Softwareplattform sorgt ein "
Automatic-Failover"-Mechanismus, den ein robustes Streaming-Protokoll ergänzt. Wenn ein
Provisioning-Client (Target Device) die Verbindung zu einem Provisioning Server verliert, pausiert
während dieser Zeit das System, erzeugt aber keinen Bluescreen, wie es in Windows-Betriebssystemen
bei Festplattenzugriffsproblemen vorkommt.
Die Provisioning Server laufen als Back-up- oder Load-Balancing-Lösung im Ac- tive-Active-Modus,
und den Target Devices werden "Multiple Disk Images" zugeordnet. In einer HA-Lösung müssen diese
Vdisks jedoch ein exaktes binäres Duplikat darstellen. Die Citrix-HA-Lösung ist nun als Feature in
der Version-4.5-Lizenz enthalten und unterstützt bis zu vier Provisi-oning-Server.
Das Ziel von Provisioning-Systemen ist die Trennung von Betriebssystem, Anwendungen und
Profilen, um diese als Services sicher und einfach aus einem zentralen Datacenter bereitstellen zu
können. Die integ-rierten Techniken der Citrix-Produkte ermöglichen so, ein Server- oder
Desktop-Image nach Bedarf auf beliebig viele physische und virtuelle Maschinen zu streamen. Ein
interessanter Ansatz ist unter anderem die Bereitstellung von Citrix Xenapp (bislang
Presentation-Server) als Vdisk mit dem Provisioning Server for Datacenter. Weitere Informationen
bietet dazu das Whitepaper: "Installing Citrix Presentation Server Inside a Provisioning Server for
Datacenters Virtual Disk" (www.citrix.com/English/ps2/products/documents.asp?contentid=683392).
Der ergänzende Einsatz von Application-Streaming kann die Effizienz und Flexibilität des Systems
noch steigern. Dies bedeutet jedoch neben dem Management eines zusätzlichen Systems auch weitere
Lizenzkosten. Für das Profilmanagement sind in jedem Fall Add-on-Lösungen einzusetzen, die die
Richtlinien- und Personalisierungseinstellungen über diverse Arten von Desktop-Sitzungen und
Bereitstellungsmechanismen beibehalten. Tauscht man die bestehende Access-Datenbank gegen eine
zent-rale SQL-basierte Datenbank, ist zudem das Konzept eines hochverfügbaren und sicheren
Gesamtsystems umsetzbar. Ein weiterer wichtiger Aspekt ist das Storage-Management. Denn für eine
umfassende Lösung – auch im Zusammenspiel mit virtuellen Systemen unter Xenserver oder Vm-ware –
sind bei Provisioning-Systemen Verwaltung, Formate und Sicherung der Images von großer
Bedeutung.