Automatische Migration von Azure Virtual Desktop (klassisch)

Wichtig

Azure Virtual Desktop Classic wird am 30. September 2026 eingestellt. Verbindungen mit klassischen Ressourcen werden nach dem Außerbetriebnahme blockiert.

Um Unterbrechungen zu vermeiden, migrieren Sie verbleibende klassische Ressourcen vor dem 30. September 2026 zu Azure Resource Manager-basierten Hostpools.

Mit dem Migrationsmodultool können Sie Ihre organization von Azure Virtual Desktop (klassisch) zu Azure Virtual Desktop migrieren. In diesem Artikel wird gezeigt, wie Sie das Tool verwenden.

Voraussetzungen

Bevor Sie das Migrationsmodul verwenden, stellen Sie sicher, dass Sie die folgenden Dinge bereit haben:

  • Ein Azure-Abonnement, in dem Sie neue Azure-Dienstobjekte erstellen.

  • Zum Erstellen von Azure Objects für Ihr Abonnement benötigen Sie die Rolle Mitwirkender, und zum Zuweisen von Benutzern zu Anwendungsgruppen die Rolle Administrator für Benutzerzugriff.

  • Mindestens die Berechtigung "Mitwirkender für Remotedesktopdienste" (RDS) für einen RDS-Mandanten oder die spezifischen Hostpools, die Sie migrieren.

  • Die neueste Version des PowerShell-Moduls "Microsoft.RdInfra.RDPowershell".

  • Die neueste Version des Az.DesktopVirtualization PowerShell-Moduls.

  • Die neueste Version des Az.Resources PowerShell-Moduls.

  • Installieren Sie das Migrationsmodul auf Ihrem Computer.

  • PowerShell oder PowerShell ISE verwenden, um die in diesem Artikel beschriebenen Skripts auszuführen. Das Modul Microsoft.RdInfra.RDPowershell funktioniert in PowerShell Core nicht.

Wichtig

Die Migration erstellt nur Dienstobjekte in der Geografie der USA. Wenn Sie versuchen, Ihre Serviceobjekte in eine andere Geografie zu migrieren, wird dies nicht funktionieren. Wenn Ihre Bereitstellung von Azure Virtual Desktop (klassisch) über mehr als 500 Anwendungsgruppen verfügt, können Sie keine Migration durchführen. Sie können nur migrieren, wenn Sie Ihre Umgebung neu erstellen, um die Anzahl der Anwendungsgruppen in Ihrem Microsoft Entra-Mandanten zu reduzieren.

Vorbereiten der PowerShell-Umgebung

Zunächst müssen Sie Ihre PowerShell-Umgebung für den Migrationsprozess vorbereiten.

So bereiten Sie Ihre PowerShell-Umgebung vor:

  1. Stellen Sie zunächst sicher, dass Sie über die neueste Version der Module Az.Desktop Virtualization und Az.Resources verfügen, indem Sie die folgenden Cmdlets ausführen:

    Get-Module Az.Resources
    Get-Module Az.DesktopVirtualization
    https://www.powershellgallery.com/packages/Az.DesktopVirtualization/
    https://www.powershellgallery.com/packages/Az.Resources/
    

    Ist dies nicht der Fall, müssen Sie die Module installieren und importieren, indem Sie diese Cmdlets ausführen:

    Install-module Az.Resources
    Import-module Az.Resources
    Install-module Az.DesktopVirtualization
    Import-module Az.DesktopVirtualization
    
  2. Deinstallieren Sie als Nächstes das aktuelle RDInfra PowerShell-Modul, indem Sie dieses Cmdlet ausführen:

    Uninstall-Module -Name Microsoft.RDInfra.RDPowershell -AllVersions
    
  3. Installieren Sie anschließend das RDPowershell-Modul mit diesem Cmdlet:

    Install-Module -Name Microsoft.RDInfra.RDPowershell -RequiredVersion 1.0.3414.0 -force
    Import-module Microsoft.RDInfra.RDPowershell
    
  4. Wenn Sie alles installiert haben, führen Sie dieses Cmdlet aus, um sicherzustellen, dass Sie über die richtigen Versionen der Module verfügen:

    Get-Module Microsoft.RDInfra.RDPowershell
    
  5. Installieren und importieren Sie nun das Migrationsmodul, indem Sie die folgenden Cmdlets ausführen:

    Install-Module -Name PackageManagement -Repository PSGallery -Force
    Install-Module -Name PowerShellGet -Repository PSGallery -Force
    # Then restart shell
    Install-Module -Name Microsoft.RdInfra.RDPowershell.Migration -AllowClobber
    Import-Module <Full path to the location of the migration module>\Microsoft.RdInfra.RDPowershell.Migration.psd1
    
  6. Melden Sie sich anschließend in Ihrem PowerShell-Fenster bei Azure Virtual Desktop (klassisch) an:

    Add-RdsAccount -DeploymentUrl https://rdbroker.wvd.microsoft.com
    
  7. Melden Sie sich bei Azure Resource Manager an:

    Login-AzAccount
    
  8. Wenn Sie über mehrere Abonnements verfügen, wählen Sie mit diesem Cmdlet das Abonnement aus, zu dem Sie Ihre Ressourcen migrieren möchten:

    Select-AzSubscription -Subscriptionid <subID>
    
  9. Registrieren Sie den Ressourcenanbieter im Azure-Portal für das ausgewählte Abonnement.

  10. Zum Schluss müssen Sie den Anbieter registrieren. Hierfür stehen Ihnen zwei Möglichkeiten zur Verfügung:

    • Wenn Sie PowerShell verwenden möchten, führen Sie dieses Cmdlet aus:

      Register-AzResourceProvider -ProviderNamespace Microsoft.DesktopVirtualization
      
    • Wenn Sie lieber die Azure-Portal verwenden möchten, öffnen und melden Sie sich beim Azure-Portal an, wechseln Sie dann zu Abonnements, und wählen Sie den Namen des Abonnements aus, das Sie verwenden möchten. Wechseln Sie anschließend zum Ressourcenanbieter>Microsoft.DesktopVirtualization , und wählen Sie Erneut registrieren aus. Sie werden noch keine Änderungen an der Benutzeroberfläche feststellen, aber Ihre PowerShell-Umgebung sollte jetzt zum Ausführen des Moduls bereit sein.

