Aus Linux-Magazin 03/2011

Server-based Computing und Remote-Desktops

© Rainer Junker, 123RF.com

In virtuellen Desktop-Infrastrukturen verwalten Admins die Desktops ihrer Anwender zentral und unabhängig von der Clienthardware auf leistungsfähigen Servern. Das Linux-Magazin testet sechs sehr unterschiedliche Produkte für den zentral verwalteten, Server-basierten Büroarbeitsplatz.

Mit Terminalservices und auf Servern virtualisierten Desktops brauchen Administratoren nicht mehr von einem Büro zum nächsten zu hetzen, weil die Clients Probleme bereiten. Die Hersteller von Software für virtuelle Desktop-Infrastrukturen schwören ohnehin ganz und gar auf die Private Cloud und stillen das Bedürfnis der Anwender mit immer neuen Versionen.

Sechs Remote-Desktops

Sechs davon hat das Linux-Magazin im Folgenden getestet. Nomachine [1] bringt die NX-Version 4.0, Teamviewer ist schon bei 6 angekommen [2]. Das freie X2go [3] veröffentlicht einen Windows-Client, bietet Desktopsharing und ein Browser-Plugin. Die Hersteller komplexer Virtualisierungs-Umgebungen wie Citrix [4] und Red Hat [5] beschleunigen sogar Videos und 3-D-Anwendungen – alles ganz im Sinne der neuen Cloud-Leitkultur, so wie sich diese auch auf der CES 2011 präsentierte [6]. Und Virtualisierungs-Marktführer VMware hat die Version 4 seiner VDI-Lösung VMware View auf dem Markt.

Tabelle 1 trägt die wichtigsten Features zusammen. Da hätte der Open-Source-Anteil noch vor wenigen Jahren ganz anders ausgesehen, als die Linux-Community meist nur den beiden Platzhirschen Microsoft und Citrix hinterherhecheln konnte.

<a href="#article_t1" class="table" title=

Tabelle 1: Terminalserverlösungen im Vergleich” width=”300″ height=”266″ /> Tabelle 1: Terminalserverlösungen im Vergleich

Die Redmonder hatten mit dem RDP-basierten Windows-Terminalserver [7], Citrix mit dem ICA-Protokoll [8] und den darauf aufbauenden Terminalserver-Clustern schier unerreichbare Standards gesetzt. Lange Zeit galten Nomachines NX und dessen freies Pendant Free NX als die einzigen Kandidaten, die Desktop-Sitzungen auch über schmale Leitungen performant ausliefern konnten.

Doch das Blatt wendete sich. Citrix übernahm Xensource [9] und stieg damit auch in den Linux-Markt ein, VMware definierte mit V-Sphere die Virtualisierung neu [10]. Red Hat brachte seine Enterprise-Virtualisierung RHEV auf den Markt, und Virtualbox integrierte Enterprise-Features und einen eigenen RDP-Server für den Remote-Zugriff auf virtuelle Maschinen [11].

Terminalserver oder Virtualisierung?

Im Zeichen der alles virtualisierenden Wolke verschwimmen die Grenzen zwischen reinen Terminalservern und den virtualisierten Infrastrukturen für Desktopclients. Linux als Betriebssystem spielt dabei zwar eine zunehmend wichtige Rolle, aber die professionellen Managementoberflächen stehen meist nur dem Windowsler zur Verfügung.

Seinen neuen Multicore-Server macht der Linux-Admin heute im Idealfall einfach per Software-Installation zur Desktopzentrale, zum Beispiel mit dem umtriebigen X2go oder dem ebenfalls noch frei erhältlichen NX. Für den Remote-Support taugt proprietäre Software wie das kostenlose Teamviewer, das den Zugriff auf Linux, Windows und den Mac von vielerlei Systemen aus ermöglicht.

Oder er nutzt die Hypervisoren von VMware, Xen oder KVM/Qemu, um jedem Anwender einen virtuellen Rechner mit klar umrissenen Ressourcen als (Remote-)Image zur Verfügung zu stellen, auf das die Anwender mit Terminalserver-Software zugreifen und das der Admin bei Bedarf einfach schnell wieder einspielt. Wer das nötige Kleingeld hat, kriegt das auch ausfallsicher mit jederzeit möglicher Live-Migration, zum Beispiel von VMware, Citrix oder Red Hat.

Nomachine NX 4

Nomachine, der erste Kandidat im Vergleich, nutzt eine ausgefeilte Kombination aus SSH- und diversen Kompressions- und Caching-Mechanismen, um entfernte Desktopsitzung auf den lokalen Rechner zu holen (Abbildung 1). Die eingesetzten NX-Libraries hatten die Entwickler schon 2003 unter die GPL gestellt und mit eigenen Algorithmen kombiniert.

Abbildung 1: Etwas komplizierter als eine SSH-Sitzung mit X-Forwarding gestaltet sich der Verbindungsaufbau mit NX. Dafür gibt's Kompression und intelligentes Caching.

Abbildung 1: Etwas komplizierter als eine SSH-Sitzung mit X-Forwarding gestaltet sich der Verbindungsaufbau mit NX. Dafür gibt’s Kompression und intelligentes Caching.

