Cube180x180Im Folgenden eine Zusammenfassung zu den Möglichkeiten App-V mit „Bortmitteln“ redundant bereitzustellen. Generell kann diese Verfahren auch auf die Bereitstellung mit SCCM übertragen werden. Die Distribution Points fungiert dabei als Streaming Server. Mit Citrix XenApp/Desktop gibt es bei Bereitstellung einige Probleme. Diese werden untem im Artikel seperat erleutert.

 App-V HA über den Publishing Server

Der App-V 5 Publishing Server läuft auf zwei oder mehr Knoten, um eine Redundanz zu ermöglichen. Dabei wird eine gemeinsame Datenbank (SQL Server) genutzt. Idealer Weise läuft die App-V Datenbank im Cluster. Weiterhin wird aber auch der SQL Server im Mirroring unterstützt.

http://technet.microsoft.com/en-us/library/dn343758.aspx

Laut der Supportmatrix sind die folgenden HA Lösungen unterstützt:

· Support for Microsoft SQL Server clustering

· Support for IIS Network Load Balancing

· Support for clustered file servers when running (SCS) mode

· Support for Microsoft SQL Server Mirroring

App-V Paketbereitstellung

Auf den Publishing Servern werden gleichzeitig die Pakete über http/https bereitgestellt. Der Zugangspunkt vom Client aus ist ein „NLB“ Cluster. Eine Integration in einen Citrix Netscaler (Load Balancing über einen Citrix Netscaler) ist auch möglich. Diese Bereitstellung ist unabhängig vom App-V Publishing Server. Es wird jedoch auf den gleichen Share Zugegriffen. Hier ist darauf zu achten, dass auch mit zwei synchronen Shares oder besser einem DFS gearbeitet wird. Mit einem DFS können die Pakete über mehrere Server (an mehreren Standorten) bereitgestellt werden. Die Daten werden zwischen den Servern synchronisiert.

Für ein Mirroring sind in diesem Fall drei SQL Server Lizenzen notwendig (Mirror und Zeuge). Ich empfehle CPU Lizenzen, da ansonsten für jeden App-V Nutzer eine SQL Server „CAL“ Lizenz benötigt wird! ANMERKUNG: Als Zeuge kann auch ein SQL Express genutzt werden!

Reg Keys für Failover:

HKEY_LOCAL_MACHINE \ Software \ Microsoft \ AppV \ Server \ ManagementService.

In “MANAGEMENT_SQL_CONNECTION_STRING“ hier “failover partner = <MIRRORSERVER>”

Bereitstelung App-V HA

Figure 1 : Bereitstelung App-V HA

App-V Shared Content Store

Der App-V Shared Content Store ermöglicht es, die PVS Images kompakt zu halten, da der App-V Chache in das Netzwerk ausgelagert wird. Ein Nachteil ist wiederum, dass bei einem Erststart einer Anwendung diese nur verzögert gestartet wird. Ist die Anwendung erst einmal im Speicher des Clients, erfolgt jeder weitere Start schnell. Mit einem aktivierten Shared Content Store kann auf einen lokalen redundanten Speicher verzichtet werden.

Die Installation mit SCS erfolgt mit:

appv_client_setup_rds.exe /SHAREDCONTENTSTOREMODE=1 /q

Im Nachhinein kann das auch über Powershell geändert werden

set-AppvClientConfiguration -SharedContentStoreMode 1

App-V Client Konfiguration HA

Die Clientkonfiguration auf den Terminalservern erfolgt über ein Microsoft ADMX Template für App-V 5 bzw. Im Bedarfsfall keine eine Konfiguration über Powershell erfolgen

https://technet.microsoft.com/de-de/library/jj684299.aspx

Alternative HA Bereitstellung über Powershell

Bei einer genauen Betrachtung der notwendigen Komponenten fällt auf, dass eine HA Bereitstellung auch viel einfach möglich ist. Beispielsweise kann man die Pakete auch einfach auf einem DFS Share ablegen und über ein Powershell Skript importieren. Dieses Skript ist über die Aufgabenplaner Beispielsweise nach einem Server Neustart auszuführen:

Get-ChildItem "\\appv5-01\Packages\" -recurse -force -include *.appv | Add-AppvClientPackage | Publish-AppvClientPackage –global

Bereitstellung über den App-V Sheduler

Der App-V Sheduler macht im Grunde das Gleiche, wie das Powershell Skript oben. In frei definierbaren Abständen werden App-V Pakete aus einem Verzeichnis importiert. Das Tool gibt es als kostenlose Community und als Enterprise Edition.

http://bramwolfs.com/2014/03/31/app-v-scheduler-2-0-release/

App-V Sheduler

Figure 2 App-V Sheduler

Connection Groups

In diesem Zusammenhang kann zum Bearbeiten von Connection Groups das kostenlose Tool “App-V Commander” empfohlen werden:

http://www.adminscope.com/downloads/app-v-commander/?utm_content=buffer6687d&utm_medium=social&utm_source=twitter.com&utm_campaign=buffer

 

Adminscope-App-V Commander-View

Figure 3 : Adminscope-App-V-Commander-View3_1.5

HA Bereitstellung für XenApp 7.5

Leider mag XenApp 7.5 nicht mit zwei Publishing Servern zusammen arbeiten. Das ist eigentlich schade, denn die Citrix Integration ist gelungen. Die Gründe dafür sind wie folgt. Der Start (CTXAppVLauncher.exe) und das Management ist hier auf einen PowerShell-Zugriff abgestellt (C# Stringbuilder). Ein Featurerequest läuft bei Citrix. Das Problem ist hier speziell die Kerberos-Authentifizierung für den PowerShell-Zugriff da dieser standardmäßig über WinRM erfolgt. Leider aber kein passender Server Principle Name (SPN) möglich ist. WinRM läuft immer im System-Kontext.

Ein SPN wäre nur sauber möglich, wenn der Server-Service unter einem Dienstaccount laufen würde. Das klappt aber mit WinRM nicht. Daher müsste das PowerShell-Remote-Handling in den IIS verlagert werden (Serviceuserkontext). Dabei ändert sich URL für den PowerShell-Remote-Zugriff. XenApp sucht leider immer nach der Standard-URL.

Wer also unter XenApp HA benötigt, muss App-V klassisch veröffentlichen. Und Vielleicht über den App-V Scheduler bereitstellen.