Praktische Grundlagen der Software-Virtualisierung und -Streaming

VMware ThinApp
Grundlagen der Softwarevirtualisierung

Dögel IT-Management ist spezialisiert auf das Thema IT-Management-Software. Das Unternehmen befasst sich verstärkt mit Software-Virtualisierungstechnologien. Wir werden Ihnen hiermit die praktischen Grundlagen der Software-Virtualisierung und -Streaming darstellen.

Was bedeutet Software-Virtualisierung?

Bei der Software-Virtualisierung wird eine komplette Anwendung in eine isolierte Umgebung, genannt Sandbox, kompiliert. Diese Umgebung ist vom eigentlichen Betriebssystem abgekapselt.

Was bedeutet Software-Streaming?

Das Streaming ermöglicht es Firmen, Anwendungen von einer zentralen Stelle, statt vom PC des Endnutzers aus, durchzuführen. Die Anwendung wird über das Netzwerk an den Benutzer weitergeleitet, statt auf jedem PC lokal installiert zu sein. Die Anwendung wird von irgendeinem Ort ausgeführt, sei es in einem lokalen Netzwerk oder von einem Rechenzentrum aus. Für den Endnutzer scheint es, als liefe das Programm direkt von seinem PC. Das Streaming-Verfahren überträgt nur die Daten, die notwendig sind. Wenn man also ein virtualisiertes Powerpoint 2003 mit ca. 190 MB über das Netzwerk startet, werden immer nur die Daten übertragen, die im jeweiligen Moment von der Software benötigt werden. Nur so kann man vermeiden, dass große Zugriffsraten die Netzwerkinfrastruktur eines Unternehms lahm legen.

VMware ThinApp
VMware ThinApp

Was für Wege gibt es, um virtualisierte Anwendungen zu nutzen?

Es gibt zwei verschiedene Wege, virtualisierte Anwendungen zu nutzen. Die erste Methode ist das klassische Citrix-Model. Dabei werden die aktuellen Anwendungen auf einem Server gehostet und anschließend über ein Netzwerk zum Kunden gestreamt. Für den Kunden stellt sich die Software wie eine normale lokale Anwendung seines PCs dar, aber die aktuelle Ausführung der Anwendung ist in einem zentralen Datencenter.

Eine andere Methode ist, dass man eine Softwareanwendung zu einer einzigen lauffähigen Datei kompiliert. Mit dieser Technologie kann der Nutzer seine Anwendungen vom USB- Stick auf seinen Laptop oder Desktop ziehen. Er muss also nicht zwangsläufig eine LAN/WAN-Verbindung haben. 

Was hat Software-Virtualisierung mit Desktop-Virtualisierung zu tun? Befassen sich bestimmte Firmen mit beidem oder sind unterschiedliche Firmen auf ein Gebiet spezialisiert?

Einige Anbieter arbeiten sowohl an Desktop- als auch an Software-Virtualisierung, da beides miteinander verwandt ist. Virtual Desktop Infrastructure (VDI) ist eine Technologie, die es der kompletten Desktopumgebung erlaubt, von einem zentralen Datenzentrum aus zu laufen. Ähnlich einer Mainframe-Umgebung benötigt der Nutzer keine Anwendungsinstallation oder -ausführung an seinem PC. Desktop-Virtualisierung passt sehr gut zu Firmen, wie zum Beispiel Finanzinstituten, wo gefestigte Desktop-Umgebungen mit einheitlichen Anwendungen und Konfigurationen bevorzugt werden. Für jedes große Unternehmen ist es schwierig, Tausende von Desktops zu managen. Hat man aber nur einige zentrale Server im Rechenzentrum, kann man das einfacher handhaben, indem man die Desktop-Umgebung direkt zu den dezentralisierten Desktops leitet. Deshalb arbeitet die Software-Virtualisierung in ähnlicher Weise, als würde man die Anwendungsfunktionalität ins Rechenzentrum einbinden und über das Netzwerk weiterleiten. Im Wesentlichen kann man jedes beliebige Laptop- oder Desktopgerät nutzen und hat die Möglichkeit, die Desktop-Umgebung zu diesem Endpunkt zu leiten.

