In letzter Zeit habe ich an verschiedenen Stellen den Citrix Universal Print Server Code Name "Phaser" erwähnt und einige Citrix Mitarbeiter machen sich schon ein Spaß daraus, dass ich seit 2009 es immer wieder zu Thema mache. Warum 2009? Nun auf dem Citrix iForum Las Vegas 2009 hat Citrix Entwickler Gary mir die ersten "Bits" (wirklich nur ein paar Exe) von Projekt Phaser gezeigt. Seit dieser Zeit sage ich Citrix bei jeder Gelegenheit, sie sollen es doch endlich fertig stellen. Jetzt ist es so weit, nach drei Jahren!

Citrix Universal Print Driver (UPD) 

Jedem sollte der Citrix Universal Printer Driver (UPD) ein Begriff sein. Der Citrix UPD basiert auf Microsoft Windows Enhanced MetaFile (EMF) Technologie die Citrix massiv erweitert hat. Das Schlüsselwort "Windows" sollte verdeutlichen das EMF nur auf Windows Plattformen unterstützt wird.

Citrix verwendet den EMF für die automatische Client Drucker Erstellung und sollte die erste Wahl mit Windows Clients sein. Der Grund dafür ist, dass mit dem universellen Druckertreiber von Citrix kein nativer oder ein Druckertreiber von einem Hersteller auf den XenApp Server installiert werden muss. Tatsächlich wird der Clientseitig installierte Druckertreiber durch die Clientseitige EMF Komponente des ICA Clients verwendet. Der Vorteil dadurch ist, dass alle Funktionen des lokalen Druckertreibers genutzt werden können anstatt nur einen Bruchteil der Möglichkeiten wie mit dem Citrix universellen Druckertreiber (Citrix UPD 2) basierend auf einem Farblaserdrucker. Citrix hat die Architektur seit Einführung stark verbessert und ein "Printing Optimization Pack" (Projekt Laser) für XenApp 6.0 und höher veröffentlicht. Mit den neuen Citrix Richtlinien des Optimization Pack kann selbst das Drucken über WAN-Strecken stark beschleunigt werden und daher ist es auch Teil meiner Zehn Druckregeln mit Citrix und RDS.

Netzwerkdrucker und Druckserver

Neben Client Drucker nutzen die meisten Unternehmen auch Netzwerkdrucker die durch einen Druckserver verwaltet werden. Wofür einen Druckserver? Mit Windows Server 2000 hat Microsoft die Point-to-Print (P2P) Technologie eingeführt und macht das Verbinden von Netzwerkdruckern zur Leichtigkeit für Benutzer. P2P sendet automatisch den Druckertreiber zum Client, installiert den Treiber und erstellt das Druckerobjekt ohne Benutzer Eingriff. Der gleiche Prozess findet allerdings auch auf einem XenApp Server statt, wenn ein Netzwerkdrucker für einen Benutzer verbunden wird. Bis jetzt bietet Citrix lediglich Citrix Richtlinien wer welchen Netzwerkdrucker bekommen soll aber das eigentliche Verbinden passiert über Point-to-Print. Dies kann aber genauso über ein Anmeldeskripts oder Microsoft Gruppenrichtlinien gemacht werden.

Das Problem dabei ist, dass der Druckserver oft nicht vom XenApp Team verwaltet wird. Sollten nun die Druckertreiber auf dem Druckserver nicht mindestens mit Citrix StressPrinters getestet sein, dann können automatisch "schlechte" Druckertreiber auf den XenApp Server kommen. Diese Treiber können dann einen negativen Effekt auf den XenApp Server- oder der gesamten Farm haben. Ein "schlechter" Druckertreiber kann dabei folgendes verursachen: Blue Screen of Death (BSOD) – Server Absturz/Hänger, Druckerdienst Absturz/Hänger, Keine- oder sehr langesame Anmeldung und dies selbst mit Windows Server 2008 R2 SP1.

Was ist der Citrix Universal Print Server (UPS)?

Der Universal Print Server hilft mit dem P2P-Dilemma und bringt die EMF Technologie zum Druckserver als Client! Das bedeutet wieder, dass keine nativen- oder Druckertreiber von Herstellern auf den XenApp Server für Netzwerkdrucker installiert werden müssen. In sehr vielen Umgebungen sollte dies die Anzahl von Druckertreibern auf XenApp Server massiv verringern! Wird ausschließlich der Citrix EMF verwendet, dann stabilisiert dies die XenApp Farm und hilft zudem mit dem Benutzeranmeldungen. Das ist etwas worauf Kunden lange gewartet haben und der Grund warum ich ständig Citrix (Gary) damit getrieben habe.