Daher sorgte Mitte Dezember eine Pressemitteilung [12] für einiges Aufsehen in der Community: Die Software erscheint ab der neuen Version nur noch als Closed Source. Auch dass der Hersteller Lizenz- und Supportkosten bei seinen Enterpriseprodukten ab dann nicht mehr pro CPU-Core berechnet und dass es die versprochenen neuen Serverdienste endlich auch für Mac und Windows gibt, hilft da wenig. Ob sich diese Entscheidung für die Römer rechnet, muss sich zeigen. Es bleibt nicht auszuschließen, dass sich viele Anwender und Systemhäuser von Nomachine abwenden.

Bis zum Redaktionsschluss lag dem Linux-Magazin nur eine Testversion der NX Preview Beta 2 vor, die es als Server bisher nur für Linux und Solaris zum (allerdings kostenlosen) Download gibt. Clients stehen dagegen wie gewohnt für Windows, Linux, Mac und Solaris bereit [13]. Wer die ausprobieren will, sollte aber zunächst jede alte Version von Nomachine entfernen. Zumindest die alten »nxserver« – und »nxnode« -Pakete sind nicht kompatibel und verhindern die Installation.

Gleich nach dem Start fällt auf, dass Nomachine einige Arbeit in das neue Look&Feel gesteckt hat (Abbildung  2). Der Client trägt jetzt auch einen anderen Namen, er firmiert fortan unter Nxplayer (VMware lässt grüßen). Unter der Haube hat sich fast nichts verändert, hier haben die Entwickler den Schwerpunkt im Wesentlichen auf den neuen Client und die Optimierung der Multimedia-Fähigkeiten gelegt.

Abbildung 2: Mit neuem Look&Feel präsentiert sich Nxplayer, der neue Client von Nomachines NX 4.

Abbildung 2: Mit neuem Look&Feel präsentiert sich Nxplayer, der neue Client von Nomachines NX 4.

In Arbeit sind auch bidirektionaler Sound mit Pulseaudio und schnelles 3-D mit Virtual GL, Bugfixes und Performance-Verbesserungen. Auch das immer wieder als umständlich kritisierte Vorgehen, die SSH-Verbindung (siehe Abbildung 1) zunächst über den User »nx« mit einem Hostkey aufzubauen und erst danach auf den Useraccount zu wechseln, bleibt dem Admin erhalten.

Das Browser-Plugin erlaubt es Anwendern, sich mal eben aus dem Internetcafé in Nomachines Webplayer einzuloggen. Auch die Enterprise-Produkte rund um den Server Manager und den NX Builder bleiben (noch) unverändert [14]. Für den Einsteiger gibt es den Enterprise Desktop ab 600 Euro, das Topmodell NX Advanced Server schlägt dagegen bereits mit mindestens 2500 Euro zu Buche, bringt aber auch Highend-Funktionen für HA-Cluster mit.

X2go

Unter Open-Source-Spezialisten gilt X2go immer noch als der Terminalserver-Geheimtipp. Die Entwickler um Heinz-Markus Graesing und Oleksandr Schneyder schafften es in den letzten Jahren mit überraschend wenig Manpower, einen vollständigen Stack mit angepassten NX-Bibliotheken ins Leben zu rufen. Schon früh beherrschte das junge Projekt Features, die sonst nur Sun oder vergleichbar teure Anbieter im Portfolio hatten, zum Beispiel komfortable Smartcard-Authentifizierung wie bei Suns Hotdesking [15] oder ein flexibel konfigurierbares Browser-Plugin [16].

Auch einen Windows-Client ([17], Abbildung  3), Desktopsharing (auch Shadowing genannt, [18], Abbildung  4) und Unterstützung für Nokias N800/900 hat X2go zu bieten, ein Plasmoid für KDE 4 [19] ist in Arbeit. Python-Entwickler um Mike Gabriel haben eine vollständige Library mit einem eigenen Miniclient [20] gebaut und ein öffentliches Git-Repository auf Berlios eingerichtet [21].

Abbildung 3: Auch für Windows-Clients: Anmeldung an einem Linux-Server mit X2go.

Abbildung 3: Auch für Windows-Clients: Anmeldung an einem Linux-Server mit X2go.

Abbildung 4: Ganz Im Zeichen der Robbe Phoca steht X2go. Die neuen Version Baikal bringt, wie auch die Beta Heuler, Desktopsharing mit.

Abbildung 4: Ganz Im Zeichen der Robbe Phoca steht X2go. Die neuen Version Baikal bringt, wie auch die Beta Heuler, Desktopsharing mit.

Komplett Open Source

X2go erweist sich als waschechtes Open-Source-Projekt, das der Admin am einfachsten mit der Zeile

deb http://x2go.obviously-nice.de/deb/ lenny main

in seine Debian-Quellen integriert und per Aptitude installiert. 2010 wurde auch Suse auf das Projekt aufmerksam, seitdem gibt es auch RPM-Pakete fürs Chamäleon.

