Tool von VMware

ThinApp macht Anwendungsvirtualisierung einfach

15.10.2008 von Andrej Radonic
Die versprochenen Vorteile von Applikationsvirtualisierung müssen Anwender oft mit einer hoher Komplexität der dafür nötigen Infrastruktur erkaufen. ThinApp beschränkt sich dagegen auf die Kernfunktionen.

Mit der Übernahme des Softwarehauses Thinstall weitete VMware sein Geschäft auf die Anwendungsvirtualisierung aus. Zweck dieser Technik ist es, die Administration von PCs in größeren Umgebungen durch installationsfreie Softwareverteilung zu vereinfachen und Kompatibilitätsprobleme bei Betriebssystem-Updates zu vermeiden. Mit dem Zukauf von Thinstall reagiert VMware auf die Akquisition von Softricity durch Microsoft. Dessen Produkt erhielt in Redmond die neue Bezeichnung "Microsoft Application Virtualization" (App-V), während VMware sein Konkurrenzprodukte auf ThinApp umtaufte. Aktuell liegt die Software in der Version 4 vor.

Lehmschicht über Windows

Ähnlich wie andere Systeme für die Applikationsvirtualisierung stellt ThinApp auf dem PC eine Sandbox zur Verfügung, in der die Software abgeschottet vom Host-Betriebssystem ablaufen kann. Dieser Container verfügt über einen eigenen Dateibaum, eigene Umgebungsvariablen und eine eigene Registrierdatenbank. Benutzereinstellungen werden transparent im jeweiligen Profil gespeichert, Änderungen an der Anwendung, beispielsweise Updates, erfolgen ausschließlich innerhalb dieser geschützten Umgebung. Grundlage ist das VOS (Virtual Operating System), das zusammen mit einem komprimierten virtuellen Dateisystem und Registry in einer nach außen normalen .exe-Datei verpackt ist.

Virtuelle Applikationen sind in einem Anwendungspaket gekapselt und werden gegenüber dem Betriebssystem abgeschottet.

Die Verteilung funktioniert denkbar einfach über ein Netzwerklaufwerk, über einen Web-Server oder USB-Sticks. Da ThinApp im Prinzip ohne Client und ohne Server auskommt, besteht kein Single-Point-of-Failure im System der virtualisierten Softwareverteilung, so dass auch eine hohe Betriebssicherheit gewährleistet werden kann.

Die Lösung von VMware lässt sich mit vorhandenen Tools für das Desktop-Management, die Softwareverteilung (ESD) sowie das Lizenzmanagement integrieren. In dieser Hinsicht unterscheidet sich ThinApp von Microsofts App-V, das einen umfassenden Satz von Tools für eben diese Aufgaben enthält, während VMware sich auf die Hauptaufgabe der Virtualisierung konzentriert.

Code wird bei Bedarf nachgeladen

Die zweite wichtige Architekturkomponente ist die Streaming-Technologie: Applikationen werden nach dem Start je nach Bedarf häppchenweise zum jeweiligen Endgerät geliefert, um Bandbreiten zu schonen und die jeweils aktuellste Version bereitzustellen. Die tatsächlich vom Benutzer beziehungsweise dem Gerät benötigten Komponenten werden lokal zwischengespeichert. Blockbasiertes Streaming ermöglicht dabei eine sehr effiziente Übertragung von Dateipartikeln, so dass auch große Pakete sofort auf dem PC geöffnet und gestartet werden können.

ThinApp läuft vollständig im User-Mode, so dass es auch möglich ist, Applikationspakete auf vollständig abgesicherten Desktop-PCs laufen zu lassen - Administrationsrechte sind hierfür nicht nötig. Dies verringert den Verwaltungsaufwand, ohne die Sicherheitsmechanismen aufzuweichen.

Die Virtualisierungslösung ist kompatibel sowohl zu Terminal-Servern als auch zu Citrix "XenApp" (ehemals Presentation Server). Letzterer enthält allerdings seit der Version 4.5 eigene Mechanismen zur Anwendungsvirtualisierung.

