Definition: Zentrale Anwendungsbereitstellung / Anwendungsvirtualisierung Was ist Application Delivery?

Autor / Redakteur: Dipl.-Ing. (FH) Stefan Luber / Florian Karlstetter |

Die Anwendungsvirtualisierung ist eine softwarebasierte Technologie, mit deren Hilfe sich Anwendungen isoliert vom Betriebssystem ausführen lassen. Oft kommt die Anwendungsvirtualisierung für die zentrale Bereitstellung von Anwendungen auf entfernten Client-Rechnern zum Einsatz.

Anbieter zum Thema

Zentrale Anwendungsbereitstellung durch Anwendungsvirtualisierung.
Zentrale Anwendungsbereitstellung durch Anwendungsvirtualisierung.
(Bild: gemeinfrei (geralt / pixabay) / CC0 )

Unter dem Begriff Anwendungsvirtualisierung versteht man die Trennung beziehungsweise die Isolation einer Anwendung vom zugrundeliegenden Betriebssystem. Die Isolation kann auf dem gleichen Rechner oder auf einem vom Client-Rechner entfernten System stattfinden. Durch die Isolation muss die Anwendung nicht mehr auf dem System installiert sein, auf dem sie genutzt wird. Zwischen dem Betriebssystem und der Anwendung sorgt eine zusätzlich eingefügte Schicht für die Bereitstellung der für die Ausführung der Anwendung benötigten Laufzeitumgebung.

Die Anwendung läuft in einer virtuellen Umgebung, auch Sandbox genannt, und verhält sich nach außen so, als wäre sie auf dem ausführenden Rechner installiert. Im Gegensatz zu virtuellen Maschinen findet die Trennung nicht zwischen Software und Hardware, sondern zwischen Anwendung und Betriebssystem statt. Mit Hilfe der Anwendungsvirtualisierung lassen sich Anwendungen für Clientrechner über ein Netzwerk zentral von einem Server bereitstellen. Die Virtualisierung kann aber auch komplett auf dem betroffenen Rechner selbst stattfinden. So nutzt das Windows Betriebssystem die Anwendungsvirtualisierung beispielsweise, um im "Windows-XP-Modus" mit neuen Windows-Versionen nicht kompatible Anwendungen auszuführen. Bekannte Produkte und Technologien für die zentrale Anwendungsbereitstellung per Anwendungsvirtualisierung sind VMware Horizon, Microsoft App-V oder Citrix XenApp. Oft kommt die Anwendungsvirtualisierung in Kombination mit virtuellen Desktops zum Einsatz.

Funktionsweise und Arten der Anwendungsvirtualisierung

Ein wesentlicher Unterschied der Anwendungsvirtualisierung im Vergleich zur Server- oder Desktop-Virtualisierung besteht darin, dass die Trennung nicht zwischen Hardware und Software, sondern zwischen der Betriebssystemebene und der Anwendung stattfindet. Eine eigene Zwischenschicht stellt die Laufzeitumgebung für die Anwendung zur Verfügung. Diese Schicht ersetzt die Laufzeitumgebung des Betriebssystems. Dadurch muss die Anwendung nicht mehr auf dem Rechner installiert sein, auf dem sie verwendet wird. Zugriffe auf das Dateisystem oder die Konfigurationsdaten des Rechners fängt die Zwischenschicht für die Anwendung transparent ab. Sämtliche Ressourcenzugriffe managt die Zwischenschicht. Erfolgt eine zentralisierte Bereitstellung der Anwendung auf einem Remote-Rechner per Netzwerk, sind zwei grundsätzliche Funktionsweisen möglich.

In der ersten Variante läuft die Anwendung vollständig auf dem zentralen Server. Die Anwender interagieren mit der Anwendung über das Netzwerk. Die Darstellung auf dem Clientrechner übernehmen Remote-Display-Protokolle. Über die eingeblendeten Fenster verhalten sich die Anwendungen als würden sie lokal ausgeführt. Für die Arbeit mit der Anwendung ist eine permanente Online-Verbindung notwendig.

In der zweiten Variante wird die virtualisierte Anwendung auf dem lokalen Client ausgeführt. Die für die Ausführung benötigten Komponenten lädt der lokale Rechner beim Aufruf der Anwendung vom Server. In diesem Fall spricht man von einer gestreamten Anwendung. Sind alle für die Anwendung benötigten Komponenten geladen, ist keine Online-Verbindung mehr erforderlich. Der Anwender kann dann offline mit ihr arbeiten. Auf dem lokalen Rechner ist meist nur eine minimale Clientanwendung für das generelle Streaming von Anwendungen vorinstalliert. Diese Clientanwendung stellt die gekapselte Laufzeitumgebung zur Verfügung. Nach der Beendigung der gestreamten Anwendung sind alle Softwarekomponenten der Anwendung wieder vollständig vom lokalen Rechner entfernt.

