Tags: RDS, PowerShell, Desktop-Virtualisierung
Eine RDS-Umgebung lässt sich nicht nur über die GUI des Server Managers bereitstellen, sondern auch über PowerShell. Zuständig dafür sind die Funktionen New-RDSessionDeployment und New-RDVirtualDesktopDeployment. Sie übernehmen die Basisinstallation, für die folgende Konfiguration gibt es weitere Cmdlets.
Greift man für die RDS-Installation zum Server Manager, dann bietet der Assistent zum Hinzufügen von Rollen die Wahl zwischen Standardbereitstellung und Schnellstart.
Letzterer richtet den Connection Broker, RD Web Access und einen Session Host bzw. Virtualization Host auf einer einzigen Maschine ein.
Rollen auf einem oder mehreren Servern
Die PowerShell-Cmdlets kennen das Schnellstart-Konzept nicht, aber es lässt sich ohne weiteres umsetzen, indem man den Parametern für die drei Rollen immer den gleichen Server mitgibt.
Die Sammlung und die RemoteApp, die der Assistent im Server Manager zusätzlich konfiguriert, müsste man durch eigene Befehle hinzufügen.
RemoteDesktop-Modul laden
Die benötigten Cmdlets und functions gehören zum Modul RemoteDesktop. Unter Windows Server ist es standardmäßig schon vorhanden, unter Windows 10 muss man es erst installieren. Dieses importiert man mit dem Befehl
Import-Module RemoteDesktop
Neues Session-Deployment erstellen
Anschließend ruft man New-RDSessionDeployment nach diesem Muster auf:
New-RDSessionDeployment -ConnectionBroker <Server-FQDN> `
-SessionHost <Server-FQDN> -WebAccessServer <Server-FQDN>
Wenn man als Wert für die drei Parameter nur den Hostname angibt, erhält man eine entsprechende Fehlermeldung und den Hinweis, den vollqualifizierten Domänennamen zu verwenden.
VDI-Deployment erzeugen
Analog dazu ruft man New-RDVirtualDesktopDeployment auf, wenn man keine Session-basierten, sondern virtuelle Desktops nutzen möchte:
New-RDVirtualDesktopDeployment -ConnectionBroker <Server-FQDN> `
-WebAccessServer <Server-FQDN> -VirtualizationHost <Server-FQDN>
Troubleshooting
Es ist nicht möglich, diese functions auf einem Server aufzurufen, auf dem Rollen installiert werden, die einen Neustart des Rechners erfordern. In diesem Fall gibt PowerShell die Meldung aus:
New-RDSessionDeployment : Fehler beim Überprüfen des Parameters "Remotedesktop-Sitzungshost". Der lokale Server kann nicht neu gestartet werden.
Daher muss man die Operation auf einem anderen Server oder einer Workstation mit installiertem RemoteDesktop-Modul starten. Dabei kann man jedoch in folgenden Fehler stolpern:
Fehler beim Überprüfen des Parameters "Remotedesktop-Verbindungsbroker". Es kann keine Verbindung mit dem Server über PowerShell-Remoting hergestellt werden.
In diesem Fall muss man die übliche Check-Liste für WinRM durchgehen. Dazu gehört das Ausführen von
winrm quickconfig
und die Prüfung der Firewall-Regeln:
Get-NetFirewallRule -displayname "Windows-Remoteverwaltung*" |
select DisplayName, Enabled
Falls diese Voraussetzungen gegeben sind, kann es knifflig werden, wie diese Tipps im TechNet-Forum zeigen. In einigen Fällen scheint es zu helfen, IPv6 vorübergehend zu deaktivieren.
Host-Collection erstellen
Wenn man gleich eine Sammlung von Session Hosts erstellen will, wie dies die Schnellstart-Option tut, dann geht man so vor:
New-RDSessionCollection -CollectionName RDSessionCollection `
-SessionHost <Server-FQDN> `
-CollectionDescription "Meine erste Sammlung für Desktop Sessions” `
-ConnectionBroker <Server-FQDN>
Weitere Session Hosts hinzufügen
Nachdem die oben beschriebene Basisinstallation nur einen einzelnen Session Host eingerichtet hat und Collections normalerweise mehrere Hosts umfassen, könnte man weitere davon mit Add-RDServer hinzufügen:
Add-RDServer -Server <Server-FQDN> -Role RDS-RD-SERVER `
-ConnectionBroker <Server-FQDN>
Möchte man mehr als einen Session Host zu einer Sammlung hinzufügen, dann muss man ihre Namen dem Parameter SessionHost als Array @("<Server-1-FQDN>", "<Server-2-FQDN>") übergeben.
Täglich Know-how für IT-Pros mit unserem Newsletter
Verwandte Beiträge
- Azure Virtual Desktop und Windows 365 unterstützen nun Multimedia Redirection
- Remotedesktop in Windows 11 und Server 2022 aktivieren (GUI, WAC, WMI, GPO)
- Microsoft deaktiviert RemoteFX vGPU und entfernt sie im Februar 2021
- RemoteDesktop-Modul für PowerShell unter Windows 10 installieren
- Windows 10 und Server 2016 verschlanken mit dem Citrix Optimizer
Weitere Links