In den Debian-Repositories findet sich eine lange Liste an ».deb« -Files, die sauber getrennt voneinander unterschiedlichen Zwecken dienen, 26 an der Zahl. Darunter findet sich das Ubuntu-Server-one-Paket (-Home), das sich konfigurationslos installiert und die ideale Wahl für einen schnell aufgesetzten, einzeln stehenden Terminalserver mit lokaler Authentifizierung ist.

Fortgeschrittene Anwender finden Features wie die Smartcard-Authentifizierung (»x2gosmartcardrules« ), komprimierten Druck (»x2goprint« ) oder die LDAP-Benutzerverwaltung (»x2goldaptools« ) in separaten Paketen. Bei der Server-Variante klinken sich Administrationstools nahtlos ins KDE-Kontrollzentrum ein (»x2gogroupadministration« , »x2gouseradministration« und »x2gohostadministration« ). X2gospyglass dagegen eignet sich prima für Schulen oder Weiterbildungen: Es sammelt Screenshots aller angeschlossenen Terminals und stellt sie als Thumbnails in einer schnellen Übersicht für den Lehrer dar. Mit X2gothinclient steht darüber hinaus noch eines der älteren Module zur Verfügung, das PXE-Boot mit echten Thin Clients ermöglicht.

Kleiner Heuler

Der Seehund Phoca ist das Markenzeichen von X2go, er findet sich in vielerlei Formen. So heißt beispielsweise das Beta-Repository »heuler« , es gab eine Version namens Uthoern, die seit Mai 2010 erwartete nächste Release nennt sich Baikal und im Login-Fenster grüßt das weiße, pelzige Robbenbaby.

Bei der Architektur haben die Entwickler einiges anders gemacht als das ehemalige Vorbild NX. Sie verzichten zum Beispiel auf den Umweg über den »nx« -User und loggen die Anwender direkt via SSH ein, was viele Integrationen deutlich einfacher und standardkonformer macht. Lokales Drucken von Remote-Daten etwa erledigt X2go einfach über die Kombination aus Cups, Fuse und SSHFS.

Darüber hinaus überarbeitete die wachsende Zahl an Entwicklern den Stack der Free-NX-Bibliotheken und implementierte viele Teile neu. Jüngster Spross aus dieser Richtung ist die Libssh, mit der sich laut Heinz-Markus Graesing deutliche Performance-Zuwächse gewinnen lassen: “Connect-Zeiten werden deutlich kürzer und die Verbindungen stabiler. Da hat vor allem Oleksandr sehr viel Zeit investiert, ein kompletter Rewrite vieler Komponenten war notwendig.”

Schon früh setzte das Team auf Pulseaudio für die bidirektionale Audio-Übertragung, was erstaunlicherweise sogar Skype-Videotelefonie via Terminalserver auf einem N900 möglich macht. Ein Video auf der X2go-Webseite zeigt, wie sich ohne Probleme Einschränkungen von Internetprovidern umgehen lassen.

Eine der neuesten Entwicklungen um X2go sind Desktopsharing (Abbildung  4) und das neue Browser-Plugin (Abbildung 5). Das bisherige Firefox-Plugin soll nun gar nicht mehr offiziell als “stable” released werden. An seine Stelle tritt “demnächst” (Graesing) der auf »QTBrowserPlugin« basierende Nachfolger, der später auch in Internet Explorer, Safari und Chrome laufen soll. “Es ist fast fertig. Das Problem mit dem alten Plugin war, dass wir alle Bugs, die durch die Arbeit mit der NS-Plugin-Schnittstelle entstanden, selber fixen mussten. Das wäre auf Dauer zu viel Arbeit gewesen”, so Graesing zum Linux-Magazin.

Abbildung 5: Die neue Version des Browser-Plugin für X2go beruht auf »QTBrow-serPlugin« und wird auch mit Chrome, Internet Explorer und Safari laufen.

Abbildung 5: Die neue Version des Browser-Plugin für X2go beruht auf »QTBrow-serPlugin« und wird auch mit Chrome, Internet Explorer und Safari laufen.

Wer Highend-Features wie einen hochverfügbaren Cluster mit X2go aufbauen will, muss noch selbst für die nötige Infrastruktur sorgen. Die Konkurrenten wie NX oder Citrix bringen das gegen teures Geld mit. Doch auch daran arbeiten die Entwickler. Abbildung 6 zeigt die geplante Infrastruktur mit zentralem Profil- und Sitzungsmanager (X2gomanager).Der X2goproxy und das Json-Admin-GUI sollen in Testversionen bereits laufen. Auch die Integration in freie Wolken wie Owncloud ist geplant. Was X2go dagegen noch völlig fehlt, ist jede Form der Videokomprimierung.

Abbildung 6: An vielen Stellen bei X2go ist zwar noch Handarbeit nötig, doch das Projekt wächst schnell: Die Entwickler arbeiten schon am zentralen Profilserver.

Abbildung 6: An vielen Stellen bei X2go ist zwar noch Handarbeit nötig, doch das Projekt wächst schnell: Die Entwickler arbeiten schon am zentralen Profilserver.

Teamviewer 6