Anwendungsvirtualisierung in Kombination mit anderen Technologien

Anwendungsvirtualisierung kann in Kombination mit vielen anderen Technologien und Virtualisierungstechniken zum Einsatz kommen. Es findet durch die gezielte Vermischung der Virtualisierung von Anwendungen, Desktops oder Hardwaremaschinen keine klare Abgrenzung statt. Neben dem bereits beschriebenen Anwendungsstreaming, bei der die Anwendung über eine Netzwerkverbindung in eine lokale Laufzeitumgebung geladen wird, sind für die Anwendungsbereitstellung oft auch Remote Desktop Dienste oder Terminal Server im Einsatz. Die Desktop-Virtualisierung trennt die Ausführung von Anwendungen vom physischen Anzeigegerät. In der Regel sind eine Vielzahl an Desktopsystemen auf einem zentralen Server installiert. Als Clients fungieren beliebige Rechner wie PCs, Laptops, Thin-Clients oder mobile Endgeräte wie Smartphones oder Tablets. Die Bereitstellung von virtualisierten Desktopsystemen übernimmt die so genannte Virtual Desktop Infrastructure (VDI).

Vor- und Nachteile der Anwendungsvirtualisierung

Unternehmen, die die Anwendungsvirtualisierung einsetzen, profitieren von zahlreichen Vorteilen. Erfolgt die Anwendungsbereitstellung von zentraler Stelle aus, können Anwendungen für alle User ohne dezentrale Tätigkeiten installiert oder aktualisiert werden. Darüber hinaus lassen sich Lizenzen einfacher verwalten. Anwendungen laufen auf Rechnern mit Betriebssystemen, für die sie eigentlich gar nicht vorgesehen sind. Selbst auf mobilen Geräten können Anwendungen ausgeführt werden, die für ganz andere Betriebssysteme entwickelt wurden.

Darüber hinaus ist es in vielen Fällen möglich, Anwendungen auf portable Medien wie Speichersticks oder -karten zu kopieren. Die Anwendung ist anschließend auf anderen Rechnern ohne eine Installation lauffähig. Ein weiterer Vorteil der Anwendungsvirtualisierung ist der Schutz des Betriebssystems vor schädlicher oder fehlerhafter Software. Dank der Trennung der Anwendung vom Betriebssystem wirken sich Fehler nur in der Laufzeitumgebung aus. Sandbox-Umgebungen für virtualisierte Anwendungen kommen häufig zum Einsatz, um Software zu testen oder verdächtige Software erstmalig auszuführen. So lassen sich beispielsweise die Funktionsweise und die Auswirkungen einer Virus-Software ohne Folgen für ein Rechnersystem untersuchen.

Die Anwendungsvirtualisierung gestattet es, mehrere Anwendungen auf einem einzigen Rechner parallel zu betreiben, die nicht dafür vorgesehen sind, weil sie beispielsweise auf die gleichen Ressourcen zugreifen.

Muss ein Betriebssystem upgegradet oder vollständig ausgetauscht werden, sind virtualisierte Anwendungen weiterhin funktionsfähig. Sie sind nur von der Laufzeitumgebung und nicht vom darunter liegenden Betriebssystem abhängig. Weitere Vorteile der Anwendungsvirtualisierung sind:

  • einfacher Zugriff auf personalisierte Anwendungen von beliebigen Orten und Rechnern aus
  • Reduzierung des Personal- und Arbeitsaufwands für die Anwendungsbereitstellung
  • Reduzierung der Hardware- und Wartungskosten durch die zentralisierte Anwendungsbereitstellung
  • Schaffung flexibler und leicht skalierbarer Umgebungen
  • kurze Bereitstellungszeiten für neue Anwendungen
  • Verlagerung von geschäftskritischen Daten und Anwendungen von einzelnen Endgeräten auf zentral geschützte Rechner

Den Vorteilen stehen einige Nachteile gegenüber. In der Praxis gibt es Anwendungen, die sich beispielsweise aufgrund bestimmter Gerätetreiber nicht virtualisieren lassen. Diese müssen nach wie vor auf den lokalen Rechnern bereitgestellt werden. Bei Problemen mit einer Anwendung kann es unter Umständen schwierig sein, das Problem zu lokalisieren. Es muss zunächst eingegrenzt werden, ob die Anwendung selbst oder die Virtualisierungs-Software das Problem verursacht. Fällt eine zentral bereitgestellte Anwendung aus, kann das komplette Unternehmen von diesem Ausfall betroffen sein. Trotz funktionierender lokaler Rechner lässt sich die Anwendung erst wieder nach Behebung der Störung nutzen.

(ID:45164789)