Testserie App Streaming, Teil 3: VMware Thinapp

Virtuelle Lösungen zentral bereitstellen

18. Oktober 2012, 6:00 Uhr | Christoph Lange/wg

Mit Thinapp 4.7 bietet VMware ein Werkzeug an, das Anwendungen in einer Laufzeitumgebung kapselt. Die virtualisierten Applikationen können entweder über das Netzwerk zum Benutzer gestreamt oder lokal auf dem Endgerät ausgeführt werden. Thinapp-Anwendungen lassen sich in View-Umgebungen integrieren oder über den seit Kurzem erhältlichen Horizon Application Manager zentral verwalten.

Für ein effizientes Client-Management spielt die zentrale Bereitstellung der Anwendungen eine wichtige Rolle. Softwareverteilungslösungen sind ein klassischer Ansatz, um Anwendungen von zentraler Stelle aus lokal auf den Endgeräten zu installieren. Hier kommt es aber immer wieder vor, dass sich einzelne Applikationen aufgrund von DLL- oder Registry-Konflikten nicht mit anderen Anwendungen vertragen. Viele Unternehmen nutzen zudem Terminal-Server für die zentrale Bereitstellung von Anwendungen. Allerdings gibt es nach wie vor zahlreiche Applikationen, die nicht mehrbenutzerfähig sind. Diese Probleme sollen mit einer Applikationsvirtualisierung der Vergangenheit angehören.

Funktionsweise

Um gestreamte Applikationen so zu kapseln, dass sie auf dem Zielbetriebssystem lauffähig sind, baut Thinapp um die Anwendung herum ein Virtual Operating System (VOS), das nur 400 KByte groß ist. Das VOS stellt eine virtuelle Registry und ein virtuelles Dateisystem bereit. Thinapp-Pakete lassen sich auf den Endgeräten ohne zusätzlichen Agenten ausführen, die Laufzeitdaten und benutzerspezifische Dateien speichert Thinapp in einer Sandbox. Thinapp-Pakete eignen sich für das Streaming (Übertragung zur Laufzeit) über das Netzwerk wie auch für die lokale Ausführung auf dem Endgerät. In der Regel ist Streaming die effizienteste Methode, da etwa 300 Anwender ein Thinapp-Paket parallel nutzen können. Mit Thinapp lassen sich nicht alle Anwendungen virtualisieren: Applikationen, die direkt auf Gerätetreiber oder Filtertreiber zugreifen, können gar nicht oder nur mit zusätzlichen Kniffen virtualisiert werden. Probleme bereiten zudem Anwendungen, die zwingend unter C:\Programme installiert sein müssen oder ihre Daten nur unter C: ablegen können. Als Faustregel kann man davon ausgehen, dass sich etwa 70 Prozent der in einem Unternehmen vorhandenen Applikationen relativ einfach virtualisieren lassen. Weitere rund zehn Prozent lassen sich mit Zusatzaufwand paketieren, bei den restlichen 20 Prozent ist eine Virtualisierung nicht möglich. Ob eine Virtualisierung sinnvoll ist, hängt auch davon ab, wie viele zusätzliche Komponenten die jeweilige Anwendung benötigt. Beim Microsoft-Office-Paket dürfte in der Regel eine lokale Installation im Standard-Desktop-Image sinnvoller sein, insbesondere wenn man viele Zusatzfunktionen wie Office-Plug-ins oder die Outlook-Integration nutzen will.

Anwendungen virtualisieren