Migrieren Azure Virtual Desktop-Ressourcen (klassisch) zu Azure Resource Manager

Nachdem Ihre PowerShell-Umgebung nun bereit ist, können Sie mit dem Migrationsprozess beginnen.

So migrieren Sie Ihre Azure Virtual Desktop (klassisch)-Ressourcen zu Azure Resource Manager:

  1. Wenn Sie vor der Migration verstehen möchten, wie die vorhandenen Classic-Ressourcen neuen Azure Resource Manager-Ressourcen zugeordnet werden, führen Sie dieses Cmdlet aus:

    Get-RdsHostPoolMigrationMapping
    

    Mit Get-RdsHostPoolMigrationMapping können Sie eine CSV-Datei erstellen, die zuordnet, wohin Ihre Ressourcen verschoben werden. Wenn der Name Ihres Mandanten beispielsweise "Contoso" lautet und Sie Ihre Zuordnungsdatei in der Datei "contosouser" speichern möchten, führen Sie ein Cmdlet aus, das wie folgt aussieht:

    Get-RdsHostPoolMigrationMapping -Tenant Contoso -HostPool Office -Location EastUS -OutputFile 'C:\\Users\contosouser\OneDrive - Microsoft\Desktop\mapping.csv'
    
  2. Führen Sie als Nächstes das Cmdlet Start-RdsHostPoolMigration aus, um auszuwählen, ob ein einzelner Hostpool oder alle Hostpools innerhalb eines Mandanten migriert werden sollen.

    Zum Beispiel:

    Start-RdsHostPoolMigration -Tenant Contoso -Location WestUS
    

    Wenn Sie Ihre Ressourcen zu einem bestimmten Hostpool migrieren möchten, geben Sie den Hostpoolnamen an. Wenn Sie beispielsweise den Hostpool mit dem Namen "Office" verschieben möchten, führen Sie einen Befehl wie den folgenden aus:

    Start-RdsHostPoolMigration -Tenant Contoso -HostPool Office -CopyUserAssignments $false -Location EastUS
    

    Wenn Sie keinen Arbeitsbereichsnamen angeben, erstellt das Modul basierend auf dem Mandantennamen automatisch einen für Sie. Wenn Sie jedoch lieber einen bestimmten Arbeitsbereich verwenden möchten, können Sie dessen Ressourcen-ID wie folgt eingeben:

    Start-RdsHostPoolMigration -Tenant Contoso -HostPool Office -CopyUserAssignments -Location EastUS -Workspace <Resource ID of workspacename>
    

    Wenn Sie einen bestimmten Arbeitsbereich verwenden möchten, dessen Ressourcen-ID jedoch nicht kennen, führen Sie dieses Cmdlet aus:

    Get-AzWvdWorkspace -WorkspaceName <workspace> -ResourceGroupName <resource group> |fl
    

    Außerdem müssen Sie einen Benutzerzuweisungsmodus für die vorhandenen Benutzerzuweisungen angeben:

    • Verwenden Sie Kopieren, um alle Benutzerzuweisungen aus Ihren alten Anwendungsgruppen in Azure Resource Manager Anwendungsgruppen zu kopieren. Benutzer können Feeds für beide Versionen ihrer Clients anzeigen.
    • Verwenden Sie "Keine ", wenn Sie die Benutzerzuweisungen nicht ändern möchten. Später können Sie Anwendungsgruppen mit dem Azure-Portal, PowerShell oder der API Benutzer oder Benutzergruppen zuweisen. Benutzer können nur Feeds anzeigen, die die Azure Virtual Desktop-Clients (klassisch) verwenden.

    Sie können pro Abonnement nur 2.000 Benutzerzuweisungen kopieren, daher hängt Ihr Limit davon ab, wie viele Zuweisungen sich bereits in Ihrem Abonnement befinden. Das Modul berechnet das Limit basierend auf der Anzahl der bereits vorhandenen Aufgaben. Wenn Sie nicht über genügend Zuweisungen zum Kopieren verfügen, erhalten Sie die Fehlermeldung "Unzureichendes Rollenzuweisungskontingent zum Kopieren von Benutzerzuweisungen. Führen Sie den Befehl erneut aus, ohne dass die Option -CopyUserAssignments zur Migration ausgeführt wird."

  3. Nachdem Sie die Befehle ausgeführt haben, dauert es bis zu 15 Minuten, bis das Modul die Dienstobjekte erstellt hat. Wenn Sie Benutzerzuweisungen kopiert oder verschoben haben, verlängert sich die Zeit, die das Modul benötigt, um die Einrichtung abzuschließen.

    Nachdem das Cmdlet Start-RdsHostPoolMigration abgeschlossen ist, sollten Sie die folgenden Dinge sehen:

    • Azure Dienstobjekte für den angegebenen Mandanten oder Hostpool.

    • Zwei neue Ressourcengruppen:

      • Eine Ressourcengruppe namens "Mandantenname", die Ihren Arbeitsbereich enthält.

      • Eine Ressourcengruppe mit dem Namen "Tenantname_originalHostPoolName", die den Hostpool und Desktopanwendungsgruppen enthält.

    • Alle Benutzer, die Sie in den neu erstellten Anwendungsgruppen veröffentlicht haben.

    • Virtuelle Computer werden sowohl in vorhandenen als auch in neuen Hostpools verfügbar sein, um Benutzerausfallzeiten während des Migrationsprozesses zu vermeiden. Dadurch können Benutzer eine Verbindung mit derselben Benutzersitzung herstellen.

    Da es sich bei diesen neuen Azure Dienstobjekten um Azure Resource Manager Objekte handelt, kann das Modul keine RBAC-Berechtigungen (rollenbasierte Access Control) oder Diagnoseeinstellungen für sie festlegen. Daher müssen Sie die RBAC-Berechtigungen und -Einstellungen für diese Objekte manuell aktualisieren.

    Sobald das Modul die anfänglichen Benutzerverbindungen validiert hat, können Sie die Anwendungsgruppe bei Bedarf auch für weitere Benutzer oder Benutzergruppen veröffentlichen.

    Hinweis

    Wenn Sie nach der Migration Anwendungsgruppen in eine andere Ressourcengruppe verschieben, nachdem Sie Benutzern Berechtigungen zugewiesen haben, werden alle RBAC-Rollen entfernt. Sie müssen den Benutzern die RBAC-Berechtigungen erneut zuweisen.

  4. Wenn Sie alle Dienstobjekte von Azure Virtual Desktop (klassisch) löschen möchten, führen Sie Complete-RdsHostPoolMigration aus, um den Migrationsprozess abzuschließen. Mit diesem Cmdlet werden alle Azure Virtual Desktop-Objekte (klassisch) gelöscht, sodass nur die neuen Azure-Objekte übrig bleiben. Benutzer können nur den Feed für die neu erstellten Anwendungsgruppen auf ihren Clients anzeigen. Nachdem Sie diesen Befehl ausgeführt haben, können Sie den Mandanten von Azure Virtual Desktop (klassisch) sicher löschen, um den Vorgang abzuschließen.

    Zum Beispiel:

    Complete-RdsHostPoolMigration -Tenant Contoso -Location EastUS
    

    Wenn Sie einen bestimmten Hostpool abschließen möchten, können Sie den Hostpoolnamen in das Cmdlet aufnehmen. Wenn Sie z. B. einen Hostpool mit dem Namen "Office" vervollständigen möchten, verwenden Sie einen Befehl wie den folgenden:

    Complete-RdsHostPoolMigration -Tenant Contoso -HostPool Office -Location EastUS
    

    Dadurch werden alle von Azure Virtual Desktop (klassisch) erstellten Dienstobjekte gelöscht. Es bleiben nur die neuen Azure-Objekte, und Benutzer können nur den Feed für die neu erstellten Anwendungsgruppen auf ihren Clients anzeigen. Nachdem Sie Ihre Migration abgeschlossen haben, müssen Sie den Mandanten in Azure Virtual Desktop (klassisch) explizit löschen.

  5. Wenn Sie Ihre Meinung bezüglich der Migration geändert haben und den Prozess rückgängig machen möchten, führen Sie das Cmdlet Revert-RdsHostPoolMigration aus.

    Zum Beispiel:

    Revert-RdsHostPoolMigration -Tenant Contoso -Location EastUS
    

    Wenn Sie einen bestimmten Hostpool rückgängig machen möchten, können Sie den Hostpoolnamen in den Befehl einschließen. Wenn Sie beispielsweise einen Hostpool mit dem Namen "Office" rückgängig machen möchten, geben Sie Folgendes ein:

    Revert-RdsHostPoolMigration -Tenant Contoso -HostPool Office -Location EastUS
    

    Mit diesem Cmdlet werden alle neu erstellten Azure-Dienstobjekte gelöscht. Ihren Benutzern wird nur der Feed für Azure Virtual Desktop-Objekte (klassisch) in ihren Clients angezeigt.

    Das Cmdlet löscht jedoch nicht den vom Modul erstellten Arbeitsbereich oder die zugehörige Ressourcengruppe. Sie müssen diese Elemente manuell löschen, um sie zu entfernen.

  6. Wenn Sie Ihre Dienstobjekte von Azure Virtual Desktop (klassisch) noch nicht löschen möchten, aber die Migration testen möchten, können Sie Set-RdsHostPoolHidden ausführen.

    Zum Beispiel:

    Set-RdsHostPoolHidden -Tenant Contoso -Hostpool Office -Hidden $true -Location WestUS
    

    Wenn Sie den Status auf "True" festlegen, werden die Ressourcen von Azure Virtual Desktop (klassisch) ausgeblendet. Wenn der Wert auf "false" festgelegt ist, werden die Ressourcen für Ihre Benutzer angezeigt.

    Der Parameter -Hostpool ist optional. Sie können diesen Parameter verwenden, wenn Sie einen bestimmten Hostpool von Azure Virtual Desktop (klassisch) ausblenden möchten.

    Mit diesem Cmdlet werden der Benutzerfeed und die Dienstobjekte von Azure Virtual Desktop (klassisch) ausgeblendet, statt gelöscht zu werden. Dies wird jedoch in der Regel nur zu Testzwecken verwendet und zählt nicht als abgeschlossene Migration. Um die Migration abzuschließen, müssen Sie den Befehl Complete-RdsHostPoolMigration ausführen. Andernfalls stellen Sie Ihre Bereitstellung rückgängig, indem Sie Revert-RdsHostPoolMigration ausführen.