Die Architektur des Universal Print Server (UPS)

Halten wir es einfach und betrachten den Kern der UPS Architektur. Nehmen Sie sich Zeit und sehen Sie sich das folgende Bild genauer an.

UPS Architektur 

 
Auf der rechten Seite ist der Microsoft Druckserver und auf der linken der Windows Client was auch XenApp oder eine XenDesktop VM usw. sein könnte. Momentan wird nur Windows Server 2008 x86 mit dem UPS als Druckserver unterstützt aber eine 64Bit Version ist in Planung. Nur Citrix XenApp 6.5 und -XenDesktop 5.5 sind mit der Community Technology Preview des UPS unterstützt.

Wie aus der Grafik ersichtlich kommuniziert der Client über einen Web-Dienst der auf dem Druckserver installiert ist. Das Simple Object Access Protocol (SOAP) wird für das Auflisten von Druckern etc. verwendet und das Citrix Common Gateway Protocol (CGP) transportiert nur die eigentlichen Druckdaten. CGP ist "alt" und wird bereits lange verwendet für die Sitzungszuverlässlichkeit (XTE-Dienst) und auch das Secure Gateway nutzt CGP.

Beide Protokolle (SOAP, CGP) können verschlüsselt (SSL) und beschleunigt- und oder mit dem Citrix Branche Repeater optimiert werden auch wenn EMF selbst schon im CGP stark optimiert ist. (Branche Repeater Zwischenspeicher ist deutlich größer und für alle Benutzer)

Deployment der UPS Infrastruktur

Die Installation ist einfach und wenig zu Konfigurieren. Die Installation der Komponente für den Druckserver fügt zwei Windows Dienste hinzu (UPS und CGP). Mit XenApp 6.5 oder XenDesktop 5.5 werden die Citrix Richtlinien- (UPS Konfiguration) und der Citrix Druckerdienst (cpsvc.exe) aktualisiert damit dieser erkennen kann, dass es einen UPS Netzwerk Drucker gibt und entsprechend verbindet.
Nach der Installation wird in der Citrix Richtlinie der UPS aktiviert mit der Option, eines Fallback nicht den UPS zu verwenden (falls nicht installiert). Hier Microsoft Gruppenrichtlinie zur Einschränkung von P2P verwenden und dort nur UPS aktivierte Server erlauben.

UPS Richtlinien

 

Projekt Taser oder UPS Version 2.0

Citrix arbeitet bereits an der Erweiterung des Universal Print Server für die Folgeversion. Hier zwei der wichtigsten Funktionen:

1. Aktivierung von SSL für CGP und SOAP über eine Konsole
2. Erweitere Ermittlung von Druckertreiber Funktionen und diese für den UPS Client verfügbar machen. 

Der zweite Punkt ist ein Unterschied zu dem was Sie evtl. vom UPD (EMF) kennen. Wenn Drucker über EMF verbunden werden, dann hat der Benutzer die Möglichkeit alle vorhandenen Optionen des lokalen Druckertreibers zu nutzen. Dies wird über einen ICA Kanal auf der Client-Seite "angestoßen". Natürlich ist dies mit dem Druckserver nicht möglich. Daher gibt es mit UPS 1.0 nur die Basis Funktionen des Druckertreibers und ist genau was mit der Version 2.0 erweitert wird!

Zusammenfassung

Endlich! Was soll ich sonst noch sagen? Citrix liefert den UPS und minimiert dadurch die Anzahl an Druckertreibern auf XenApp Server und damit auch die Kopfschmerzen einiger Administratoren. Das gleiche gilt für provisionierte XenApp Server oder ge-poolte XenDesktop VM’s die installierte Druckertreiber vor dem produktivsetzen benötigen.


Ich hoffe Citrix wird mit der finalen UPS Version XenApp 6.0 unterstützen, da ich es nicht möchte UPS in einem nicht unterstützen Weg zu nutzen (Ja, es geht!). Citrix Aussage ist, dass es kaum mit XenApp 6.0 getestet wurde aber ich bin sicher wir alle würden erfreut sein Citrix dabei zu helfen. Universal Print Server 2.0 hört sich noch besser an aber da müssen wir noch länger drauf warten.


Kommentar schreiben