Um eine Anwendung mit Thinapp zu virtualisieren, erfasst der Administrator zunächst auf einem so genannten Capture-Rechner alle Änderungen, welche die Installationsroutine der Anwendung am System vornimt. Im zweiten Schritt erfolgt der Build-Prozess, in dem Thinapp das Paket mit der virtuellen Laufzeitumgebung für die jeweilige Anwendung erstellt. Für den LANline-Test richteten wir auf unserem ESXi-5-Cluster zwei virtuelle Windows-7-Rechner mit 32-Bit-OS ein, die als Capture- und als Build-Instanz dienten. Auf beiden Systemen installierten wir die Thinapp-Anwendung. Dann starteten wir den Capture-Prozess, um den Firefox-Browser als virtualisierte Anwendung bereitzustellen. Als erstes führt Thinapp einen „Prescan“ der Systemumgebung durch und erfasst Parameter wie Registry-Einstellungen und Systempfade. Sobald der Scan abgeschlossen ist, startet der Administrator das Setup-Programm der zu virtualisierenden Anwendung und führt die Installation durch. Nach dem Setup kann der Administrator individuelle Anpassungen vornehmen, Sicherheitsparameter anpassen oder zusätzliche Plug-ins installieren. Wir änderten die Firefox-Startseite auf www.lanline.de. Es ist auch möglich, in einem Thinapp-Paket mehrere Anwendungen direkt hintereinander zu installieren. Der Capture-Prozess wird erst dann abgeschlossen, wenn der Administrator im Thinapp-Menü den „Postscan“ startet. Dieser erfasst alle Änderungen, die am System durchgeführt wurden. Anschließend werden die Berechtigungen zugewiesen, ein weiterer Menüpunkt definiert den Speicherort für die Sandbox. Standardmäßig liegt sie im Benutzerprofil. Es ist aber auch möglich, sie auf einem Netzwerklaufwerk abzulegen oder im gleichen Verzeichnis zu speichern, in dem die Anwendung liegt. Dies ist von Vorteil, will man eine Thinapp-Anwendung von einem USB-Laufwerk aus starten. Im Fenster zu den Paketeinstellungen wählt der Administrator aus, ob eine .exe-Datei oder ein .dat-Format zu erstellen ist. Das .dat-Format ist für größere Programme erforderlich. Auch ein .msi-Paket kann Thinapp erzeugen. Über die .ini-Datei des .msi-Pakets lassen sich verschiedene Parameter einstellen. Damit in View-Umgebungen das Streaming unterstützt wird, ist der Parameter „MSI-Streaming“ auf den Wert 1 zu setzen. Es ist zudem möglich, für ein Thinapp-Paket ein Ablaufdatum anzugeben, ab dem es nicht mehr ausgeführt werden darf. Wir wählten für die Thinapp-Version von Firefox.exe-Datei wie auch .msi-Paket und aktivierten zudem die Komprimierungsoption. Zum Abschluss des Capture-Prozesses sichert Thinapp alle Projektdateien und stellt sie für den Build-Prozess bereit, der die Thinapp-Pakete erzeugt. Nun kopierten wir die Projektdateien auf den Build-Rechner und starteten in einer DOS-Box die Batch-Datei build.bat. Der Build-Prozess erstellt ein .bin-Verzeichnis, das die fertigen Thinapp-Pakete enthält. In unserem Fall fanden wir in diesem Ordner eine Firefox.exe- und eine Firefox.msi-Datei. Wir testeten zunächst die Pakete, indem wir sie auf einen Windows-7-Rechner kopierten und den Firefox-Browser öffneten. Mit Thinapp Factory bietet VMware eine virtuelle Appliance an, mit der sich die Erstellung von Thinapp-Paketen automatisieren lässt. Sie verwendet Vorlagen mit den erforderlichen Anpassungen für die jeweilige Anwendung, sodass die Paketierung schneller ablaufen kann. Zum Zeitpunkt des LANline-Tests stand das offizielle Release von Thinapp Factory noch nicht fest. Wenn eine Thinapp auf einem Rechner läuft, kann sie alle lokal installierten Funktionen wie Anwendungen oder Drucker nutzen. Ist zum Beispiel das MS-Office-Paket Bestandteil des Standard-Desktop-Images, kann eine Thinapp auf alle Office-Funktionen zugreifen. Anders verhält es sich in der umgekehrten Richtung sowie zwischen mehreren Thinapp-Anwendungen: Da die Thinapp-Pakete nicht auf dem Client-Betriebssystem installiert wurden, weiß das OS nicht, welche Anwendungen zur Verfügung stehen. VMware liefert deshalb das Tool Thinreg mit, das für die virtualisierten Anwendungen Registry-Schlüssel erstellt, die Applikationen in der Systemsteuerung einträgt und für die Benutzer bei der Anmeldung unter Start/Programme die jeweilige Thinapp automatisch hinzufügt. Wird ein Thinapp-Paket für eine lokale Ausführung auf das Endgerät kopiert, kann anstelle von Thinreg auch das .msi-Paket geöffnet werden. Es führt die Applikationsregistrierung durch, ohne die Anwendung auf dem System zu installieren. Ein weiteres Tool ist erforderlich, wenn auf einem Endgerät mehrere Thinapp-Anwendungen miteinander kommunizieren müssen: Mit Applink kann der Administrator eine Anwendung beispielsweise mit der zur Ausführung benötigten Laufzeitumgebung wie dem Dotnet-Framework oder der Java-Runtime verbinden. Auch Plug-ins wie Adobe Flash Player lassen sich per Applink mit einer Browser-Anwendung verknüpfen.