Anders als die anderen Produkte in diesem Vergleich will Teamviewer gar keine Terminalserver-Software sein, sondern versteht sich als reine Remote-Wartungs- und Präsentations-Software. Sie richtet sich eher an Admins, die entfernte Systemen warten, zum Beispiel bei Kunden mit Supportverträgen für die eigene Desktopsoftware.

Da greift der (in der Regel Windows-)Admin unkompliziert per Teamviewer auf Systeme zu, während die Anwender eingeloggt sind, und hilft ihnen per Chat, Audio- und Videokonferenz bei der Lösung eines Problems. Dass sich dabei je nach Kunde ein eigenes Template mit angepasstem Logo verwenden lässt, unterstreicht die Zielgruppe der Supportdienstleister. Es spricht jedoch nichts dagegen, die Clientsoftware auf einen zentralen Server zu verfrachten und die Anwender mit Teamviewer-Software remote arbeiten zu lassen. Nur ums Management der Systeme muss sich der Admin dabei selbst kümmern.

Teamviewer macht es dem Anwender sehr einfach. Um Firewall- oder Routingregeln braucht er sich nicht zu scheren, weil jeder Client beim zentralen, vom Hersteller verwalteten Server eine ID erhält und über diese von überall jederzeit erreichbar ist (Abbildung 7), wenn der Client läuft. Optional lassen sich aber auch (zum Beispiel im LAN) direkte Verbindungen herstellen.

Abbildung 7: Die Anmeldung an einer Remote-Sitzung erfolgt bei Teamviewer über die eindeutige ID des Clients.

Abbildung 7: Die Anmeldung an einer Remote-Sitzung erfolgt bei Teamviewer über die eindeutige ID des Clients.

Der Administrator, der sich einloggt, benutzt die gleiche Software und braucht nur die Zugangsdaten und die richtige ID einzugeben – und schon klappt die Verbindung. Die ist auch über die Teamviewer-Webseite vom Browser aus möglich. Ob eine derart weit reichende Abhängigkeit von einem Hersteller im Unternehmen tragbar ist, muss jeder IT-Leiter wohl für sich entscheiden.

Neben der Vollversion gibt es die Software in diversen Varianten: Bei Teamviewer Quicksupport muss der Client dem Admin die ID selbst mitteilen, während die Host-Variante eine permanente ID erhält. Mit Quickjoin verfolgen beliebig viele Clients eine zentrale Präsentation, Teamviewer Portable landet auf einem USB-Stick, der Teamviewer Manager (Abbildung 8) bringt eine Verwaltungsoberfläche für die freizugebenden Rechner. Die Software ist für private Nutzung kostenlos, Enterprise-User müssen sich so genannte Kanäle kaufen.

Abbildung 8: Mit dem Teamviewer Manager verwalten Windows-Admins Sitzungen und Clients.

Abbildung 8: Mit dem Teamviewer Manager verwalten Windows-Admins Sitzungen und Clients.

Der typische Verbindungsaufbau von Teamviewer läuft über den zentralen Server ab, der Erstkontakt eines Clients ist immer der Masterserver des Herstellers (Abbildung  9). Wenn der – wie in ungefähr 70 Prozent aller Fälle – beim Handshake feststellt, dass auch eine direkte Verbindung zwischen den Clients möglich ist, baut er diese auf. Die Software verschlüsselt mit RSA-Keys in 256 Bit, nur wenn beide Rechner sich im selben LAN befinden, dann reicht die symmetrische Verschlüsselung.

Abbildung 9: Der Verbindungsaufbau von Teamviewer zeigt die Abhängigkeit vom zentralen Master der Firma. Neben dem positiven Sicherheitsaspekt erleichtert das Setup auch Firewall- oder Router-Konfigurationen.

Abbildung 9: Der Verbindungsaufbau von Teamviewer zeigt die Abhängigkeit vom zentralen Master der Firma. Neben dem positiven Sicherheitsaspekt erleichtert das Setup auch Firewall- oder Router-Konfigurationen.

Das Protokoll für die Darstellung der Desktops nutzt UDP und TCP, soll VNC ähneln, ist aber proprietär und öffentlich wenig dokumentiert. Die Kompression passt sich dynamisch an die Rahmenbedingungen an, für die Audio-Übertragung kommt Speex, für Videos der Theora-Codec zum Einsatz. Während der Sitzung speichern Caches auf beiden Seiten Elemente der Desktops, sodass Teamviewer auch bei Modemverbindungen mit nur 56 KBit/s noch von einer “akzeptablen Verbindung” spricht.

Teamviewer ist – der Zielgruppe entsprechend – vergleichsweise günstig [22]. Für die billigste Lizenz fallen einmalig etwa 600 Euro an (plus 120 Euro für jeden weiteren Arbeitsplatz). Wer drei gleichzeitige Sitzungen veranstalten will, muss mit etwa 2100 Euro rechnen, plus 700 Euro für jeden weiteren Kanal. Für so viel Geld gibt es dann aber die ganze Palette der Teamviewer-Software, inklusive Manager und Portable-Option.

