Mit Cloudpaging hat der Anbieter Numecent ein einzigartiges Angebot auf den Weg gebracht, das einzelne Anwendungen in die Cloud auslagert, sie aber so darstellt, als würden sie auf dem lokalen System laufen. Das soll Performanceprobleme vermeiden und Programme auf Systeme bringen, die dort eigentlich gar nicht laufen können. Auch Kompatibilitätsprobleme insbesondere unter Windows sollen so der Vergangenheit angehören.
Windows-Administratoren verspüren immer dann eine gewisse Anspannung, wenn es um das Ende des Herstellersupports eines Microsoft-Betriebssystems geht. Wie praktisch alle Anbieter von Betriebssystemen sieht auch die Firma aus Redmond vor, nicht sämtliche Altlasten bis in alle Ewigkeit mit sich herumzuschleppen. Was im Klartext bedeutet, dass es ab einem bestimmten Zeitpunkt nach der ersten Veröffentlichung eines Betriebssystems keine funktionalen und später auch keine Sicherheitsupdates mehr gibt. Doch unabhängig davon, wie lange Microsoft diesen Zeitraum auch gestaltet, finden sich immer wieder etliche Organisationen, die es nicht schaffen, ihre Systeme auf neuere Windows-Versionen zu aktualisieren.
Eine neue Technologie für alte Anwendungen
Neben zu wenig Personal beklagen die betroffenen Firmen dann oft, dass es spezielle Software gäbe, die auf neueren Windows-Versionen einfach nicht funktioniere. Des einen Leid ist des anderen Freud: Denn auch wenn Microsoft den Support für alte Betriebssysteme ab einem gewissen Zeitpunkt einstellt, bietet das Unternehmen gegen Bares spezifische Lösungen an, die Uralt-Systeme weiterhin am Laufen halten.
Doch es gibt eine Alternative zu diesem Bezahlmodus: Numecent [1] richtet sich mit seinem "Cloudpaging"-Angebot an Unternehmen, die von solchen Problemen betroffen sind. Die Versprechungen des Herstellers klingen dabei fulminant: Indem Cloudpaging einen Teil des Betriebs von Anwendungen in die Cloud verlagert, sollen diese quasi agnostisch im Hinblick auf das Betriebssystem unter ihnen werden und obendrein besser und schneller funktionieren. Welche Version von Windows dabei auf dem Zielsystem läuft, sei im Grunde egal. Davon unabhängig mache Cloudpaging den Betrieb von Anwendungen schneller und einfacher, was insbesondere älterer Hardware zugutekommt. Indirekt will Numecent dadurch sogar einen Beitrag leisten, Unternehmen die Automation ihrer Workflows zu erleichtern – denn wer großflächig auf Cloudpaging setzt, braucht laut Hersteller vor Ort bloß noch ein Rumpfsystem mit der Wiedergabe-Software des Anbieters.
Windows-Administratoren verspüren immer dann eine gewisse Anspannung, wenn es um das Ende des Herstellersupports eines Microsoft-Betriebssystems geht. Wie praktisch alle Anbieter von Betriebssystemen sieht auch die Firma aus Redmond vor, nicht sämtliche Altlasten bis in alle Ewigkeit mit sich herumzuschleppen. Was im Klartext bedeutet, dass es ab einem bestimmten Zeitpunkt nach der ersten Veröffentlichung eines Betriebssystems keine funktionalen und später auch keine Sicherheitsupdates mehr gibt. Doch unabhängig davon, wie lange Microsoft diesen Zeitraum auch gestaltet, finden sich immer wieder etliche Organisationen, die es nicht schaffen, ihre Systeme auf neuere Windows-Versionen zu aktualisieren.
Eine neue Technologie für alte Anwendungen
Neben zu wenig Personal beklagen die betroffenen Firmen dann oft, dass es spezielle Software gäbe, die auf neueren Windows-Versionen einfach nicht funktioniere. Des einen Leid ist des anderen Freud: Denn auch wenn Microsoft den Support für alte Betriebssysteme ab einem gewissen Zeitpunkt einstellt, bietet das Unternehmen gegen Bares spezifische Lösungen an, die Uralt-Systeme weiterhin am Laufen halten.
Doch es gibt eine Alternative zu diesem Bezahlmodus: Numecent [1] richtet sich mit seinem "Cloudpaging"-Angebot an Unternehmen, die von solchen Problemen betroffen sind. Die Versprechungen des Herstellers klingen dabei fulminant: Indem Cloudpaging einen Teil des Betriebs von Anwendungen in die Cloud verlagert, sollen diese quasi agnostisch im Hinblick auf das Betriebssystem unter ihnen werden und obendrein besser und schneller funktionieren. Welche Version von Windows dabei auf dem Zielsystem läuft, sei im Grunde egal. Davon unabhängig mache Cloudpaging den Betrieb von Anwendungen schneller und einfacher, was insbesondere älterer Hardware zugutekommt. Indirekt will Numecent dadurch sogar einen Beitrag leisten, Unternehmen die Automation ihrer Workflows zu erleichtern – denn wer großflächig auf Cloudpaging setzt, braucht laut Hersteller vor Ort bloß noch ein Rumpfsystem mit der Wiedergabe-Software des Anbieters.
Technisch betrachtet ist Cloudpaging eine Art hybrider Ansatz zwischen dem lokalen Betrieb von Anwendungen und dem Prinzip der Virtual Desktop Infrastructure (VDI). Letzteres verlagert bekanntlich den gesamten Computer eines Anwenders in die Cloud, sodass vor Ort bloß noch eine Art Terminal notwendig ist. Je nach Umfang der Nutzung gestaltet sich VDI deshalb aber verhältnismäßig teuer und obendrein ist vielen Unternehmen nicht wohl beim Gedanken, die Desktops ihrer Mitarbeiter mitsamt deren Daten in die Obhut eines externen Anbieters zu überantworten. Cloudpaging stellt für diese Einsatzgebiete möglicherweise eine sinnvolle Alternative dar.
So funktioniert Cloudpaging
Bereits der Begriff Cloudpaging enthält einen zentralen Hinweis auf die Art und Weise, wie das Produkt funktioniert. So deutet das "Paging" bereits an, dass der Dienst Anwendungen in "Memory Pages" unterteilt, die es an den ausführenden Client schickt. Darin wird auch ein großer Unterschied zwischen klassischer VDI und Cloudpaging deutlich. Denn das "V" in VDI steht für "Virtual" und bedeutet, dass es für den Nutzer vor Ort zwar aussieht, als habe er einen echten Computer vor der Nase, de facto sieht er aber nur das entfernte Display eines anderen Computers, der heute üblicherweise in der Cloud läuft. Wie früher ist sein Client zu einem Terminal degradiert, die eigentliche Magie geschieht in der Ferne.
Eben das ist bei Cloudpaging anders: Der Dienst bereitet die Anwendungen quasi in der Cloud vor, liefert die entsprechenden Daten dann aber an den Client aus, der die eigentliche Berechnung mittels der lokalen Hardware durchführt. Dafür braucht er allerdings auf dem System selbst außer eines kleinen Stücks Software keine besonderen Bedingungen, was ein Kernaspekt in Numecents Ansatz der Agnostik im Hinblick auf die genutzte Windows-Version ist. Solange sich der Client auf einem Windows-System installieren lässt, kann dieses beliebige Anwendungen aus der Cloudpaging-Welt abspielen.
Das beschriebene Tool auf dem Zielsystem vor Ort nennt der Hersteller "Cloudpaging Player", und der enthält neben der Funktionalität zum Starten und Stoppen von Anwendungen auch eine Schnittstelle namens "Virtual Memory Management Unit" (vMMU), die für das Ausführen der Anweisungen im speziellen Auslieferformat des Werkzeugs zuständig ist.
Bevor sich deren Arbeitsweise erschließt, ist allerdings ein genauerer Blick auf die beiden anderen Cloudpaging-Komponenten nötig: Einerseits spielt der Cloudpaging-Server die Anwendungsdaten an Instan- zen des Cloudpaging-Players aus, andererseits ermöglicht es das Cloudpaging-Studio dem Administrator, Abbilder der auszuspielenden Anwendungen zu erstellen.
Der Cloudpaging-Player spielt die fertigen Container vom Cloudpaging-Server auf das Zielsystem aus.
Container im Fokus
Daraus ergibt sich implizit auch, dass Container-Virtualisierung bei Cloudpaging zum Einsatz kommt. Zur Erinnerung: Container-Virtualisierung basiert anders als Voll- oder Paravirtualisierung auf dem Prinzip, nicht den gesamten Computer als virtuelle Instanz abzubilden. Stattdessen wird eine Anwendung mit dem gesamten "Userland" ausgeliefert, also mit all ihren Abhängigkeiten. Das umfasst in der Regel zahlreiche Bibliotheken, kann aber auch andere Tools und Werkzeuge umschließen.
Damit Container-Virtualisierung funktioniert, muss auf dem Zielsystem die Isolierung des Containers vom Host und von anderen Containern nach dem gewählten und implementierten Standard erzwungen sein. Container-Virtualisierung in Linux greift dafür zum Beispiel auf Funktionen zurück, die unmittelbarer Bestandteil des Kernels selbst sind. Cloudpaging implementiert diese Funktionalität auf ähnliche Weise in seinem Player.
Ein zentraler Dreh- und Angelpunkt sind dabei die Images selbst sowie das Format, das ihnen zugrunde liegt. Numecent hat seinen Standard für die Container-Abbilder so konstruiert, dass diese aus mehreren Schichten bestehen, die sich durch die Bestandteile unterscheiden, die zur Außen- wie zur Innenseite hin exponiert werden. Die einzelnen Ebenen des Abbildes nennt der Hersteller dabei etwas umständlich "Disposition", das sich noch am ehesten mit "Gliederung" oder "Art" übersetzen lässt. Maximal drei Dispositions ergeben ein Abbild: Die Anwendung sieht ausschließlich die "Isolated Disposition", worin die Anwendung ihre Laufzeitdateien hinterlegt und Änderungen an diesen vornimmt.
Im Stapel darunter ist danach die "Integrated Disposition" an der Reihe, der eine Sonderrolle zukommt. Sie exponiert hin zur "Isolated Disposition" einerseits ein Bild eines vollständigen Systems mit allen Abhängigkeiten, wie die Anwendung es benötigt. Zur Systemseite hin stellt sie die Anwendung so dar, als sei diese lokal installiert, fungiert im Bedarfsfall also als Dolmetscher. Das kann insbesondere dann nötig sein, wenn das von einer Anwendung im "Isolated"-Layer erwartete Betriebssystem stark von dem differiert, auf dem die Cloudpaging-Anwendung läuft.
Die dritte und im Stapel unterste Schicht ist schließlich die "Installed"-Disposition. Auch diese findet sich in anderen Container-Implementierungen nicht. Sie spielt ebenfalls eine Vermittlerrolle, nämlich in jenen Fällen, in denen die Anwendung Veränderungen am laufenden Container vornimmt. Die Installed-Disposition führt darüber Buch und ermöglicht es zu einem späteren Zeitpunkt, die gesamte Anwendung auf ihren ursprünglichen Zustand zurückzusetzen – also einen Status herbeizuführen, der mit jenem identisch ist, wenn die Anwendung im Container auf dem Zielsystem nie gelaufen wäre.
Das kann gerade dann sehr nützlich sein, wenn Anwendungen die Verwaltung ihrer eigenen Metadaten nicht im Griff haben, der Admin aber absolut sicher sein möchte, dass die jeweilige Sofware auf Zielsystemen in jedem Fall sauber startet und läuft. Zwingend zu nutzen ist diese Funktion aber eben nicht und sollen veränderte Laufzeiten erhalten bleiben, regelt sich dies ebenfalls über die "Installed"-Disposition.
Schlanke Image
Wie Cloudpaging in der Praxis funktioniert, veranschaulicht der klassische Ablauf des Anwendungs-Deployments. Zunächst stellen Administratoren sicher, dass sie auch eine lauffähige Instanz des Cloudpaging-Servers haben. Dieser lässt sich als fertiger Dienst wahlweise auf AWS oder Azure hosten oder lokal betreiben. Zwar kann der Cloudpaging Player Abbilder auch lokal verarbeiten; in größeren Setups ist das aber weder sinnvoll noch seitens Numecents enpfohlen. Komplementär dazu ist auf jedem System, das Anwendungen per Cloudpaging nutzen soll, der Cloudpaging Player notwendig.
Der Hersteller weist darauf hin, dass Admins auch die klassischen "Golden Images" überdenken sollten, wenn sie Cloudpaging nutzen. Denn diese müssen eben nicht mehr etliche GByte groß sein und sämtliche benötigte Software schon während der Installation von Windows enthalten. Stattdessen genügt es, ein Basisabbild zu bauen, das außer Windows selbst nur noch den Cloudpaging-Player mit entsprechender Konfiguration enthält. Wenn ein Win-dows-System vor Ort entsprechend aufgesetzt und der Cloudpaging-Server verfügbar ist, steht somit bereits die benötigte Infrastruktur.
Es fehlen dann noch die Anwendungen selbst, die Admins mit dem Cloudpager-Studio erzeugen. Nach dem Start des Werkzeugs legt der Administrator im Studio zunächst ein neues Projekt mit passendem Namen und passender Beschreibung an. Hier lässt sich auch bereits festlegen, dass das Image komprimiert oder verschlüsselt werden soll – zwei Funktionen, die bei anderen Container-Produkten ebenfalls zum Teil nur rudimentär zur Verfügung stehen.
Dann benötigt der Admin die Installationsroutine des Werkzeugs, das den Weg in den Container finden soll, um den "Capture Modus" des Studios zu starten. Konkret startet er direkt aus der Studio-Anwendung heraus den Installationsassistenten, der danach ganz normal läuft. Während dieser seine Arbeit verrichtet, zeichnet das Cloudpaging-Studio aber sämtliche Veränderungen des Systems auf, die die Installationsroutine vornimmt. Per Klick in Checkboxen legt der IT-Verantwortliche danach fest, mit welchen Betriebssystemen sein Anwendungscontainer kompatibel sein soll.
Schließlich ist noch das Binary zu definieren, das beim Ausführen des Containers auf dem Zielsystem aufzurufen ist. Dazu navigiert der Admin im Cloudpaging-Studio per Explorer zur Binärdatei. Praktisch: Die Software extrahiert aus dieser gleich das Anwendungs-Icon, falls vorhanden, und zeigt den Container anschließend entsprechend an. Dann folgt das "Mastering", das den Container im Zielformat und entlang der administrativen Vorgaben herstellt. Anschließend lässt sich dieser in den Cloudpaging-Server integrieren, wodurch er zur Ausführung auf den Zielsystemen verfügbar wird.
Flinke Anwendungen
Ein zentraler Unterschied zwischen klassischem VDI und Cloudpaging ist wie eingangs beschrieben die Tatsache, dass bei Cloudpaging die Anwendungen lokal laufen und nicht auf einem System in der Cloud, deren Bild lediglich übertragen wird. Das kann bei riesigen Anwendungen wie Photoshop oder einer Datenbank allerdings zu erheblichen Performanceproblemen führen. Denn wenn zum Ausführen einer lokalen Anwendung eine Binärdatei von mehreren Hundert MByte Größe zusammen mit ihren Assets den Weg auf den lokalen Computer finden müssen, kann das gerade bei dünner oder nicht ganz stabiler Leitung eine Weile dauern.
Hier kommt die Virtual Memory Management Unit ins Spiel. Für den reibungslosen Betrieb einer Anwendung sind meist nur 10 bis 20 Prozent der ausgelieferten Dateien tatsächlich notwendig. Es reicht also aus, dem Client im Cloudpaging-Betrieb nur jene Komponenten einer Anwendung zur Verfügung zu stellen, die dieser tatsächlich gerade benötigt. Das erledigt die vMMU, die Bestandteil des Cloudpaging-Players ist: Sie unterteilt die App im Hintergrund in Einzelteile ("Pages") und errechnet dynamisch und transparent anhand der Systemaufrufe der Anwendung, welche Assets sie vom Cloudpaging-Sever gerade laden muss. So kommt es im Cloudpaging-Betrieb regelmäßig vor, dass ein Client lokal nur 25 Prozent der Assets einer Anwendung vorliegen hat, diese auf dem Zielsystem aber reibungslos funktioniert – und zwar so schnell, als wäre sie lokal installiert.
Wer freilich im Laufe der Arbeit mit einem Programm zusätzliche Funktionen nutzt und Cloudpaging dazu bringt, Assets nachzuladen, bemerkt möglicherweise eine winzige Verzögerung. Diese fällt aber im Regelfall kaum länger aus, als würden beispielsweise von einer lokalen Festplatte Assets nachgeladen. Der Administrator kann an dieser Stelle zudem – in begrenztem Umfang – auf die Latenz und mithin die Dauer des Nachladens Einfluss nehmen: Ein lokaler Cloudpaging-Server mit einem flotten Flash-Laufwerk dürfte schneller liefern als eine Serverinstanz in der Cloud. Hier stellt sich letztlich wie so oft die Kosten-Nutzen-Frage und die nach dem benötigten Aufwand.
Numecent weist übrigens übrigens auch ausdrücklich darauf hin, dass sich Cloudpaging-Anwendungen in klassischen VDI-Instanzen betreiben lassen, wie sie insbesondere Azure zur Verfügung stellt. Auf diese Weise nutzt ein IT-Verantwortlicher für seine Anwender quasi das Beste aus beiden Welten: der Desktop ist virtualisiert, die Anwendung läuft aber als Cloudpaging-Container in der VDI-Instanz, was sie schneller und reaktiver macht.
Aus technischer Sicht durchaus bemerkenswert ist schließlich Art und Umfang der Abstraktion, die Numecent in Cloudpaging umsetzt. Denn das Cloudpaging-Studio zeichnet nicht nur Veränderungen am Dateisystem auf, die eine Installationsroutine vornimmt. Das Werkzeug erkennt ergänzend dazu auch von einer Anwendung benötigte Treiber und integriert diese dynamisch in den gepackten Container. Das ist im Gegensatz zu klassischen Containern ein echter Mehrwert, denn diese beschränken sich auf das Userland und haben in der Regel keine Möglichkeit, Treiber im Kernel-Space zu integrieren.
Auch Updates gestalten sich im Übrigen leichter. Wird beispielsweise ein Desktoprechner ausgetauscht, genügt es, auf diesem den Cloudpaging-Player zu installieren, um die zuvor auf einer älteren Version von Windows genutzten Anwendungen sofort wieder an den Start zu bringen. Als technische Meisterleistung durch den Hersteller darf dabei gelten, dass dieser sogar spezielle Treiber für Sonderhardware erfolgreich in seine Abstraktion integriert.
Cloudpager ist nicht Cloudpaging
Komplementär zur Toolsuite rund um Cloudpaging bietet Numecent eine Orchestrierungssuite an, mit der sich eine Flotte von Windows-Computern im Hinblick auf Container-Virtualisierung steuern lässt. Diese heißt unglücklicherweise "Cloudpager" – es besteht also durchaus Verwechselungsgefahr, obwohl die Dienste nur bedingt miteinander zu tun haben. Cloudpager kann Cloudpaging nutzen, um Container auf Zielsystemen auszurollen. Es unterstützt komplementär aber auch die Container-Formate von Microsoft und VMware. Numecent gibt allerdings an, dass sich der Cloudpaging-Player auch mit den gängigen Orchestrierungswerkzeugen für Windows kombinieren lässt. Wer Cloudpaging orchestrieren möchte, ist also nicht zwingend auf Cloudpager angewiesen, zumal dieses zusätzliche Lizenzkosten hervorruft. Lohnen dürfte das Werkzeug sich vor allem im Rahmen einer großflächigen Umstellung auf Cloudpaging in Firmen und Behörden, bei denen das Ziel ist, schnell Resultate zu erreichen.
Alternativen sind Mangelware
Es ist nichts Besonderes, dass Anbieter ihre Technologie als "bahnbrechend" oder "einzigartig" bezeichnen und damit suggerieren, selbst ohne Konkurrenz zu sein. Auch Numecent macht bei Cloudpaging da keine Ausnahme. Bemerkenswert ist in diesem Kontext allerdings, dass vergleichbare Lösungen aktuell am Markt de facto tatsächlich nicht existieren.
Cloudpaging als Begriff für das Ausbringen von Software ist gar eine eingetragene Marke des Unternehmens. Numecent weist zudem darauf hin, dass es über 50 Patente auf die diversen, in Cloudpaging verarbeiteten Funktionen besitzt, darunter etliche Aspekte rund um die vMMU. Wollte ein anderer Anbieter vergleichbare Technologie nachbauen, bekäme er es also mit recht hoher Wahrscheinlichkeit mit Numecents Rechtsabteilung zu tun. Das ist gut für das Unternehmen, sorgt aber eben auch für wenig Konkurrenz und wenig Preisdruck.
Hinzu kommt, dass der Anbieter nach dem Motto "Halte deine Freunde eng, halte deine Feinde enger" agiert: Mit Unternehmen, deren finanzielle Schlagkraft ausreicht und deren Geschäftsfelder sich potenziell mit jenem von Cloudpaging kreuzen könnten, hat der Anbieter fast samt und sonders Partnerschaften. Microsoft hostet auf Azure etwa das Cloudpager-CDN und für Amazons VDI-Produkte existiert eine komplette Integration für Cloudpaging. Lediglich ein Hinweis auf Google fehlt in der langen Liste der Partner, die Numecent dabei helfen, das eigene Produkt unter die Leute zu bringen.
Fazit
Numecent geht mit einem Werkzeug an den Start, das zu überzeugen vermag. Gerade wer ältere Anwendungen auf neueren Systemen zum Laufen bringen muss, freut sich über die Rückwärtskompatibilität bis hin zu Windows 7. Der Cloudpaging-Player steht für alle alten wie aktuellen Windows-Versionen zur Verfügung und abstrahiert das eigentliche Betriebssystem so, dass es zwischen dem Host und dem Gast, also der Anwendung, keine faktische Verbindung mehr gibt. Somit ist das Betriebssystem auf dem Host frei wählbar.
Cloudpaging eignet sich allerdings nicht nur für diese Einsatzzwecke. Auch wenn das Ziel darin besteht, möglichst schlanke und trotzdem funktionale Desktops zu konstruieren, kann die Software dabei helfen. Dass es sich nicht um stumpfes VDI handelt, sondern das Werkzeug sogar einzelne Teile einer Anwendung dynamisch ausliefern kann, erweist sich dabei als nützliche Funktion. Ein Haken ist allerdings, dass der Hersteller auf der eigenen Website keine konkrete Preise nennt. Wer Interesse hat, muss sich also wohl oder übel mit dem Vertrieb des Anbieters in Verbindung setzen.