Citrix XenApp auf AWS GPU G2 EC2-Instanzen

Im Rahmen eines Projektes haben wir eine Citrix XenApp Cluster-Installation auf AWS GPU Instanzen (G2) durchgeführt, damit der Kunde 3D-Programme entsprechend Grafik-beschleunigt nutzen kann.

Natürlich musste dabei auch der ein oder andere Stolperstein beseitigt werden … siehe hierzu auch Citrix Netscaler auf AWS …

Hier die einzelnen Schritte, um XenApp auf EC2 G2 GPU-Worker-Instanzen bereitzustellen …

  • Windows 2016 / 2012 Server AMI mit GPU NVIDIA Grafikadapter K520 aus AWS Marketplace launchen (https://aws.amazon.com/marketplace/pp/B00SK9DXLG)
  • Grafiktreiber Version kontrollieren: Nur Treiberversionen bis Releasestand 335.35-grid-desktop-win8-win7-winserv2008r2-winserv2012-64bit unterstützen den XA/XD Zugriffsmodus unter Citrix. Der vorinstallierte Treiber ist im Default aktueller und MUSS für Citrix XenApp ausgetauscht werden.
  • Downgrade des vorhandenen Treibers:
  • Installation des Treibers:
    • Der Austausch des vorhandenen Treibers kann über das Treiberpaket selbst erfolgen. Alternativ kann der Treiber über den Device Manager, Treiberversion, Update erfolgen
    • Nach der Installation ist ein Reboot des Server notwendig.
  • Anpassung des Servers für die direkte GPU Unterstützung: Damit die entsprechenden Anwendungen später direkten Zugriff auf die GPU Adapter erhalten können, sind folgende Anpassungen notwendig:
    • Per VNC Verbindung zum Server aufbauen
    • Im Device Manager den Standard VGA Adapter deaktivieren und im Anschluss deinstallieren.
    • Im Verzeichnis C:\Windows\System32\Driver den BasicDisplay Treiber löschen.
      Dieser wird normalerweise für die RDP Zugriffe benötigt. Ist der Treiber auf der Maschine aktiv, greifen installierte Anwendungen im Default auf diesen Treiber zu. Damit wird die eigentliche GPU Unterstützung für die Anwendung verhindert.
    • Nach Löschen des BasicDisplay Treibers das System rebooten und per VNC erneut verbinden.
  • Nun müssen noch Registry Key`s unter HKEY_LOCAL_MACHINE gesetzt werden damit die Anwendungen die GPU Adapter nutzen können. Je nach Zugriffsszenario die Schlüssel erstellen für DirectX, WPFHook, CUDO, OpenGL

DirectX
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\CtxHook\AppInit_Dlls\Graphics Helper]
„DirectX“=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\CtxHook\AppInit_Dlls\Graphics Helper]
„DirectX“=dword:00000001
WPFHook

[HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\CtxHook\AppInit_Dlls\Multiple Monitor Hook]
„EnableWPFHook“=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\CtxHook\AppInit_Dlls\Multiple Monitor Hook]

CUDO

„EnableWPFHook“=dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\CtxHook\AppInit_Dlls\Graphics Helper]
„CUDA“=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\CtxHook\AppInit_Dlls\Graphics Helper]
„CUDA“=dword:00000001
OpenGL

[HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\CtxHook\AppInit_Dlls\Graphics Helper]
„OpenCL“=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Citrix\CtxHook\AppInit_Dlls\Graphics Helper]
„OpenCL“=dword:00000001

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.