In der jüngst erschienen Version 6.0 hat der Hersteller die Performance optimiert, das Benutzerinterface vereinfacht und für automatische Reconnects nach Reboots gesorgt. Neben 19 neuen Sprachversionen legt Teamviewer derzeit größtes Gewicht auf die Optimierung der Multimedia-Fähigkeiten und Audio-Video-Kommunikation. Die Software gibt es für Windows, Linux, mobile Geräte und Mac.

VMware View 4.5

Der Virtualisierungs-Marktführer hat mit VMware View ein eigenes, reichlich komplexes VDI-Produkt zu bieten. Aufbauend auf der V-Sphere mit dem Hypervisor ESX und dem Management-Tool V-Center ([10], Abbildung  10) verspricht der Hersteller Tausende von Desktops zentral zu virtualisieren und zu verwalten. Bei Letzterem hilft der View Manager (Abbildung 11), er ist für Provisioning, Updates und Patches zuständig.

Abbildung 10: Einen ganzen Stack bietet VMware mit der V-Sphere, dem V-Center und VMware View.

Abbildung 10: Einen ganzen Stack bietet VMware mit der V-Sphere, dem V-Center und VMware View.

Abbildung 11: Der Browser-basierte VMware View Manager im Einsatz.

Abbildung 11: Der Browser-basierte VMware View Manager im Einsatz.

Das Paket enthält außerdem mit Thin App und dem View Composer zwei Tools, die die Images verwalten und deren Platzbedarf optimieren. Windows-User freuen sich über die Endpoint-Security in Form von Antivirus- und Malware-Schutz, den Vshield mitbringt. Auf der Webseite [23] gibt VMware Interessierten detaillierte Informationen, von [24] lässt sich nach der obligatorischen Registrierung ein 60-Tage-Testpaket herunterladen.

VMware View ging aus VMware VDI hervor und läuft auf der gleichen Infrastruktur wie V-Sphere. Das heißt, der Admin konfiguriert es mit V-Center unter Windows und dem View Manager im Browser. Auf die virtuellen Desktops greifen die User per View Client über das PCoIP-Protokoll (PC over IP, [25]) zu. Für Linux gibt es einen offenen Client [26] oder den Zugriff auf die Instanzen mit VNC, RDP oder NX.

Das proprietäre Protokoll hat sich auch bei Hardwareherstellern wie Dell, Samsung oder IBM als Standard etabliert. Ursprünglich von Teradici [27] entwickelt, findet sich eine reiche Palette an Endgeräten und PCI(e)-Devices, die ohne Konfiguration als Zero-Client arbeiten, zum Beispiel in LCD-Monitoren, die mit einem Chip zu Thin Clients werden. Weil PCoIP Komprimierung und Verschlüsselung einsetzt, soll das auch über schmale Bandbreiten funktionieren – oder aber in HD-Qualität und mit voller Unterstützung für USB-Geräte.

Die Lizenzkosten für VMware View fangen mit dem Enterprise Starter Kit (besteht aus V-Sphere, View und View Manager) bei knapp 1500 Euro an. Dafür gibt’s zwar nur zehn Lizenzen, aber immerhin schon drei Jahre lang 24/7-Support. In den meisten Fällen müssen Admins jedoch tiefer in die Tasche greifen und ein Premier-Kit für etwa 2500 Euro anschaffen. Das hat neben dem Composer, Thin App und anderen Erweiterungen auch den Local Mode an Bord, der virtuelle Instanzen auch offline, zum Beispiel auf Laptops betreibt. Eine komplette V-Sphere-Landschaft mit mehreren Servern kostet dank der geschickten Preispolitik des Herstellers schnell einen fünf- oder sechsstelligen Betrag.

Citrix Xen Desktop

Dass Citrix nicht viel von PCoIP hält, belegen zwei Zitate führender Manager [25]. Vor allem die Performance spräche für die Citrix-Eigenentwicklung HDX [28], meint der für Desktop-Produkte zuständige CTO Harry Labana und spricht von einer “Dimension” weniger Bandbreite. Citrix will sich ganz offensichtlich gegen VMware positionieren und seine jüngsten Errungenschaften promoten.

Der Klassiker unter den Highend-Terminalservern, der Citrix Presentation Server, erlaubte es, einzelne Anwendungen seamless zu exportieren oder einen hochverfügbaren Cluster aufzubauen. Dazu gab es – lange als Alleinstellungsmerkmal – ein übersichtliches GUI für den Admin, mit dem er jedem User Kontexte und Anwendungen freigeben oder verbieten konnte. Linuxer hatten von all dem wenig: ICA und Citrix-Produkte blieben immer eng mit Microsoft verwoben, auch wenn der Hersteller schon früh stabile Linux-, Unix-, OS-X-Clients und sogar einen Server für HP-UX anbot.

Mit dem Kauf von Xensource kam der Sinneswandel. Citrix betrat den Markt der Virtualisierungsserver und versprach eine leistungsfähige Umgebung um die Xen-Architektur zu bauen. Der Xen Desktop [29] setzt auf dem Xen Server auf, gilt als direkter Konkurrent von VMware View und liegt bereits in Version 5 vor. Wer will, kann damit seine virtuellen Desktops aber auch in einer V-Sphere oder auf echten Blades hosten. Die Features gleichen denen des Marktführers, wobei Citrix in Technik und Marketing ganz bewusst die Multimedia-Fähigkeiten in den Vordergrund stellt.