Prinzipbedingt werden einige Typen von Anwendungen explizit nicht unterstützt. Dazu zählen 16-Bit- und 64-Bit-Anwendungen, Software die Treiber im Kernel-Modus benötigen, Anti-Virus- und Personal Firewall-Applikationen, Scanner- und Druckertreiber sowie manche VPN-Clients.

Einfache Installation

Die virtualisierte Anwendung lässt sich wahlweise auch als MSI-Datei verteilen.

Die Installation ist simpel, denn sie beschränkt sich auf das Einrichten der ThinApp-Software auf einem Windows-Rechner, der das Erzeugen von Anwendungspaketen übernehmen soll. Abhängig von den gewünschten Verteilungskanälen ist noch eine Laufwerksfreigabe einzurichten oder aber ein Web-Server, auf dem die Pakete sicher abgelegt und von wo aus sie verteilt werden. Der Client ist vollständig installationsfrei, kommt also ohne einen Agenten aus wie er teilweise von anderen Lösungen wie beispielsweise bei Microsoft App-V benötigt wird.

Lediglich zwei Schritte sind notwendig, um Anwendungen wie beispielsweise Microsoft Office virtualisiert bereitzustellen:

  1. Paketierung mittels Capture: Der Systemverwalter erzeugt mit Hilfe ThinApp-Komponente "Setup Capture" das gewünschte Paket;

  2. Verteilung: Das Paket wird als .exe- (installationsfrei) oder .msi-Paket (für feste Installation) für die Benutzer zugänglich gemacht.

Der Rechner, auf dem die Anwendungspakete per Capture geschnürt werden, sollte lediglich das Basisbetriebssystem enthalten, damit der ThinApp-Packager eine möglichst saubere Umgebung mit einer schlanken Registry vorfindet. Alternativ lässt sich auf Basis der mitgelieferten VMware Workstation dafür ein virtueller PC einsetzen. Dieser hat den Vorteil, dass sich damit mehrere Windows-Versionen vorhalten lassen und nach dem Paketierungsvorgang kann der Administrator auf Knopfdruck wieder den ursprünglichen Zustand wiederherstellen.

Aufzeichnung des Installationsvorgangs

Für das Capture sollte der kleinste gemeinsame Nenner im Hinblick auf die gewählte Betriebssystemvariante gewählt werden. Wenn die Anwendung auf Windows 2000, Windows XP, Windows 2003, und Windows Vista laufen soll, empfiehlt sich für die Capture-Plattform ein Windows 2000.

Der Capture-Vorgang ist dabei für jeden Administrator auch ohne lange Einarbeitung zu bewältigen. Setup Capture erzeugt zunächst automatisch einen Snapshot der momentanen Umgebung. Anschließend muss der Verwalter die gewünschte Applikation auf herkömmliche Weise installieren - das Capture-Programm schneidet dabei sämtliche Änderungen mit.

Die Zugriffsrechte auf die virtualisierten Anwendungen lassen sich über die Gruppenzugehörigkeit im Active Directory steuern.

Danach kann das Paket je nach Anforderungen konfiguriert und optimiert werden. Dazu gehört der gewünschte Isolationsgrad, Kompression, Zugriffsberechtigungen über Gruppen im Active Directory sowie die Verknüpfung mit anderen Applikationen oder Plugins. Zuletzt erzeugt das Tools das Paket in Form einer .exe- beziehungsweise .msi-Datei und legt es im capture-Verzeichnis ab. Dieser Vorgang kann jederzeit über die Datei "build.bat", die automatisch für jede Applikation bereitsteht, wiederholt werden, etwa nach Änderungen an der virtuellen Registry oder an Zusatzpaketen. Abschließend muss das Paket lediglich an den gewünschten Ort kopiert werden.

Anwendungen wie gewohnt nutzen

Für den Anwender erscheinen virtualisierte Anwendungen im Wesentlichen so, als seien sie auf herkömmliche Weise installiert worden. Der erste Start der .exe-Datei führt automatisch die Anwendung aus und legt eine Desktop-Verknüpfung an. Lediglich ein kleiner Statusbalken am unteren Bildschirmrand weist beim Starten daraufhin, dass ThinApp hinter den Kulissen werkelt.

