Server Based Computing unter Linux_V3

Transcription

Server Based Computing unter Linux_V3
Server Based Computing unter Linux
Michael Wirz . Consultant . 16.12.2008
Server Based Computing „back to the roots“. Wir schauen über den Tellerrand von Citrix und
Windows Terminal Server und erforschen die Möglichkeiten von Server Based Computing auf
den Betriebssystemen, wo es ursprünglich herkommt: Unix & Linux.
1.
Technik
1.1
SBC – Server Based Computing
Beim Server Based Computing (SBC) wird nicht direkt auf dem eigenen Computer gearbeitet. Statt
dessen wird das Programm auf einem Server gestartet und die grafische Ausgabe auf einem Client
dargestellt. Diese Technologie bietet verschiedene Vorteile: Unter anderem sind dadurch alle
Programme auf wenigen zentralen Servern konzentriert. Dadurch entfällt z.B. eine aufwändige
Softwareverteilung auf viele Clients. Statt dessen müssen nur einige wenige Server gewartet
werden. Die grafische Darstellung der Programme erfordert einen Bruchteil der Leistung, welche
notwendig wäre, um die Programme auf dem Client lokal zu betreiben. Hierdurch können auch
auf älterer Hardware aktuelle Programme mit höherer Hardwareanforderung benutzt werden.
Dank SBC kann der Aufwand für die Wartung von Client PCs verringert und die Einsatzdauer der
Client Hardware erhöht werden. Ebenso ist es möglich, sicherheitskritische Anwendungen wie
z.B. ein E-Mail Programm oder einen Webbrowser auf einen zentralen Server auszulagern und
dadurch besser zu kontrollieren. Ein E-Mail Programm, welches auf einem Linux Server betrieben
wird und über NX an einen Windows Client weitergereicht wird, ist weniger anfällig gegen die
heute bekannte Schadsoftware.
Im Bereich Server Based Computing gibt es diverse Anbieter. Zu den bekanntesten zählen Citrix
Metaframe, Windows Terminal Server von Microsoft sowie Tarantella von SUN. Mit NoMachine
von der gleichnamigen italienischen Firma rückt ein neuer Kandidat ins Rampenlicht. NoMachine
ist dafür gedacht, Linux- oder Sun Solaris-Programme auf unterschiedlichen Plattformen verfügbar
zu machen. So können sämtliche Linux-Programme beispielsweise auf einem Windows PC
benutzt werden.
NoMachine baut auf dem X Windows System (X11) für Linux und Unix auf. X11 ist eine ClientServer-basierte Lösung und besteht somit immer aus einem X-Server und einem X-Client
[email protected] . www.trivadis.com . Info-Tel. 0800 87 482 347 . Datum 16.12.2008. Seite 1 / 9
1.2
X11
Der X-Server ist der Teil der X-Software, welcher die Ausgabe auf den Bildschirm zeichnet und
die Eingaben wie Tastatur, Maus etc. entgegen nimmt. Im Gegensatz dazu ist der X-Client das
eigentliche Programm, welches ausgeführt wird, und die Ausgaben über das X-Protokoll an den
X-Server sendet. Hierbei spielt es keine Rolle, ob der jeweilige X-Server auf demselben Rechner
wie der X-Client betrieben wird, oder ob der X-Server auf einem entfernten Rechner läuft. X-Client
und X-Server kommunizieren immer über das X-Protokoll.
1. Abbildung
X11 Schema
2.
Abbildung
X11 Weiterleitung von Host A auf Host B
[email protected] . www.trivadis.com . Info-Tel. 0800 87 482 347 . Datum 16.12.2008. Seite 2 / 9
1.3
NX
NX von NoMachine verbessert die Geschwindigkeit bei der Übertragung des X-Window-Systems
unter Unix und Linux bei der Darstellung von graphischen Anwendungen über
Computernetzwerke. Gleichzeitig wird die Übertragung per SSH verschlüsselt übertragen.
Obwohl das X-Window-System in seiner aktuellen Protokollvariante X11 von Haus aus
netzwerkfähig ist, ist bei seinem Einsatz über Rechnergrenzen hinweg die oftmals geringe und
dem Anwender "zäh" vorkommende Performance bei Verbindungen über schmale Bandbreiten
mit hoher Latenzzeit (Modem, ISDN) zu beobachten. Dieses Problem versucht NX als eine Art
Aufsatz für X11 zu lösen. NX wird dabei als Proxy-System zwischen die X11-Partner geschaltet
(sowohl auf dem Clientrechner als auch auf dem Serverrechner läuft ein X11-Serverprogramm).
Des Weiteren ist der NX Server in der Lage, NX Sessions an VNC Server oder Windows
Terminalserver (per RDP) weiterzuleiten und diese nochmals zu komprimieren. Der NX Client
fragt also bei einem NX Server an, der dann die Verbindung zu einem weiteren Terminal Server
per VNC oder RDP aufbaut. Er wird also zwischengeschaltet [NX Client NX Server RDP/VNC Server], komprimiert den Datenfluss und beschleunigt auf diese Weise die Verbindung
erheblich.
3.
Abbildung
X11 Weiterleitung mit NoMachine Komprimierung
Durch diese Kompressionstechnik gelingt es NoMachine, die benötigte Bandbreite um ein
Vielfaches zu verkleinern. Dadurch wird die gesamte Arbeit viel angenehmer und flüssiger.
Durch den geringen Bedarf an Bandbreite ist es sogar möglich über eine ADSL oder UMTS
Verbindung von unterwegs aus zu arbeiten, als sei man direkt im lokalen LAN.
Mittels NoMachine können die Programme von SUN Solaris und Linux auf anderen Plattformen
verfügbar gemacht werden. Die Clientsoftware gibt es nämlich für die gängigsten Plattformen
(Windows, Linux, Solaris, MacOSX). Ausser der Client-Installation wird keine weitere
Zusatzsoftware benötigt Eine Ausnahme bildet MacOS X; hier muss der X11 Server installiert
sein.
[email protected] . www.trivadis.com . Info-Tel. 0800 87 482 347 . Datum 16.12.2008. Seite 3 / 9
2.
NX Produkte
Die Produkte von NoMachine sind nicht nur für den Einsatz als Terminalserver geeignet. Auch für
den einfachen grafischen administrativen Zugriff auf einen Linux oder Unix Server, um z.B. eine
Oracle Installation durchzuführen, können die Produkte eingesetzt werden. NoMachine bietet
daher auch unterschiedliche Abstufungen ihrer Software an. Für den einfachen Zugriff auf einen
Server oder einen Client mit nicht mehr als zwei parallelen Sessions gibt es die kostenlose NX
Free Edition an. Daneben gibt es für einfache Desktop-Fernzugriffe die NX Enterprise Desktop
Variante.
Für den SBC Einsatz kommen die NX Serverprodukte zum Tragen. Hier gibt es Small Business-,
Enterprise- und Advanced-Server. Für grössere Umgebungen sind vor allem die beiden Server
Enterprise und Advanced interessant, da diese nur pro Server nicht aber pro Benutzter lizenziert
werden. Gerade bei grösseren Umgebungen lassen sich so enorm Lizenzkosten sparen gegenüber
den Konkurrenten.
Die Server Varianten unterscheiden sich vor allem bei den Features. So bieten nur der Enterprise
und der Advanced Server Unterstützung für eine Anbindung an einen Microsoft Active Directory
Service. Auch vorkonfigurierbare Benutzer-Profile gibt es nur bei diesen Varianten. Wenn man
eine hochverfügbare Lösung bauen möchte, kommt man um den NX Advanced Server nicht
herum, da nur dieser wichtige HA-Features wie Load-Balancing oder eine Unterstützung für
Multi-Node bietet.
Die Featureliste auf der NoMachine Webseite sollte jedoch skeptisch betrachtet werden (LINK)
Viele Features, die von NoMachine Angeboten werden, entpuppen sich bei genauerer
Betrachtung als Features des jeweiligen Betriebssystems.
So ist die Anbindung an ein Active Directory bei genauerer Betrachtung nichts weiter, als die
normale Anbindung, die unter Linux so oder so funktioniert. Ebenso verhält es sich mit dem
Feature, dass man NoMachine auch als RDP oder VNC Proxy verwenden kann. Hier wird
letztlich nichts weiter getan, als rdesktop für rdp oder Vncviewer für VNC über eine NX-Session
aufzurufen und dann den Output weiter zu leiten.
Nichtsdestoweniger sollte man natürlich beachten, dass die Features nur in diesen Versionen von
NoMachine auch über die Support Verträge abgedeckt sind!
[email protected] . www.trivadis.com . Info-Tel. 0800 87 482 347 . Datum 16.12.2008. Seite 4 / 9
2.1
NX im Einsatz
4. Abbildung
In Abbildung 4 sind die Einsatzmöglichkeiten von NX schematisch aufgezeigt. Der NX Server
kann entweder selbständig Linux Programme weiterleiten, oder diese von einem weiter Server
beziehen, ebenso können Programme von einem Windows Server mittels RDP Protokoll oder
von einem X-beliebigen Server mittels VNC Protokoll weitergeleitet werden.
Durch diese Weiterleitungsfunktion, kann der NX Server als zentraler Einstiegspunkt in das
komplette Firmennetzwerk genutzt werden. Anstelle, dass man alle Windows- VNC- und Linux
Systeme kennen muss, reicht es aus, nur einen NX Server als Einstiegspunkt zu kennen, welcher
dann die Weiterleitung übernimmt. Zudem wird client-seitig nur der NX Client und keine weitere
Software wie RDP-Client oder VNC-Client benötigt!
[email protected] . www.trivadis.com . Info-Tel. 0800 87 482 347 . Datum 16.12.2008. Seite 5 / 9
5. Abbildung NX Cluster
Bei Abbildung 5 handelt es sich um eine produktive HA-Umgebung mit NX.
Mars & Jupiter
Sind NX Server. Diese sind als NX Advanced Server lizenziert und dienen sowohl dem
Management- als auch gleichzeitig als Applikationsserver.
Europa, Ganymed & Kallisto
Sind Applikations-Nodes:
Diese Rechner haben keine zusätzliche Verwaltungslogik und dienen als reine
Applikationsserver.
Welcher dieser Nodes verwendet wird, entscheidet der NX Server anhand einer Abfrage auf alle
Nodes wobei geprüft wird, welcher am wenigsten unter Last steht.
Sämtliche Nodes sind an einem zentralen Storage angebunden. In diesem Beispiel über NFS.
Darüber werden sowohl die Home-Directories der Benutzer geladen als auch die Software,
welche auf diesem Node angeboten wird. Dadurch muss die Software nicht immer auf allen
Server abgeglichen werden. Hierzu wäre auch ein SAN Anbindung mit einem Cluster Filesystem
wie z.B. OCFS2 denkbar.
Ein Client, welcher sich auf das NX Cluster einwählt, kann entweder nur eine spezifische
Anwendung wie einen Mailclient oder einen Browser öffnen, oder aber den kompletten KDE oder
GNOME Desktop vom Server beziehen.
[email protected] . www.trivadis.com . Info-Tel. 0800 87 482 347 . Datum 16.12.2008. Seite 6 / 9
3.
Verwaltung von NoMachine
3.1
NX Builder
Eine Lösung, die für alle NX-Produkte funktioniert, ist der NX Builder. Dies ist eine
Webanwendung auf Basis von PHP, auf der man die Einstellungen für den Client speichern kann.
Durch einfaches Anwählen des jeweiligen Links, kann sich der Benutzer die entsprechende
Konfiguration direkt herunterladen und damit einen NX Client starten, ohne den Client
konfigurieren zu müssen.
Die Webseite ist so aufgebaut, dass auch benutzerspezifisch unterschiedliche Programme oder
Server angezeigt werden können.
NX Builder ist kompatibel zu NX von NoMachine und zum freien Derivat FreeNX.
[email protected] . www.trivadis.com . Info-Tel. 0800 87 482 347 . Datum 16.12.2008. Seite 7 / 9
3.2 NX Manager
Zur Verwaltung der beiden Server Enterprise und Advanced gibt es den NX Manager. Mit dessen
Hilfe kann der ganze Server sehr feingradig konfiguriert werden. Alle Einstellungen, welche
ansonsten nur über die Konfigurationsdateien verfügbar sind, können hier ebenfalls eingestellt
werden. Zusätzlich hat man hier die Möglichkeit, die Sessions zu überwachen und ggf. zu
beenden. Auch die Benutzerverwaltung kann hier geregelt werden.
Der NX Manager bietet alle Optionen, um zentral mehrere NX-Server verwalten zu können. Dies
bezieht sich jedoch nur auf den NX Server selbst. Der zugrunde liegende Physikalische Server mit
dem Betriebssystem kann nicht überwacht oder verwaltet werden. Es wäre zum Beispiel
wünschenswert, über dieses Interface auch direkt Software auf alle Server verteilen zu können.
Bei einer Multi-Node-Umgebung ist der Administrator daher immer noch selbst dafür
verantwortlich, dass die Systeme gleich aufgesetzt sind und dass neue Software auf allen
Systemen verfügbar ist.
[email protected] . www.trivadis.com . Info-Tel. 0800 87 482 347 . Datum 16.12.2008. Seite 8 / 9
3.3 NX Web Companion
Das Tool NX Web Companion dient dazu, eine Applikation über einen Webbrowser zur
Verfügung zu stellen. Hierzu wird jedoch kein lokaler Client benötigt, sondern Web Companion
liefert den Client als Java-Applet welches im Browser läuft.
4.
Fazit
Das angestrebte Ziel von NX, zu einem echten Konkurrenten von Citrix oder Microsoft Terminal
Server zu werden, hat NoMachine aktuell noch verfehlt. Zwar funktioniert die reine grafische
Weiterleitung wunderbar und sehr schnell, die ganze Verwaltung von Peripheriegeräten, DateiDrucker- und Audioweiterleitungen muss aber noch stark verbessert werden. Zu wenig
funktioniert einfach „Out of the box“.
Seine Stärken zeigt das Produkt aber, in einer gemischten Umgebung, wo nur vereinzelt Linux
Produkte eingesetzt werden. So kann NoMachine z.B. genutzt werden, um eine sanfte Migration
durchzuführen, oder aber einzelne sehr sicherheitsrelevante Applikation von einem geschützten
und überwachten Server zur Verfügung zu stellen.
Die Fähigkeit, als Proxy zwischen den Welten zu dienen, prädestiniert NoMachine zudem als
zentralen Einstiegspunkt in ein Firmennetzwerk, um von dort ohne Zusatzsoftware auf dem Client
alle weiteren Server anzusprechen. Sicherheitstechnisch ist NoMachine hier mit der
Verschlüsselung von SSH auf der Höhe der Zeit.
Michael Wirz
Trivadis AG
Papiermühlestrasse 73
3014 Bern
Internet: www.trivadis.com
Tel:
Fax:
Mail:
+41-31 928 09 60
+41-31 928 09 64
[email protected]
Literatur und Links…
www.trivadis.com
www.nomachine.com
www.pro-linux.de
www.wikipedia.com
[email protected] . www.trivadis.com . Info-Tel. 0800 87 482 347 . Datum 16.12.2008. Seite 9 / 9