In diesem Artikel werden die wichtigsten Konfigurationsschritte beschreiben, die Sie bei der Planung und Einrichtung einer PVS Infrastruktur berücksichtigen sollen. Bei diesem Blog-Beitrag handelt es sich um die Aktualisierung der Einleitung aus dem Jahre 2016.
Vorbereitung / Planung
1. Boot Methode
Bevor Sie mit der Installation vorfahren, sollten Sie Anhang Ihrer Netzwerkkonfiguration festlegen, welche vDisk Boot Methode für Sie in Frage kommt: PXE, DHCP oder BDM (Boot Device Manager).
2. DHCP Server
Da die DHCP Methode sich als optimal erwiesen hat, wird nur diese auch weiter berücksichtigt.
2.1. Die Bereitstellung setzt logischerweise einen DHCP-Server voraus. Es muss noch die Frage geklärt werden, ob
- die Rolle DHCP-Server direkt auf dem PVS-Server installiert wird
- oder ein bereits existierender Server verwendet wird
2.2. Welche DHCP-Optionen dabei verwendet werden, ist von der Konfiguration bzw. Einsatz des UEFI Secure Boots in Ihren virtuellen Maschinen abhängig.
Die „klassischen“ DHCP-Optionen sind die folgenden:
- Option 66: Boot Server Host Name (IP-Adresse des PVS-Servers)
- Option 67: Bootfile Name (ARDBP32.BIN)
Für die Konfiguration des UEFI-Boots wird eine von beiden Optionen eingesetzt:
- Option 11: Boot Server Host Name (IP-Adresse des PVS-Servers)
- Option 17: Root Path (z.B. IP-Adresse oder FQDN des Hosts)
2.3. DHCP-Relay-Agents - oft kommt es vor, dass die DHCP-Server und die Zielesysteme in den unterschiedlichen Netzwerk-Segmenten (VLAN), die durch Firewall geschützt werden, untergebracht sind. In diesem Fall sollten Sie dafür sorgen, dass der DHCP-Broadcast zugelassen wird.
2.4. DHCP Revervation
Aus Security-Sicht empfiehlt es sich die zugewiesene Adresse fest zu reservieren.
2.5. DHCP Autorisieren
Falls die DHCP-Rolle auf einem PVS-Server installiert werden sollte, wird die Berechtigung zum Autorisieren des DHCP-Servers in Active Directory benötigt. Die Person, die den DHCP-Server in AD autorisieren soll, soll Mitglied der Enterprise Admins sein.
2.6. DHCP Failover
Es ist zu empfehlen, die DHCP-Konfigurationen hochverfügbar durch Hinzufügen weiterer DHCP-Server hochverfügbar zu gestalten.
Alle oben genannten Schritte und die damit verbundenen Abstimmungsrunden zwischen den beteiligten IT-Abteilungen (AD, Netzwerk) können entfallen, wenn ein Boot Device Manager eingesetzt wird.
3. PVS Database
Alle PVS-Konfigurationseinstellungen werden nur in einer Farm-Datenbank gespeichert. Es werden alle von Microsoft supporteten Datenbanken unterstützt (auch MS SQL Express). Die Größe der Datenbank ist von mehreren Faktoren abhängig, vor allem, diese spielen eine wichtige Rolle: Anzahl der PVS-Server, vDisks, Stores und Target Devices.
Es gibt zwei Arten die notwendige Datenbank für die PVS-Infrastruktur anzulegen. Eine Datenbank kann bei der Installation automatisch erzeugt werden. Dafür soll aber der Benutzer, der der Konfigurationswizard gestartet hat, über die folgende SQL-Rechte verfügen:
- dbcreator
- securityadmin
Falls Sie nicht über die entsprechende Berechtigung verfügen, sollen Sie zur Alternative zugreifen. Es besteht die Möglichkeit ein Skript für eine manuelle Erstellung der PVS Datenbank zu generieren (C:\Program Files\Citrix\Provisioning Services\DBScript.exe) und diesen Skript von einem DB-Administrator ausführen zu lassen.
Nachdem die Datenbank auf dem Datenbank Server erstellet ist, soll die Person die die initiale Farm-Konfiguration durchführt über diese Rechte verfügen:
- db_owner (auf die PVS-Datenbank selbst)
- securityadmin (um sich auf dem DB-Server authentifizieren zu können)
4. Service Account
Es ist empfohlen, dass zum Starten vom Stream and Soap Service einen Dienst Account im AD angelegt wird. Dieser Dienst-Account wird sowohl für die Kommunikation mit der Datenbank, als auch für den Dienst-Start verwendet. Dabei ist die folgende Berechtigung notwendig:
- Mitgliedschaft in der Gruppe Lokale Administratoren (auf allen PVS-Servern). Bei Bedarf konnte man die Berechtigung auch granularer gestalten, falls die lokale Admin-Rechte für Sie „überdimensioniert“ sind:
- Run as service
- Registry read access
- Zugriff auf den Ordner: Program Files\Citrix\Citrix Provisioning
- Lese- und Schreibzugriff auf vDisk-Stores
- Mitgliedschaft in der Gruppe Maschinenkatalogadministrator in Citrix Studio. (Machine Catalog Administrator).
Die Zugriffsrechte auf die PVS-Datenbank werden dem Service Account bei der Konfiguration automatisch erteilt, und sollen nicht gesondert zugewiesen werden.
- db_datareader
- db_datawriter
- Execute permissions on stored procedures
Je nachdem wie die PVS-Server in die XenDesktop-Infrastruktur integriert werden, soll auch folgende Berechtigung notwendig sein (weiter unter Punkt 5):
- Erstellen, Löschen und Zurücksetzen von Computerobjekten (bezieht sich auf die OU, die Computerkonten beinhaltet)
- Passwort zurücksetzen (bezieht sich auf die OU, die Computerkonten beinhaltet)
KMS-Berechtigung
Wenn der Einsatz des KMS-Servers geplant ist, muss der Service-Benutzer ein Mitglied der lokalen Admin-Gruppe sein.
CTX128276 - Configuring KMS Licensing for Windows and Office
5. Password Reset für VM-Konten
In der OU, die für die Speicherung den provisionierten VMs verwendet wird, soll die folgende GPO-Option aktiviert sein. Diese Einstellung ermöglicht ein regelmäßiges Zurücksetzen von Passwörtern eines Computerkontos.
- Englisch: Computer Configuration > Windows Settings > Security Settings > Security Options > Domain member: Disable machine account password changes – Enabled
- Deutsch: Computerkonfiguration > Windows-Einstellungen > Lokale Richtlinien > Sicherheitsoptionen > Domänenmitglied: Änderungen von Computerkontenkennwörtern deaktivieren - Aktiviert
6. Firewall
Abhängig von der Architekturentscheidung sollen mehrere Ports freigegeben werden.
- UDP 6890 – 6909, 6910 – 6930 Inter-server Kommunikation, vDisk Streaming
- UDP 67 / 4011 (Bootstrap Protocol Client)
- UDP 69 (PXE Service)
- UDP 6910 (TFTPServer)
- TCP 54321, 54322, 54323 (SOAPService)
- TCP 1433 Kommunikation mit MS SQL
- TCP 389 Kommunikation mit AD
- TCP 1688 KMS (Key Management Server)
- TCP 445 (SMB over TCP) – Synchronisation von vDisk zwischen den Stores
- Netzwerkportanforderungen für Windows Server 2019 / 2016 / 2012 R2
- Communication Ports Used by Citrix Technologies | Provisioning Services
- CTX227725 - Citrix Provisioning Services Boot Process
6. TFTP-Service Load Balancing
Wenn in Ihrer Infrastruktur mehr als ein PVS-Server eingesetzt wird, sollten Sie dafür sorgen, dass der TFTP-Dienst immer verfügbar ist. Unter einen TFTP-Service ist letztendlich die ARDBP32.BIN-Datei zu verstehen, die in der DHCP-Option 67 eingetragen ist und über die Option 66 erreichbar wird. Reichten Sie per Load Balancer ihrer Wahl. Eine weitere IP-Adresse wird benötigt.
7. ServiceAccounts für vCenter
Die enge Integration zwischen Citrix- und VMware-Komponenten benötigt einen Service Account, der auf Datacenterebene auf die provisionierte Maschinen steuern kann. Eine detaillierte Auflistung der Rollen finden Sie unter in der Tabelle.
Offizielle Dokumentation: CTX214389 - How to Define VMware vSphere User Privileges for XenApp and XenDesktop oder Required VMware Privileges
8. Store
Ein Store wird zur Speicherung von vDisks verwendet und kann sowohl auf einem zentralen SMB-Share, als auch auf einer lokalen Platte des PVS-Servers liegen. Für den weiteren Aufbau werden nur lokale Stores berücksichtigt. Ein Shared Store hat zwar den Vorteil von allen PVS-Servern gleichzeitig erreichbar zu sein, bringt aber auch mehrere kostspielige Nachteile mit sich, wie z.B. Hochverfügbarkeit.
Wenn der Store sich auf lokalen Platten der PVS-Server befindet, sollten die Inhalte des Ordners des primären PVS-Servers mit den restlichen Systemen synchron gehalten.
9. Hardware-, Software-Anforderung
Eine korrekte Dimensionierung eines PVS Servers hat eine entscheidende Bedeutung, kann aber nur infrastrukturbezogen gemacht werden.
CPU – 4 vCPU sollte i den meisten Fällen ausreichen sein.
RAM – die Menge an zugewiesenen Speicher ist stark von der Anzahl der unterschiedlichen Betriebssystemen abhängig, die gleichzeitig gestreamt werden.
Berechnungsbespiel:
- 4 GB RAM für den Server selbst
- 2 GB RAM pro aktive vDisk (Desktop Betriebssystem - XD Windows 10)
- 4 GB RAM pro aktive vDisk (Published Application oder Published Desktop XA - Windows 2019)
Von Citrix wird folgende Formel zur Berechnung des Arbeitsspeichers (RAM) angeboten:
Gesamtspeicher = 4GB + (Anzahl der vDisks XD * 2GB) + (Anzahl der vDisks XA * 4GB) + 15% (Puffer)
Festplatte – es werden mindestens zwei Platten benötigt, eine für das Betriebssystem und die zweite für den Store. Wie viel Platz zur Speicherung der vDisks vorhanden sein sollte, ist von der Anzahl der unterschiedlichen vDisks und der installierten Applikation abhängig. Die Platte sollte dementsprechend performant sein.
Unterstütze Betriebssysteme:
- Windows Server 2016 Standard, Datacenter
- Windows Server 2019 Standard, Datacenter
- Windows Server 2012 R2; Standard, Essential, Datacenter
- Windows Server 2008 R2; Standard, Enterprise, Datacenter (End of Support 14.01.2020)
Alle weiteren Komponenten wie z.B. NET Framework werden vom Wizard mitinstalliert.
9.1 Netzwerke
In den modernen Netzen gibt es keine Notwendigkeit mehr ein separates Streaming Netz einzurichten.
10. Benennung
Bevor Sie zur Installation übergehen, legen Sie die Namen für die folgenden Komponenten fest:
- Farm – ist die übergeordnete logische Einheit, die alle Komponenten der PVS-Infrastruktur beinhaltet.
- Sites – ist eine weitere logische Gruppierung innerhalb einer Farm. Die Sites beinhalten folgende Komponenten: PVS-Servers, vDisk und Device Collections.
- Store – ist eine weitere logische Einheit, die ein Speicherort für die vDisks definiert.
- Device Collections – es ist ein virtueller Ordner, der zwecks besser Verwaltbarkeit / Strukturierung eingesetzt wird.
Installation
Wenn alle Vorbereitungen getroffen sind, kann die Installation beginnen. Die Installation lässt sich in vier Schritte unterteilen:
- PVS Konsole Installation
- PVS Server Installation
- PVS Konfiguration Wizard durchführen, Farm gründen
- Wiederholen Sie die oberen Schritte auf dem zweiten Server, Farm beitreten
Eine aktuelle Installations-CD können finden Sie unter folgenden Links:
Binden Sie die geladene ISO-Datei ein. Starten Sie autorun.exe und klicken Sie auf das Button „Console Installation“
Zuerst werden alle notwendige Windows Komponenten automatisch installiert.
Nach einer erfolgreichen Installation allen Komponenten wird die Installation fortgesetzt.
Wählen Sie die Option „I accept the terms in the license agreement” und klicken Sie Weiter
Bei Bedarf geben “User Name” und "Organisation” ein und Weiter
Wenn nötig, können Sie den Pfad anpassen, sonst weiter.
Klicken Sie auf Install, um die Installation zu starten
Nach Abschluss der Installation schließen Sie den Wizard und kehren Sie zur Installation-CD zurück. Wählen Sie die Option „Server Installation“ aus.
Bestätigen Sie die Installation von weiteren Komponenten.
Wählen Sie die Option „I accept the terms in the license agreement” und klicken Sie Weiter
Wie Sie in dieser Situation vorgehen, ist von Ihrer Infrastruktur abhängig. Es empfiehlt die Firewall-Einstellung zentral über die Windows-Richtlinien zu steuern.
Wenn nötig, die fehlende Information eingeben und Weiter.
Wenn notwendig anpassen, sonst Weiter
Klicken Sie auf den Install-Button, um die Installation zu starten
Finisch
Die Installation ist erfolgreich abgeschlossen, der Konfigurationswizard wird automatisch gestartet.
Konfiguration
Die Konfiguration kann jederzeit angepasst werden, wenn Sie den Konfiguration-Wizard erneut ausführen.
1. Führen Sie die Konfiguration fort
Die Logs befinden sich in dem folgenden Ordner: C:\ProgramData\Citrix\Provisioning Services\Log
2. DHCP Services. Wählen für Ihre Umgebung passende Option.
In meisten Fällen wird die DHCP-Rolle nicht auf einem PVS-Server installiert, deswegen wählen Sie die Option „The service that runs on another computer.
3. PXE Service. Wählen Sie eine Option aus, die Ihrer Architekturentscheidung entspricht. Da unser Server als ein PXE Server vorgesehen ist, wählen wir die Option “Citrix Provisioning PXE service on this computer“
4. Farm Configuration. Wenn Sie die Option Create Farm auswählen, werden Sie aufgefordert eine neue Datenbank zu erstellen.
5. Database Server. Abhängig von der geplanten Konfiguration, füllen Sie die untere Felder aus.
6. New Farm. Füllen Sie die Felder aus.
Dabei sind folgenden Informationen einzutragen:
- Database name – Sie können eine bestehende Datenbank auswählen, oder eine neue DB anlegen lassen
- Farm name
- Site name
- Collection name
- Farm Administrator group – diese Gruppe wird automatisch zu PVS-Admins hinzugefügt.
Die eingetragenen Informationen können nach der Konfiguration jederzeit angepasst werden (ausgenommen Datenbank).
7. New Store. Wählen Sie den Ordner für die Speicherung von vDisks.
8. License Server. Für die Anbindung des Lizenz-Servers können sowohl, eine IP-Adresse, ein Hostname oder ein FQDN verwendet werden. Lassen Sie die Option "Validate License server version and communication" aktiviert.
9. User account. Hier wird unser Service Account eingetragen, der für die Kommunikation mit der PVS-Datenbank, sowie zum Starten von lokalen PVS-Diensten verwendet wird.
10. Active Directory Computer Account Password. Die vordefinierten Einstellungen können übernommen werden.
11. Network Communications. Falls Sie mehrere Netzwerkarten in Ihrem PVS-Server haben, wählen Sie die passende aus.
12. TFTP Option and Bootstrap Location. Da unser Server auch zum Bereitstellen des TFTP-Dienstes vorgesehen ist, aktivieren Sie die Option „Use the Citrix Provisioning TFTP service“
13. Stream Servers Boot List. Die an dieser Stelle angebotene Konfigurationsmöglichkeit kann jederzeit über die Management Konsole angepasst werden.
14. Soap SSL Configuration. Wenn Sie ein SSL-Zertifikat bereits installiert haben, wird dieses hier angezeigt.
15. Problem Report Configuration. Die Verwendung dieser Option kann das Troubleshooting beschleunigen.
16. Finish. Der Wizard zeigt eine Zusammenfassung der getätigten Einstellungen. Die Inhalte lassen sich per Copy and Paste in den Editor übernehmen und zwecks Dokumentation weiterverwenden.
Hiermit ist die initiale Konfiguration abgeschlossen
PVS ServiceAccounts für vCenter - Rollen/Rechte
SDK | Benutzeroberfläche |
System.Anonymous, System.Read und System.View | Automatisch hinzugefügt. Kann die integrierte Lesezugriff-Rolle verwenden. |
Datastore.AllocateSpace | Datastore > Allocate Space |
Datastore.Browse | Datastore > Browse datastore |
Datastore.FileManagement | Datastore > Low level file operations |
Network.Assign | Network > Assign network |
Resource.AssignVMToPool | Resource > Assign virtual machine to resource pool |
VirtualMachine.Config.AddExistingDisk | Virtual machine > Configuration > Add existing disk |
VirtualMachine.Config.AddNewDisk | Virtual machine > Configuration > Add new disk |
VirtualMachine.Config.AdvancedConfig | Virtual machine > Configuration > Advanced |
VirtualMachine.Config.RemoveDisk | Virtual machine > Configuration > Remove disk |
VirtualMachine.Interact.PowerOff | Virtual machine > Interaction > Power Off |
VirtualMachine.Interact.PowerOn | Virtual machine > Interaction > Power On |
VirtualMachine.Inventory.CreateFromExisting | Virtual machine > Inventory > Create from existing |
VirtualMachine.Inventory.Create | Virtual machine > Inventory > Create new |
VirtualMachine.Inventory.Delete | Virtual machine > Inventory > Remove |
VirtualMachine.Provisioning.Clone | Virtual machine > Provisioning > Clone virtual machine |
VirtualMachine.State.CreateSnapshot | vSphere 5.0, Update 2 und vSphere 5.1, Update 1: Virtual machine > State > Create snapshot. vSphere 5.5: Virtual machine > Snapshot management > Create snapshot |
Global.ManageCustomFields | Global > Manage custom attributes |
Global.SetCustomField | Global > Manage custom attributes |
VirtualMachine.Config.AddRemoveDevice | Virtual machine > Configuration > Add or remove device |
VirtualMachine.Config.CPUCount | Virtual machine > Configuration > Change CPU Count |
VirtualMachine.Config.Memory | Virtual machine > Configuration > Memory |
VirtualMachine.Config.Settings | Virtual machine > Configuration > Settings |
VirtualMachine.Provisioning.CloneTemplate | Virtual machine > Provisioning > Clone template |
VirtualMachine.Provisioning.DeployTemplate | Virtual machine > Provisioning > Deploy template |
Quelle: Citrix