In der Sandbox werden virtuelle Maschinen emuliert, die eine gemeinsame Desktop-Umgebung haben und komplett vom Rest des Rechners abgekapselt sind. Anwender könnten sich jeden beliebigen Laptop oder PC kaufen und dann ihre persönlichen Anwendungen ausführen. Um die Anwendungen für ihre Arbeit zu nutzen, starten sie einfach ein Programm und die virtuelle Maschine verbindet sich mit einem zentralen Server in einem Rechenzentrum, um die firmenspezifischen Programme und Services nutzen zu können. So können die Benutzer ihre geschäftlichen und privaten Dinge auf ihren Computern verbinden, ohne dass sich die unterschiedlichen Programme dabei ins Gehege kommen.

Wie stark beeinflusst die Software-Virtualisierung die Performance der Software?

Das Netzwerk ist mit ein entscheidender Teil, um akzeptable Anwendungsleistungen zu erbringen. Netzwerkanbieter beobachten den Ausbruch des Marktes in Richtung Anwendungsbeschleunigung und WAN-Optimierungstechnologien, durch die sich die Netzwerklandschaft verändert und mehr Last auf Netzwerke ausübt.  Die Anwendungsgeschwindigkeit war früher abhängig davon, wie viele Server miteinbezogen waren, wie schnell die Verbindung zum Rechenzentrum war, die Komplexität der virtualisierten Software und der Unterschied zwischen LAN und WAN. Extrem wichtig für eine hohe Performance der Software ist ein sauberer Streaming-Mechanismus. Erst durch ihn kann man selbst große Applikationen wie AutoCAD, Photoshop und Ähnliches performant bedienen. Ein Sachverhalt wird jedoch bestehen bleiben, der Mitarbeiter wird vom Home-Office mit seiner 1 MBit DSL Leitung keine Freude an virtualisierten Programmen haben. Das bleibt dann wohl eher den Terminal-Servern überlassen.

Wie beeinflusst die Software-Virtualisierung die Software-Lizenzierung?

Es wird definitiv einige Veränderungen in den rechtlichen Bedingungen geben, aber dies wird sich nicht so welterschütternd darstellen. Viele Software-Hersteller lizenzieren noch pro PC. Der Trend wird jedoch hier zukünftig stark in Richtung Lizenzierung pro Benutzer, als Concurrent-Lizenz oder als Volumenlizenz gehen. Die Tatsache, dass nur eine installierte Anwendung zu haben ist, die an den Nutzer weitergeleitet wird, wird jedoch Stand heute erst einmal einige Wellen im Lizenzierungsbereich schlagen! 

Wer profitiert von der umfassenden Einführung der Software-Virtualisierung?

Die Vorteile können wirklich weitreichend sein. Es gibt viele Desktops ohne Installationsrechte in Hochsicherheitsumgebungen, denen die Virtualisierung Nutzen bringt. Die IT-Abteilungen profitieren gewaltig davon, die Einheitlichkeit ihrer Desktop- und Anwendungs-Umgebungen zu verstärken, da sie so die Anwendungen zentral managen können jedoch aber nicht den Einschränkungen einer Terminal-Technologie unterliegen.

10.000, 1000 oder selbst 100 Desktops zu verwalten ist für jeden Administrator schwierig, wenn er versucht all die unterschiedlichen Umgebungen effizient zu warten. Software-Virtualisierung bedeutet zwar ein bisschen mehr Arbeit für die Netzwerkadministratoren, die ihre weitreichenden Netzwerke für die verschiedenen, alles umspannenden Anwendungen, optimieren müssen. Jedoch steht dies in keinem Verhältnis zu dem Mehrwert, den die Software-Virtualisierung herbeiführen kann.

Welchen Technologieanbietern könnte die Anwendungsvirtualisierung schaden?

Jede Softwarefirma, die ihre Lizenzmodelle nicht anpasst, wird langfristig ein Problem haben. Viele der Anbieter werden ihre Lizenzmodelle anpassen müssen, da Sie sonst kein Geld mehr verdienen können. Virtualisierung entlastet im Allgemeinen die Betriebssysteme. Die Nutzer achten heutzutage mehr auf die Funktionalität der Anwendungen. Microsoft wird ebenso zum Umdenken gezwungen sein, wenn sie erkennen, dass das Betriebssystem nicht das Wichtigste an einem Rechner ist.