Kopien und Einfügen zwischen virtualisierten und normalen Anwendungen funktioniert wie gewohnt, ebenso wie die Benutzung von Treibern und Druckern. Dateien, die von der Anwendung gespeichert werden, landen normal auf der Platte. Alle sonst von der Software geschriebenen Informationen (beispielsweise Modifikationen der Konfiguration) fängt die Sandbox ab. So kommen Änderungen an der Registry nie in der Registrierdatenbank des zugrunde liegenden Windows an, sondern blieben in einem isolierten Bereich des Containers. ThinApp-Anwendungen können zudem Dienste virtuell starten und über COM/DCOM mit ihnen kommunizieren.

Update von Anwendungspaketen

Sollen auf dem Client-PC Verknüpfungen angelegt oder Dateitypen mit einer virtuellen Anwendung assoziiert werden, dann kann der Administrator dafür das Hilfsprogramm "thinreg" benutzen. Damit lassen sich die gewünschten Anpassungen vornehmen, bei Bedraf auch automatisiert vom Login-Script aus.

Plugins für Applikationen oder andere abhängige Module wie das .Net-Framework oder das "Java Runtime Environment" können auf mehrere Arten bereitgestellt werden: Der Administrator packt es gleich zur virtualisierten Anwendung, er veranlasst das dynamische Nachladen der Plugins vom Host via "Application Link", oder er installiert es nachträglich in die Sandbox. Das gewünschte Verhalten lässt sich über die package.ini einstellen.

Der Administrator kann eine Anwendung in wenigen Schritten über ThinApp bereitstellen.

Bereits verteilte Anwendungen lassen sich von zentraler Stelle aus aktualisieren. Zum einen ist es natürlich möglich, die bereitgestellte Version durch eine neue zu ersetzen. Alternativ bietet "Application Sync" die Möglichkeit, dass die beim Anwender laufende Software den Heimat-Server selbständig in vorher definierten Abständen auf Updates prüft und diese automatisch nachlädt. Auf diesem Wege lassen sich beispielsweise selbständig Service Packs via Web-Server an alle benutzten Anwendungen schicken. Falls ein Update fehlschlägt oder zurückgerufen werden muss, kann der Systemverwalter ein Rollback veranlassen.

Verfügbarkeit

Die Lösung ist als VMware ThinApp Suite zum Preis von rund 4.500 Euro erhältlich. Neben 50 Client-Lizenzen ist im Paket auch eine VMware Workstation (für den Capturing-PC) sowie ein Jahr Support enthalten. Weitere Client-Lizenzen lassen sich einzeln zum Preis von 35 Euro ordern. Eine Evaluation ist für 60 Tage kostenlos möglich.

Fazit

ThinApp hält die Applikationsvirtualisierung durch die geringe Komplexität und einfache Handhabbarkeit sehr einfach. Buchstäblich lässt sich die Art und Weise, wie Software installiert, verteilt und verwaltet wird, binnen Minuten vollständig ändern.

Aufgrund der Architektur gestaltet sich die Installation und Verwaltung fast schon trivial, so dass die Einarbeitung keine großen Hürden stellt. ThinApp-Anwendungen lassen sich sehr einfach und dabei sicher über in allen Unternehmen vorhandene Transportmechanismen wie Laufwerksfreigaben und das HTTP-Protokoll verteilen. Die Benutzung ist für die Anwender transparent.

Allerdings dürfte der vergleichsweise hohe Preis sowie das Lizenzmodell, welches das Produkt erst ab 50 PC-Arbeitsplätzen sinnvoll einsetzbar macht, viele IT-Verantwortliche zurückschrecken lassen.

Stärken und Schwächen

Pro:

Sehr schlank: kein Client und kein Server notwendig;

geringer Aufwand bei Einrichtung und Betrieb;

performante und transparente Nutzung der virtualisierten Anwendungen;

gute Unterstützung von Anwendungen und Windows-Varianten.

Contra:

Lizenzmodell nicht für kleinere Firmen geeignet;

Hoher Preis.

? Zentrale Paketeinstellungen müssen manuell in ini-Datei editiert werden