Das Citrix App Layering gewinnt mehr und mehr an Beliebtheit und wird immer öfter in den Citrix-Projekten eingesetzt. Hier sind einige Argumente, die für den Einsatz des App Layering sprechen:
Die Zeitersparnis und die Flexibilität sind der Hauptvorteil bei dem Einsatz des App Layerings. Viele Aufgaben, besonders wiederkehrende Aufgaben, die ohne App Layering mehrere Tage in Anspruch nehmen können, werden innerhalb von wenigen Stunden erledigt. Nehmen wir als Beispiel die Windows-Updates: App Layering ermöglicht nur den einzigen OS-Layer upzudaten, anstatt mehrere Golden-Images für unterschiedlichen Maschinenkatalogen einzeln zu aktualisieren.
Quelle: Citrix
Die gleiche Situation betrifft auch die Pflege der Fachanwendungen. Für die unterschiedlichen Fachabteilungen werden immer noch die unterschiedlichen Anwendungskataloge benötigt, aber anstatt mehrere Golden-Images einzeln zu aktualisieren, werden nur mehrere Applikation-Layer gepflegt. Der gesamte Produkt-Lifecycle wird in allen Phasen durch die Verwendung von App-Layering massiv beschleunigt.
Einleitung
Die folgende Anleitung beschreibt die initiale Installation und Konfiguration der Kernkomponenten der App Layering Infrastruktur - Enterprise Layer Manager. Ich versuche die Installation in meiner Test-Umgebung möglichst parallel auf zwei unterschiedlichen Hypervisor (Hyper-V 2016 Server und Xenserver 7.6) durchzuführen. Die beschriebene Konfiguration hat keinen Anspruch auf die Vollständigkeit.
Der Installation-, Konfiguration-Prozess lässt sich in folgende Schritte unterteilen:
- Die Source-Dateien werden heruntergeladen
- Eine ELM-VM wird erstellt
- Die Netzwerk-Einstellungen der ELM-VM werden angepasst.
- Nach dem ersten Start können die Default-Passwörter geändert werden
- Der ELM wird an die Domäne angebunden und einem AD-Benutzer kann eine administrative Berechtigung erteilt werden.
- In einer produktiven Umgebung wäre es zu empfehlen, die Kommunikation mit der App Layering Management Konsole von HTTP auf HTTPS umzustellen. Dafür wird ein entsprechendes Zertifikat benötigt.
- Eine Netzwerkfreigabe zur Speicherung der Elastic Layers wird erstellt.
- Eine weitere Netzwerkfreigabe wird zur Speicherung den User Layer benötigt.
- Auf dem Hyper-V Host wird der App-Layering Agent installiert.
- Hyper-V Connector wird erstellt und konfiguriert.
Best Practice
- Die Hochverfügbarkeit für den ELM ist nicht notwendig, da die VDI-Infrastruktur im Fall eines Ausfalls des ELMs nicht beeinflusst wird.
- Sichern Sie die ELM-VM mit der Backup-Software des Hypervisors. Sichern Sie auch die Elastik-Layer Freigabe.
- Es ist nicht notwendig die Standard Konfigurationswerte wie RAM, CPUs zu ändern, dadurch wird das System nicht performanter.
Citrix White Paper | A Technical Overview of Citrix Application Layering
Initiale Installation (Import) und Konfiguration des Enterprise Layer Managers (ELM)
1.1 Als Erstes laden Sie das Installationsprogramm herunter. Es handelt sich in diesem Fall "um eine Archivdatei.
1.2 Entpacken Sie die geladene Datei. In dem Ordner befinden sich die drei folgenden Dateien:
citrix_app_layering_agent_installer.exe - bei dieser EXE-Datei handelt es sich um einen App Layering Agenten, der sowohl auf den PVS-Servern als auch auf den Hyper-V Hosts installiert werden muss. Der App Layering Agent steuert die Kommunikation zwischen den EML und den genannten Backend-Systemen.
Dieser Agent muss auch auf Hyper-V-Servern installiert werden, um den Hyper-V-Connector konfigurieren und verwenden zu können.
citrix_app_layering_os_machine_tools_4.14.0 – bei dem File handelt es sich um einem App Layering Agent, der für die Vorbereitung des Betriebssystems verwendet wird.
hyperv_4.14.0.14 - In diesem Archiv befindet sich die beiden VHD-Dateien, die für die Erstellung der EML-VM vorgesehen sind:
EML VM erstellen
2. Im Gegensatz zu XenServer und vSphere liefert Citrix keine fertige virtuelle Maschine, sondern nur zwei virtuelle Platten, die die Basis einer VM bilden.
2.1 Neu Virtuelle Maschine erstellen
2.2 Der Name der VM eingeben und den Speicher-Ort festlegen.
2.3 Wählen Sie die Generation 1 VM
2.4 Es werden 8 GB (8192 MB) benötigt.
2.5 Passendes Netz auswählen und weiter.
2.6 Schließen Sie zuerst die System-Disk (unidesk_hyperv-system.vhdx) an.
2.7 Finisch
2.8 Nachdem die VM erstellt wurde, werden die Einstellungen angepasst.
2.9 Geben Sie die von Citrix empfohlen 8 GB RAM an. Der Dynamische Speicher (Dynamic Memory) soll deaktiviert bleiben.
2.10 Ändern Sie die Anzahl der virtuellen Prozessoren in 4.
2.11 Fügen Sie einen weiteren IDE Controller an
2.12 Wählen Sie die zwei vorhandene virtuelle Platte unidesk_hyperv-repository.vhdx
3.1 Starten die ELM-VM
Benutzer: administrator
Password: Unidesk1
3.2 Geben Sie C ein und drücken Sie die Enter-Taste, um die Netzwerk-Konfiguration vorzunehmen.
3.3. Folgen Sie den Anweisungen, konfigurieren Sie die statische IP-Adresse.
3.4 Um die Zeitzone zu ändern, geben Sie T ein und drücken Sie die Enter-Taste.
3.5 Suchen Sie nach der passenden Zeitzone.
3.6 Geben die zugehörige Nummer ein und drücken Sie die Enter-Taste. (z.B. 321 für Berlin)
3.7 Nach Bedarf können Sie auch die Adresse der Time-Server, sowie das Password des Administrators ändern.
3.8 Geben Sie S ein und drücken Sie die Enter-Taste, um die Einstellungen zu überprüfen.
4.1. Starten Sie den Internet Explorer und geben die IP-Adresse des ELMs ein. Die installierte Silverlight-Komponente wird vorausgesetzt. Falls Ihr System nicht über das Silverlight-Plugin verfügt, wird dieses zum Download angeboten.
Der ELM lässt sich nur mit dem Internet-Explorer oder Firefox ab Version 52 verwalten.
Benutzer: administrator
Password: Unidesk1
4.2 Zu allererst werden Sie aufgefordert, dem Lizenzvertrag zu akzeptieren und die Passwörter zu ändern.
Klicken Sie auf den Pfeil nach unten, um fortzufahren.
4.3 Geben Sie die neuen Passwörter ein.
4.4 Klicken Sie auf Change Credentials um die Änderungen durchzuführen.
4.5 Der Task ist erfolgreich abgeschlossen
4.6 Schließen Sie das Welcome-Fenster
Konsole- Session Timeout
Die ELM-Konsole ist so konfiguriert, dass der Benutzer nach 15 Minuten Inaktivität automatisch abmeldet wird. Der Standardwert für die automatische Abmeldung lässt sich hier anpassen:
System > Settings and Configuration > Security Settings
Active Directory Integration
5.1 Die Anbindung des EML an die Domäne ist notwendig, um die Benutzern Rollen und die Elastic Layers zuweisen zu können.
User > Directory Services > Create Directory Junction
5.2 Fühlen Sie die unteren Felder aus:
- Directory Junction Name: Anzeigename für Ihre Konfiguration
- Server Adresse: Domain Name
- Port: Kommunikationsport mit dem LDAP/LDAPS-Dienst.
Port: Kommunikationsport mit dem LDAP-Dienst. Ja nach Bedarf können Sie sowohl den Port 389, als auch den Port 636 für das LDAPS verwenden. Aktivieren Sie die Option Ignore Certificate Errors
Die Meldung Certificate Errors kann ignoriert werden.
Klicken Sie auf Test Connection um die Verbindung zu testen.
5.3 Geben Sie hier ein Name des Dienstkontos ein, das für die AD-Abfragen verwendet wird. Klicken Sie auf Test Authentication.
- Bind Distinguished Name: Sie können hier auch ein Username in der Form: username\domain eingeben.
5.4 An dieser Stelle wird eine OU festgelegt, die den Benutzer / Gruppen oder Computer beinhalten, die Elastic Layers angebunden bekommen. In meinem Beispiel verwende ich die Root-Domäne, in einer produktiven Umgebung würde ich den Suchpunkt präziser setzen.
Klicken Sie auf Test Base DN
5.5 Wenn kein Bedarf besteht von den Default-Werten abzuweichen, setzen Sie die Konfiguration fort.
5.6 Im letzten Schritt schließen Sie den Wizard ab, klicken Sie auf Create Directory Junction
5.7 Die AD-Anbindung wurde erfolgreich konfiguriert.
5.8 In den weiteren Schritten weisen wir unserem AD-Admin die Rolle des ELM-Administrator zu.
Wählen Sie einen entsprechenden Benutzer aus und klicken Sie auf die Schaltfläche Edit Properties
5.9 Klicken Sie auf den Pfeil nach unten, um fortzufahren.
5.10 Auch hier können Sie keine Änderungen vornehmen.
5.11 Wählen Sie die gewünschte Rolle aus.
5.11 Die Rollenzuweisung wurde erfolgreich abgeschlossen
5.12 Der erstellte Benutzer wird auch auf der Registerkarte Users angezeigt.
5.13 Ab sofort können Sie sich mit Ihrem Domänenaccount anmelden.
FileShare für Elastic Layers (Elastic Layer Repository)
6.1 Zur Speicherung der Elastic Layers wird eine Netzwerkfreigabe auf einem Fileserver benötigt. Zwecks Hochverfügbarkeit kann DFS (Distributed File System) eingesetzt werden.
Berechtigung Freigabe:
Ordner erstellen > Eigenschaften > Erweiterte Freigabe > Berechtigung > Freigabeberechtigung > Jeder – Vollzugriff (Advanced Sharing > Permissions > Share Permissins > Everyone – Full Control)
Berechtigung NTFS:
Eigenschaften > Sicherheit > Gruppen- oder Benutzernamen > Domain User (in meinem Fall, Sie können auch eine bestimmte Gruppe verwenden)
- Lesen, Ausführen (Read & Execute)
- Ordnerinhalt anzeigen (List folder contents)
- Lesen (Read)
Eigenschaften > Sicherheit > Gruppen- oder Benutzernamen > Service_CTX (ein Service User)
- Ändern (Modify)
Mit diesem Dienstkonto greift der ELM auf die Freigabe zu, um die elastischen Layers hochzuladen.
6.2 Setzen Sie die Konfiguration auf dem ELM fort: System > Settings and Configuration > Network File Shares > Edit
Sie können nur eine Windows-Freigabe verwenden, die NFS-Freigaben werden nicht unterstützt.
Klicken Sie auf Test SMS File Share, und danach auf Save
6.3 Die Konfiguration ist abgeschlossen, kann aber jederzeit geändert werden (Edit-Button)
6.4 Folgende Dateien werden während der Konfiguration erstellt
FileShare für User Layers
In der Version 4.14 können Sie auch die User Layers verwenden, die längere Zeit nur als Lab-Funktion verfügbar waren. Die Freigabe für die Elastic Layers werden analog zu den anderen Freigaben erstellt.
App-Layering Agent installieren
Ein App-Layering Agent dient zur Steuerung des Hypervisors durch den ELM.
7.1 Starten Sie den Installer auf Ihrem Hyper-V Server.
7.2 Weiter...
7.3 Dem Lizenzvertrag zustimmen und weiter…
7.4 Überprüfen Sie ob die Kommunikation nicht durch die Firewall geblockt wird.
7.5 Installation starten
7.6 Nach der Installation werden Sie aufgefordert, für die Kommunikation notwendige Information einzugeben:
- Adresse: IP-Adresse des ELM
- User: ein lokaler oder ein Domain-Benutzer mit Administratorrechten
7.7 Die Konfiguration ist erfolgreich abgeschlossen
7.8 Folgender Dienst wurde auf dem Server erstellt:
Hyper-V Connector
8.1 Nach der erfolgreichen Installation des Agents auf dem Hyper-V Server können wir mit der Konfiguration des Connectors beginnen.
Klicken Sie auf Add Connector Config. In der geöffneten HTML5-Seite können Sie die notwendigen Informationen eintragen und diese verifizieren.
8.2 Wählen Sie Microsoft Hyper-V und klicken Sie auf New. Es öffnet sich ein neues IE-Fenster.
8.3 Konfigurieren Sie die Einstellungen wie folgt:
- Config Name - geben Sie einen Konfigurationsnamen an. Bei diesem Namen handelt es sich um einen Anzeigename, der auf der Konsole erscheinen wird.
- Hyper-V Configuration / Agent - geben Sie den Namen des Hyper-V-Servers an.
- Hyper-V Configuration / User Name - geben Sie den Namen eines Hyper-V-Users. In meinem Fall verwende ich einen Lokal-Admin auf dem Hyper-V Server.
- Hyper-V Configuration / Password – ist selbsterklärend.
Klicken Sie auf Check Credentials um die Anmeldeinformationen zu überprüfen. Wenn die Eingaben korrekt sind, können die Sie die Virtual Machine Settings anpassen.
Meldung Im Falle eines erfolgreichen Verbindungstests
8.4 Im Bereich Storage Settings wird der Pfad zu dem freigegeben Ordner (s. Punkt 6) festgelegt.
- Remote path to Storage – hier wird der UNC-Pfad des freigegebenen Ordners eingegeben.
- Local path to storage: - lokaler Pfad zu demselben Ordner.
- Use the Agent Credentials – wenn Sie diese Option aktivieren, wird hier der Benutzer gewählt, der in dem Punkt 6.1 eingegeben wurde.
- Package Cache Size in GB – hier wird das Speicherplatzvolumen eingeben, das zum Zwischenspeichern von Layer-Images verwendet werden kann. Die Verwendung dieser Option kann die Zeit, die für die Erstellung des Images benötigt wird, massiv verkürzen. Der Wert 0 deaktiviert diese Option.
8.5 Schließen Sie den Wizard
8.6 Die eben konfigurierten Einstellungen können Sie jederzeit anpassen.
System > Connection > Edit Connector Config
Fazit Hyper-V Einsatz
Der Einsatz eines Microsoft Hyper-V Server scheint mir nur bedingt für den produktiven Einsatz geeignet. Hier sind drei Punkte die gegen den Einsatz des Hyper-V sprechen:
- Die Verwendung von MCS benötigt eine SCVMM-Infrastruktur. Der ELM kann nur direkt einen Hyper-Server steuern.
- Die Template-VMs müssen manuell auf die Netzwerkdateifreigabe kopiert werden, da ein direkter Import ins Repository nicht möglich ist.
- Es wird nur die Generation 1 VMs unterstützt.
XenServer Connector
Die Konfiguration der XenServer-Verbindung ist dem Hyper-V identisch.
1.
2.
3.
4.
MCS XenServer Connector
Die Konfiguration den MCS Connector ist ebenso identisch:
1.
2.
3.
4.
PVS Connector
Die Konfiguration des PVS Connectors unterscheidet sich minimal von den anderen Konnektoren.
Vorbereitung:
- Überprüfen Sie die Firewall-Einstellungen. Hier finden Sie die komplette Liste der notwendigen Ports: Firewall Ports for App Layering
- Das Service-Konto muss ein Mitglied der folgenden Gruppen sein: PVS Farm Administratoren, lokale Administratoren auf dem PVS Server
- Führen Sie auf dem Server folgende Befehlskette (CMD, als Administrator) aus:
C:\Program Files\Citrix\Provisioning Services Console> C:\Windows\Microsoft.NET\Framework64\v4.0.30319\installutil.exe Citrix.PVS.SnapIn.dll
- Falls die PVS-Version upgegradet wurde, führen Sie auch diesen Befehl aus: get-pssnappin -registered
1.
2.
3. An dieser Stelle können Sie folgendes Skript eintragen:
CTX226060 - Citrix App Layering 4.x: PVS Connector Script to Convert VHD to VHDX
Weitere Informationen zum Thema PVS finden Sie hier:
CTX226062 Citrix App Layering 4.x: PVS Connector (BootPrivate)
CTX226646 Unable to Configure Citrix App Layering ELM PVS Connector
CTX237476 Applayering 4.11- unable to add pvs connector
Fortsetzung folgt…