Wege der Bereitstellung

Die mit Thinapp erzeugten Anwendungspakete lassen sich auf mehreren Wegen bereitstellen: im Streaming-Modus über eine Netzwerkfreigabe mittels Kopieren der Thinapp-Pakete auf das Endgerät, um sie im Offline-Modus nutzen zu können. Sie lassen sich zudem in vorhandene Terminal-Server-Umgebungen integrieren. Im LANline-Test haben wir die Firefox-.exe- und -.msi-Pakete in eine Netzwerkfreigabe kopiert und im Active Directory mehreren Testbenutzern lesenden Zugriff auf das Share gestattet. So konnten wir mit diesen Benutzern von unterschiedlichen Windows-7-Desktops aus Firefox im Streaming-Modus öffnen. Im zweiten Testdurchgang erstellten wir ein Thinapp-Paket mit zwei Anwendungen: Während des Capture-Prozesses installierten wir zunächst Teamviewer, führten einen Reboot durch und starteten dann das Setup von Winscp. Nachdem der Build abgeschlossen war, kopierten wir die fertigen Thinapp-Pakete in das Repository. Auch auf diese Anwendungen konnten die Testbenutzer anschließend zugreifen. Mit Thinapp lassen sich Anwendungen auch sehr einfach aktualisieren. Wenn der Administrator die neuere Version einer vorhandenen virtualisierten Anwendung paketiert, weist Thinapp dem Paket die nächsthöhere Versionsnummer zu. Bei jedem Öffnen einer Thinapp-Anwendung startet dann automatisch die neueste Version. Es ist aber auch möglich, unterschiedliche Versionen derselben Anwendung parallel bereitzustellen. Im Test hatten wir zuerst Firefox 12 paketiert und danach Firefox 14 als eigenständiges Thinapp-Paket erzeugt. Dadurch ließen sich auf den Endgeräten beide Browser-Versionen zeitgleich nutzen. Über die Thindirect-Funktion kann der Administrator zudem vorgeben, dass bestimmte Webadressen immer mit dem gewünschten Browser geöffnet werden. Mithilfe der Appsync-Funktion lassen sich Thinapp-Pakete auch ohne Active-Directory-Berechtigungen über einen Web-Server aktualisieren. Bei jedem Start einer Anwendung schaut Thinapp auf dem Web-Server nach, ob eine neuere Version vorliegt. Falls ja, gleicht Appsync die Deltas auf Dateiebene ab. Auch lokal auf das Endgerät kopierte Thinapp-Pakete können die Update-Mechansimen nutzen.

Integration in VMware View