Xen Server und Apps

Der Xen Server (Abbildung 12 und 13) ist eine Centos-Maschine mit Xen-Hypervisor, die der Admin von einer Windows-Anwendung aus administriert, und ist in einer abgespeckten Version frei erhältlich. Xen Apps [30] als Nachfolger des Presentation Server dagegen bohrt nur die RDP-Dienste von Microsoft Windows 2008 Server auf und erlaubt Admins, einzelne Applikationen auszuwählen ohne den ganzen Desktop zu exportieren.

Abbildung 12: Citrix Xen Desktop erweitert den Xen Server mit VDI-Managementfunktionen und stellt mit HDX beschleunigte Multimediafunktionen bereit. Alternativ arbeitet es mit ESX, Hyper-V oder Blades.

Abbildung 12: Citrix Xen Desktop erweitert den Xen Server mit VDI-Managementfunktionen und stellt mit HDX beschleunigte Multimediafunktionen bereit. Alternativ arbeitet es mit ESX, Hyper-V oder Blades.

Abbildung 13: Auf einem Centos-Linux werkelt ein Xen-Hypervisor, der virtuelle Windows-Maschinen per ICA und HDX bereitstellt.

Abbildung 13: Auf einem Centos-Linux werkelt ein Xen-Hypervisor, der virtuelle Windows-Maschinen per ICA und HDX bereitstellt.

Das neueste Kind von Citrix ist das HDX-Protokoll, das fest in den Xen Desktop integriert ist. Mit tiefschürfenden Details dazu hält sich der Hersteller leider bedeckt, in den PDFs, Whitepapers oder im Knowledge Center auf der Webseite findet sich wenig technisch Anspruchsvolles über die Funktionsweise des Protokolls. Die Vorteile reichen von Multimediabeschleunigung bis zum Bandbreitenmanagement.

HDX kann zahlreiche Codecs von Divx bis AC3 zur automatischen Video- oder bidirektionalen Audio-Kompression verwenden. Neben bewegten Bildern und Ton stehen auch 3-D, Plug&Play für USB-Geräte und Monitore, intelligentes Caching, diverse Methoden der Bandbreiten-abhängigen Traffic-Optimierung, aber auch Desktopclients für Smartphones auf der Featureliste.

Die Xen-Familie besteht aus einem ganzen Bundle an Tools: Desktop Studio passt die Desktops an, Director sorgt fürs Shadowing im Helpdesk. Xen Client kann in der Developer-Version schon Ubuntu-Images provisionieren, auch offline. Unter Linux fehlt noch ein HDX-Agent (Virtual Desktop Agent), daher profitieren nur exportierte Windows-Desktops von der Beschleunigung.

Die Technologie hat ihren Preis, auch wenn es einen Linux-Client gibt [31], das gesamte Paket ist doch für Windows-Anwender ausgelegt. Ab 100 Euro pro Gerät, Client und User geht es los, für gleichzeitige Verbindungen verlangt Citrix 200 Euro, alles ohne Xen Server. Der fürs Management benötigte Windows-Server schlägt extra zu Buche.

RHEV Desktop

Ähnlich wie VMware und Citrix setzt auch Red Hats Enterprise Virtualization for Desktops [32] auf die Kombination aus Hypervisor, Management und einem komplexen Protokoll (Spice, Simple Protocol for Independent Computing Environments, [33]) für die Übertragung der Desktopsessions und die Optimierung des Traffic (Abbildung 14). Auch wenn den roten Hüten peinlicherweise immer noch ein Management-GUI für Linux fehlt [6], entwickeln sie die Features ihrer Virtualisierungsplattform ständig weiter. So soll mittlerweile die Live-Migration inklusive aller Zustände (States) des laufenden Desktops gelingen.

Abbildung 14: KVM-Hypervisor, Spice-Protokoll und Red Hats Enterprise-Virtualisierung ergeben zusammen RHEV-D.

Abbildung 14: KVM-Hypervisor, Spice-Protokoll und Red Hats Enterprise-Virtualisierung ergeben zusammen RHEV-D.

Eine zentrale Rolle für den Zugriff auf mit KVM/Qemu virtualisierte Instanzen spielt die Libspice mit dem Spice-Protokoll. Das steht als Open-Source-Projekt in Version 0.7 seit Dezember 2010 zur Verfügung und ist fast schon vorbildlich dokumentiert.

Laut Hersteller ist Spice das “erste vollständig als Open Source implementierte Protokoll fürs Rendering virtueller, entfernter Desktop Sessions”. Spice kombiniert diverse Technologien, die in ähnlicher Form auch bei anderen in diesem Artikel vorgestellten Produkten vorkommen: Für 2-D-vektorisierte Primitiven setzt Spice auf Cairo, 3-D setzt es unter Windows über das GDI (Microsoft Windows Graphics Device Interface) um, unter Linux mit Open GL.