Problembehandlung für die automatische Migration

In diesem Abschnitt wird erläutert, wie häufig auftretende Probleme im Migrationsmodul behoben werden.

Ich kann nicht auf den Mandanten zugreifen

Versuchen Sie zunächst diese beiden Dinge:

  • Stellen Sie sicher, dass Ihr Administratorkonto über die erforderlichen Berechtigungen für den Zugriff auf den Mandanten verfügt.
  • Versuchen Sie , Get-RdsTenant für den Mandanten auszuführen.

Wenn diese beiden Dinge funktionieren, führen Sie das Cmdlet Set-RdsMigrationContext aus, um den RDS-Kontext und den ADAL-Kontext für Ihre Migration festzulegen:

  1. Erstellen Sie den RDS-Kontext, indem Sie das Cmdlet Add-RdsAccount ausführen.

  2. Suchen Sie den RDS-Kontext in der globalen Variablen $rdMgmtContext.

  3. Suchen Sie den ADAL-Kontext in der globalen Variablen $AdalContext.

  4. Führen Sie Set-RdsMigrationContext mit den gefundenen Variablen in diesem Format aus:

    Set-RdsMigrationContext -RdsContext <rdscontext> -AdalContext <adalcontext>
    

Nächste Schritte

Wenn Sie stattdessen erfahren möchten, wie Sie Ihre Bereitstellung manuell migrieren, lesen Sie Manuelle Migration von Azure Virtual Desktop (klassisch).

Nach der Migration können Sie sich in unseren Tutorials mit der Funktionsweise von Azure Virtual Desktop vertraut machen. Weitere Informationen zu erweiterten Verwaltungsfunktionen finden Sie unter Erweitern eines vorhandenen Hostpools und Anpassen von RDP-Eigenschaften.

Weitere Informationen zu Dienstobjekten finden Sie unter Azure Virtual Desktop-Umgebung.