Thinapp lässt sich auch in die Desktop-Virtualisierungslösung VMware View integrieren. In diesem Fall können allerdings nur die von View verwalteten virtuellen Desktops die Thinapp-Pakete nutzen. Wir testeten dies mit einer View-Installation, die auf unserem ESX-Testcluster lief. In der View-Managementkonsole gibt der Administrator das Thinapp-Repository an, in dem die Pakete liegen. Um ein Thinapp-Paket bereitzustellen, muss der Administrator es zunächst in der View-Konsole scannen. Hier legt er auch fest, wer die jeweilige Anwendung benutzen darf und ob die Anwendung zu den Anwendern gestreamt oder lokal auf den jeweiligen Desktop kopiert wird. In beiden Fällen kann er die passenden Verknüpfungen im Startmenü und im Programmmenü erzeugen und Dateinamenserweiterungen automatisch einrichten. Für den Test wiesen wir das Firefox.msi-Paket einem Desktop-Pool zu und konfigurierten es für den Streaming-Modus. Nun meldeten wir uns über einen Thin Client an einem Pool-Desktop an und konnten Firefox starten. Seit Kurzem bietet VMware mit dem Horizon Application Manager eine Lösung an, mit der sich Thinapp-Anwendungen unabhängig von VMware View für virtuelle und physische Desktops verwalten lassen. Der Horizon Application Manager steht auf der VMware-Website in Form zweier virtueller Appliances zum Download bereit. Wir haben die beiden OVF-Systeme in Virtual Center importiert und für unsere Testumgebung konfiguriert. Die Connector-Appliance stellt die Verbindung zum Active Directory her, während Horizon Manager die Applikationen für das Portal verwaltet, die über eine Netzwerkfreigabe bereitstehen. Damit ein Benutzer auf das Portal zugreifen und die für ihn freigegebenen Anwendungen nutzen kann, muss auf dem Endgerät der Horizon-Agent installiert sein. Im Test synchronisierten wir unsere Thinapp-Pakete mit dem Horizon Application Manager und wiesen sie den Testbenutzern zu. Nachdem wir auf einem Windows-7-Client den Horizon-Agent installiert hatten, konnten wir uns mit dem Horizon-Portal verbinden und die Thinapp-Anwendungen auf diesem Weg ausführen. Der Administrator kann auch hier wählen, ob die Pakete auf den Client kopiert oder im Streaming-Modus ausgeführt werden.

Fazit

VMware baut sein Angebot für eine zentrale Bereitstellung von Anwendungen kontinuierlich aus und zielt damit auf den bislang vor allem von Citrix dominierten Markt. Die Thinapp-Virtualisierung bietet Unternehmen die Möglichkeit, ihren Benutzern Anwendungen zentral zur Verfügung zu stellen und sie auf einfache Weise zu aktualisieren. Die Erstellung von Thinapp-Paketen erfordert allerdings ein tiefergehendes Wissen über die Funktionsweise der jeweiligen Applikation. Je komplexer eine Anwendung aufgebaut ist, umso höher ist der Aufwand für die Paketierung, da die Zahl der anzupassenden Parameter steigt. Dies gilt insbesondere, wenn es gilt, mehrere Anwendungen in einem Paket zusammenzufassen oder über Applink eine Kommunikation zwischen verschiedenen Thinapp-Applikationen herzustellen. Unternehmen, die Thinapp einsetzen möchten, benötigen deshalb Mitarbeiter, die auf die Anwendungsvirtualisierung spezialisiert sind. Kommt Thinapp mit VMware View zum Einsatz, lassen sich die gekapselten Anwendungen bislang nur für virtuelle Desktops bereitstellen. Dieses Problem adressiert VMware mit dem neuen Horizon Application Manager, der Thinapp-Anwendungen unabhängig von View zentral verwalten kann und den Benutzern von physischen und virtuellen Desktops über ein Portal bereit stellt. Abgerundet wird das Toolset künftig durch Thinapp Factory, die eine schnellere Paketierung ermöglichen soll. Thinapp ist wahlweise als Einzellizenz ab etwa 5.000 Euro inklusive 50 Client-Lizenzen oder als Add-on für VMware View erhältlich. www.vmware.com/de Der Autor auf LANline.de: chjlange

Der neue VMware Horizon Application Manager stellt Benutzern Thinapp-Anwendungen über ein Portal zur Verfügung.

Mit dem View-Administrator lassen sich Thinapp-Pakete einzelnen virtuellen Desktops oder kompletten Desktop-Pools zuweisen.

Im Capture-Prozess erfasst Thinapp alle Änderungen, die eine Softwareinstallation am System vornimmt.
LANline.

Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Lampertz GmbH & Co. KG

Matchmaker+