Wer es antestet, merkt jedoch schnell, dass die Windows-Variante deutlich besser arbeitet als ihr Linux-Pendant (Abbildung 15). Letzteres hat eben einen großen Haken: Open GL ist Hardware-abhängig und bereitet Probleme. Ohne Hardwarebeschleunigung geht’s aber auch nicht, denn Aufgaben wie das Strecken von Videos auf die volle Bildschirmgröße erledigt am Besten der Client mit Hilfe der eingebauten GPU. Je mehr Aufgaben die Grafikkarte übernimmt, desto angenehmer und fließender erscheint die Benutzung für den Anwender, weil die lokale CPU (wie auch die CPU des Servers) Ressourcen frei hat.

Abbildung 15: Die Anmeldung mit Spice an einem Red-Hat-Virtualisierungscluster funktioniert unter Windows besser als unter Linux.

Abbildung 15: Die Anmeldung mit Spice an einem Red-Hat-Virtualisierungscluster funktioniert unter Windows besser als unter Linux.

Als Zwischenschicht verwendet Red Hat eine eigene virtuelle Grafik-Engine namens QXL. Seit wenigen Tagen gibt es auch Treiber für X11 [34], Qemu/KVM unterstützt es schon länger. Wie ein Anwender den Spice-Server und einen der vielen Clients mit einem KVM-Server in Betrieb nimmt, zeigen User Guide und Einsteigermanual auf [33].

Spice beinhaltet verschiedene Bildkompressions-Mechanismen, die alle schon bei der Initialisierung des Servers oder auch erst zur Laufzeit auswählbar sind. Quic ist die Spice-eigene, proprietäre Variante, sie setzt auf dem SFALIC-Algorithmus auf (Simple Fast and Adaptive Lossless Image Compression, [35]). Der Lempel-Ziv-Storer-Szymanski-Algorithmus (LZSS, [36]) steht als lokal komprimierende Option parat. Ebenfalls enthalten ist der proprietäre Global-LZ-Algorithmus (GLZ), der ein globales Musterverzeichnis (Dictionary of Patterns) zur optimalen Komprimierung verwendet. Alternativ gibt’s einen Automatikmodus, der LZ/GLZ und Quic passend zum jeweiligen Bild kombiniert. Ersterer erweist sich meist besser bei Grafiken, letzterer bei Fotos.

Bilder komprimiert Spice verlustfrei, Videos dagegegen überträgt es verlustbehaftet (lossy), aber dafür mit Rücksicht auf die Performance. Dabei erkennt der Server selbstständig Regionen in Applikationen, die Videos enthalten und sendet diese als Videostreams mit hoher Updaterate und mit dem Mjpeg-Algorithmus komprimiert an den Client (Abbildung 16). Zu all dem kommen intelligentes Caching für Pixmaps, Paletten und Images. Spezielle IDs (Cache Hints) verhindern doppelte Übertragungen.

Abbildung 16: Youtube-Videos und Skype-Audio auf einem virtuellen Windows via Spice. Das Betriebssystem arbeitet auf einem Red-Hat-Virtualisierungscluster, den RHEL und RHEV antreiben.

Abbildung 16: Youtube-Videos und Skype-Audio auf einem virtuellen Windows via Spice. Das Betriebssystem arbeitet auf einem Red-Hat-Virtualisierungscluster, den RHEL und RHEV antreiben.

Wer die Enterprise-Virtualisierung mit Red Hat einsetzen will, muss tief in die Tasche greifen: Schon das Einsteigerpaket kostet 3000 Euro pro Jahr, auch hier ist noch eine Windows-Lizenz fürs Management erforderlich.

Frei oder Enterprise-ready?

Wer einen Server aufbauen will, der die Desktops seiner Clients virtualisiert, hat derzeit die Qual der Wahl. Das völlig freie Projekt X2go bringt viele Features und glänzt mit hoher Performance. Schade nur, dass gerade die Enterprise-Funktionen noch nicht fertig sind, denn damit hätte das Projekt viel Potenzial. Das verspielt Nomachine vielleicht gerade mit der Absicht, den Open-Source-Pfad zu verlassen. Das ist schade, aber die guten Highend-Produkte des Advanced Servers waren auch bisher nicht frei und nur gegen teures Geld zu erwerben.

Vielleicht zeigt Red Hat besser, wie eine ausgewogene Open-Source-Strategie aussieht. Mit dem offenen Spice-Protokoll haben die Entwickler aus Raleigh wohl den richtigen Weg eingeschlagen, auch wenn es unglaublich peinlich wirkt, dass es für RHEV nach mehreren Jahren Entwicklung immer noch kein funktionierendes Linux-Admin-GUI gibt.

Mit freier Software wenig am Hut haben Citrix und VMware, aber auch sie haben die Bedeutung von Linux in der Cloud erkannt und bieten Clients und Templates für virtuellen Images an. Wie bei Red Hat gilt auch hier: Vollständiges Management gibt es nur für Windows.

