ThinApp - bestechend einfach virtualisiert

29.10.2008
Von 
Andrej Radonic ist Experte für Virtualisierung, Cloud-Technologien und Open Source Anwendungen. Der Fachbuchautor ist Vorstand der interSales AG und entwickelt für mittelständische Unternehmen anspruchsvolle E-Commerce Lösungen.
Die Vorteile der Applikationsvirtualisierung gehen oft mit einer hohen Komplexität der Infrastruktur einher. 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. Softricitys Produkt erhielt in Redmond die neue Bezeichnung "Microsoft Application Virtualization" (App-V), während VMware sein Konkurrenzprodukte auf ThinApp umtaufte. Derzeit liegt die Software in der Version 4 vor.

Ä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. Änderungen an der Registrierdatenbank kommen nie im zugrunde liegenden Windows an, sondern bleiben in einem isolierten Bereich des Containers. Grundlage ist das VOS (Virtual Operating System), das zusammen mit einem komprimierten virtuellen Dateisystem und einer Registry in einer nach außen gewöhnlich aussehenden .exe-Datei verpackt ist.

Die Verteilung funktioniert denkbar einfach über ein Netzlaufwerk, ü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 Lizenz-Management integrieren. In dieser Hinsicht unterscheidet sich ThinApp von Microsofts App-V, das einen umfassenden Satz von Tools für ebendiese Aufgaben enthält, während VMware sich auf die Hauptaufgabe der Virtualisierung konzentriert.

Die zweite wichtige Architekturkomponente ist die Streaming-Technik: 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. Blockbasierendes 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.

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 darauf hin, dass ThinApp hinter den Kulissen werkelt.

Kopieren 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. ThinApp-Anwendungen können zudem Dienste virtuell starten und über COM/DCOM mit ihnen kommunizieren.

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, zum Beispiel von Microsoft App-V, benötigt wird.

Der Capture-Vorgang

Der Rechner, auf dem die Anwendungspakete per Capture geschnürt werden, sollte lediglich das Basis-Betriebssystem 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 herstellen.

Für das Capture sollte der kleinste gemeinsame Nenner im Hinblick auf die gewählte Betriebssystem-Variante 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.

Danach kann das Paket je nach Anforderungen konfiguriert und optimiert werden. Dazu gehören der gewünschte Isolationsgrad, Kompression, Zugriffsberechtigungen über Gruppen im Active Directory sowie die Verknüpfung mit anderen Applikationen oder Plug-ins. Zuletzt erzeugt das Tool 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.

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 Bedarf auch automatisiert vom Login-Script aus.

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 Weg 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.

Fazit

ThinApp hält die Applikationsvirtualisierung durch die geringe Komplexität und leichte 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 Hypertext Transfer Protocol (HTTP) verteilen. Die Benutzung ist für die Anwender transparent.

Allerdings dürften 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. (ws)