Teamviewer dagegen positioniert sich als reine Remote-Wartungssoftware, die sich auch für die Desktop-Virtualisierung einsetzen lässt. Dabei gefällt vor allem der pfiffige Verbindungsaufbau, der den Zugriff auch auf Rechner erlaubt, die sonst nur per VPN erreichbar wären.

Beim großen Trend Multimedia liegen die proprietären Hersteller vorne. Red Hat, Citrix und Teamviewer haben eigene Erweiterungen und Algorithmen entwickelt, die die Darstellung und Übertragung von Audio- und Videodaten beschleunigen. So soll auch der Heimarbeiter mit DSL wenig davon merken, dass das Youtube-Video gar nicht lokal läuft. Da kann X2go noch nicht mithalten, Nomachines NX ist zwar besser, aber auch nicht auf dem Niveau der Konkurrenz.

Vor- und Nachteile des Server-based Computing

+ Clients für viele Plattformen verfügbar, Unabhängigkeit von Desktop-Environments, Clienthardware und installiertem Betriebssystem

+ Zentrale Administration, Arbeit mit vorgefertigten Images (Provisioning) möglich

+ Geringe Hardware-Anforderungen (Client)

– Hohe Hardware-Anforderungen (Server)

– Multimediabeschleunigung und lokale Geräte funktionieren noch nicht perfekt mit Linux-Clients

– Enterprise-Features nur bei teuren Highend-Versionen erhältlich

– Offline-Fähigkeiten nur bei teuren Produkten über Desktop-Provisioning.

Infos

  1. Markus Feilner, “Doping fürs X”: Linux-Magazin 10/07, S. 34
  2. Daniel Kottmair, “Windows, Mac und Linux fernsteuern”: Easy Linux 01/11, S. 56
  3. Bastian Kames, “Reif für die Insel”: Linux-Magazin 07/09, S. 79
  4. Markus Feilner, “Neu im Haus”: Linux-Magazin 03/09, S. 42
  5. Thomas Drilling, “Von wegen tugendhaft”: Linux-Magazin 06/10, S. 82
  6. Achim Fehrenbach, “Streaming und 3D sind die Zukunft der Games”: http://www.zeit.de/digital/games/2011-01/ces-games
  7. Microsofts RDP: http://msdn.microsoft.com/en-us/library/aa383015.aspx
  8. Citrix ICA: http://en.wikipedia.org/wiki/Independent_Computing_Architecture
  9. Xen und Xensource: http://www.xen.org
  10. Charly Kühnast, Marcel Schynowski, Markus Feilner, Norbert Graf, “Wählerischer Platzhirsch”: Linux Magazin 08/10, S. 70
  11. Markus Feilner, Michael Kromer, “Alternatives Türregime”: Linux-Magazin 08/10, S. 74
  12. Nomachine 4 wird Closed Source: http://www.nomachine.com/news-read.php?idnews=331
  13. Download NX 4 Beta 2: http://www.nomachine.com/download.php
  14. Stefan Völkel, “NX Builder und Manager”: Linux Technical Review 05/07, S. 36
  15. Markus Feilner, Heinz-Markus Graesing, “Sun-Blocker”: Linux-Magazin 12/08, S. 56
  16. Michael Kromer, “Zugriff nach Bedarf”: Linux-Magazin 10/10, S. 72
  17. X2go-Windows-Client: http://x2go.obviously-nice.de/deb/windows/
  18. X2go-Desktop-Sharing: http://x2go.obviously-nice.de/deb/pool-heuler/x2godesktopsharing/
  19. X2go-Plasmoid: http://x2go.obviously-nice.de/deb/pool-heuler/x2goplasmoid/
  20. X2go-Python-GUI: https://svn.das-netzwerkteam.de/x2go/pyhoca-gui/trunk/
  21. X2go-Git-Repository: http://wiki.x2go.org/berliosgit
  22. Teamviewer Lizenzen und Preise: http://www.teamviewer.com/de/licensing/index.aspx
  23. VMware View: http://www.vmware.com/products/view
  24. VMware View testen: https://www.vmware.com/tryvmware/?p=view45&lp=1
  25. PC over IP: http://en.wikipedia.org/wiki/PCoIP
  26. VMware View Open Client: http://code.google.com/p/vmware-view-open-clienthttp://www.vmware.com/de/company/news/releases/view_open_client.html
  27. Teradici: http://www.teradici.com
  28. Citrix HDX: http://hdx.citrix.com
  29. Xen Desktop: http://www.citrix.de/produkte/xendesktop
  30. Xen Apps: http://www.citrix.de/produkte/xenapp
  31. Citrix Linux Clients: http://www.citrix.com/English/SS/downloads/details.asp?downloadID=3323
  32. Red Hat Enterprise Virtualization for Desktops: http://www.redhat.com/virtualization/rhev/desktop
  33. Spice: http://www.redhat.com/virtualization/rhev/desktop/spice,http://www.spicespace.org
  34. X11-Treiber für QXL: http://lists.freedesktop.org/archives/xorg-announce/2010-January/001235.html
  35. SFALIC: http://sun.aei.polsl.pl/~rstaros/sfalic/index.html
  36. LZSS: http://michael.dipperstein.com/lzss/
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben