Dela via


Migrera automatiskt från Azure Virtual Desktop (klassisk)

Med migreringsmodulverktyget kan du automatiskt migrera din organisation från Azure Virtual Desktop (klassisk) till Azure Virtual Desktop. Den här artikeln visar hur du använder verktyget.

Förutsättningar

Innan du använder migreringsmodulen måste du se till att du har följande saker redo:

  • En Azure-prenumeration där du skapar nya Azure-tjänstobjekt.

  • Du måste tilldelas rollen Deltagare för att skapa Azure-objekt i din prenumeration och rollen Administratör för användaråtkomst för att tilldela användare till programgrupper.

  • Minst behörigheter för RDS-deltagare (Fjärrskrivbordstjänster) för en RDS-klientorganisation eller de specifika värdpooler som du migrerar.

  • Den senaste versionen av PowerShell-modulen Microsoft.RdInfra.RDPowershell.

  • Den senaste versionen av PowerShell-modulen Az.DesktopVirtualization.

  • Den senaste versionen av Az.Resources PowerShell-modulen.

  • Installera migreringsmodulen på datorn.

  • PowerShell eller PowerShell ISE för att köra skripten som du ser i den här artikeln. Modulen Microsoft.RdInfra.RDPowershell fungerar inte i PowerShell Core.

Viktigt!

Migrering skapar endast tjänstobjekt i den amerikanska geografin. Om du försöker migrera dina tjänstobjekt till ett annat geografiskt område fungerar det inte. Om du har fler än 500 programgrupper i din Azure Virtual Desktop-distribution (klassisk) kan du inte migrera. Du kan bara migrera om du återskapar din miljö för att minska antalet programgrupper i din Microsoft Entra-klientorganisation.

Förbereda Din PowerShell-miljö

Först måste du förbereda Din PowerShell-miljö för migreringsprocessen.

Så här förbereder du Din PowerShell-miljö:

  1. Innan du börjar kontrollerar du att du har den senaste versionen av modulerna Az.Desktop Virtualization och Az.Resources genom att köra följande cmdletar:

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

    Om du inte gör det måste du installera och importera modulerna genom att köra dessa cmdletar:

    Install-module Az.Resources
    Import-module Az.Resources
    Install-module Az.DesktopVirtualization
    Import-module Az.DesktopVirtualization
    
  2. Avinstallera sedan den aktuella RDInfra PowerShell-modulen genom att köra den här cmdleten:

    Uninstall-Module -Name Microsoft.RDInfra.RDPowershell -AllVersions
    
  3. Därefter installerar du RDPowershell-modulen med den här cmdleten:

    Install-Module -Name Microsoft.RDInfra.RDPowershell -RequiredVersion 1.0.3414.0 -force
    Import-module Microsoft.RDInfra.RDPowershell
    
  4. När du har installerat allt kör du den här cmdleten för att kontrollera att du har rätt versioner av modulerna:

    Get-Module Microsoft.RDInfra.RDPowershell
    
  5. Nu ska vi installera och importera migreringsmodulen genom att köra dessa cmdletar:

    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. När du är klar loggar du in på Azure Virtual Desktop (klassisk) i PowerShell-fönstret:

    Add-RdsAccount -DeploymentUrl https://rdbroker.wvd.microsoft.com
    
  7. Logga in på Azure Resource Manager:

    Login-AzAccount
    
  8. Om du har flera prenumerationer väljer du den som du vill migrera dina resurser till med den här cmdleten:

    Select-AzSubscription -Subscriptionid <subID>
    
  9. Registrera resursprovidern i Azure-portalen för den valda prenumerationen.

  10. Slutligen måste du registrera providern. Det finns två sätt att göra detta:

    • Om du vill använda PowerShell kör du den här cmdleten:

      Register-AzResourceProvider -ProviderNamespace Microsoft.DesktopVirtualization
      
    • Om du hellre vill använda Azure-portalen öppnar du och loggar in på Azure-portalen, går sedan till Prenumerationer och väljer namnet på den prenumeration som du vill använda. Därefter går du till Resursprovidern>Microsoft.DesktopVirtualization och väljer Registrera igen. Du kommer inte att se någon ändring i användargränssnittet ännu, men din PowerShell-miljö bör nu vara redo att köra modulen.

Migrera Azure Virtual Desktop-resurser (klassiska) till Azure Resource Manager

Nu när Din PowerShell-miljö är klar kan du påbörja migreringsprocessen.

Så här migrerar du dina azure virtual desktop-resurser (klassiska) till Azure Resource Manager:

  1. Innan du migrerar kör du den här cmdleten om du vill förstå hur befintliga klassiska resurser mappas till nya Azure Resource Manager-resurser:

    Get-RdsHostPoolMigrationMapping
    

    Med Get-RdsHostPoolMigrationMapping kan du skapa en CSV-fil som mappar vart dina resurser ska gå. Om din klientorganisations namn till exempel är "Contoso" och du vill lagra mappningsfilen i filen "contosouser" skulle du köra en cmdlet som ser ut så här:

    Get-RdsHostPoolMigrationMapping -Tenant Contoso -HostPool Office -Location EastUS -OutputFile 'C:\\Users\contosouser\OneDrive - Microsoft\Desktop\mapping.csv'
    
  2. Kör sedan cmdleten Start-RdsHostPoolMigration för att välja om du vill migrera en enda värdpool eller alla värdpooler i en klientorganisation.

    Till exempel:

    Start-RdsHostPoolMigration -Tenant Contoso -Location WestUS
    

    Om du vill migrera dina resurser till en specifik värdpool ska du ta med namnet på värdpoolen. Om du till exempel vill flytta värdpoolen med namnet "Office" kör du ett kommando som liknar detta:

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

    Om du inte anger något namn på arbetsytan skapar modulen automatiskt ett åt dig baserat på klientorganisationens namn. Men om du föredrar att använda en specifik arbetsyta kan du ange dess resurs-ID så här:

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

    Om du vill använda en specifik arbetsyta men inte känner till dess resurs-ID kör du den här cmdleten:

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

    Du måste också ange ett användartilldelningsläge för befintliga användartilldelningar:

    • Använd Kopiera för att kopiera alla användartilldelningar från dina gamla programgrupper till Azure Resource Manager-programgrupper. Användarna kommer att kunna se feeds för båda versionerna av sina klienter.
    • Använd Ingen om du inte vill ändra användartilldelningarna. Senare kan du tilldela användare eller användargrupper till programgrupper med Azure-portalen, PowerShell eller API:et. Användarna kan bara se feeds med hjälp av Azure Virtual Desktop-klienterna (klassisk).

    Du kan bara kopiera 2 000 användartilldelningar per prenumeration, så din gräns beror på hur många tilldelningar som redan finns i din prenumeration. Modulen beräknar gränsen baserat på hur många tilldelningar du redan har. Om du inte har tillräckligt med tilldelningar för att kopiera får du ett felmeddelande med texten "Otillräcklig rolltilldelningskvot för att kopiera användartilldelningar. Kör kommandot igen utan växeln -CopyUserAssignments för att migrera."

  3. När du har kört kommandona tar det upp till 15 minuter för modulen att skapa tjänstobjekten. Om du kopierade eller flyttade några användartilldelningar kommer det att lägga till den tid det tar för modulen att slutföra konfigurationen av allt.

    När cmdleten Start-RdsHostPoolMigration är klar bör du se följande:

    • Azure-tjänstobjekt för den klientorganisation eller värdpool som du har angett.

    • Två nya resursgrupper:

      • En resursgrupp med namnet "Tenantname", som innehåller din arbetsyta.

      • En resursgrupp med namnet "Tenantname_originalHostPoolName", som innehåller värdpoolen och skrivbordsprogramgrupper.

    • Alla användare som du har publicerat till de nyligen skapade programgrupperna.

    • Virtuella datorer kommer att vara tillgängliga i både befintliga och nya värdpooler för att undvika användaravbrott under migreringsprocessen. På så sätt kan användarna ansluta till samma användarsession.

    Eftersom dessa nya Azure-tjänstobjekt är Azure Resource Manager-objekt kan modulen inte ange behörigheter för rollbaserad åtkomstkontroll (RBAC) eller diagnostikinställningar för dem. Därför måste du uppdatera RBAC-behörigheterna och inställningarna för dessa objekt manuellt.

    När modulen har verifierat de första användaranslutningarna kan du även publicera programgruppen till fler användare eller användargrupper, om du vill.

    Kommentar

    Om du efter migreringen flyttar programgrupper till en annan resursgrupp när du har tilldelat behörigheter till användare tas alla RBAC-roller bort. Du måste omtilldela användarnas RBAC-behörigheter igen.

  4. Om du vill ta bort alla Azure Virtual Desktop-tjänstobjekt (klassiska) kör du Complete-RdsHostPoolMigration för att slutföra migreringsprocessen. Den här cmdleten tar bort alla Azure Virtual Desktop-objekt (klassiska) och lämnar endast de nya Azure-objekten. Användarna kan bara se feeden för de nyligen skapade programgrupperna på sina klienter. När det här kommandot är klart kan du ta bort Azure Virtual Desktop-klienten (klassisk) på ett säkert sätt för att slutföra processen.

    Till exempel:

    Complete-RdsHostPoolMigration -Tenant Contoso -Location EastUS
    

    Om du vill slutföra en specifik värdpool kan du inkludera värdpoolens namn i cmdleten. Om du till exempel vill slutföra en värdpool med namnet "Office" använder du ett kommando som liknar detta:

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

    Detta tar bort alla tjänstobjekt som skapats av Azure Virtual Desktop (klassisk). Du får bara de nya Azure-objekten och användarna kan bara se flödet för de nyligen skapade programgrupperna på sina klienter. När du har slutfört migreringen måste du uttryckligen ta bort klientorganisationen i Azure Virtual Desktop (klassisk).

  5. Om du har ändrat dig om migrering och vill återställa processen kör du cmdleten Revert-RdsHostPoolMigration .

    Till exempel:

    Revert-RdsHostPoolMigration -Tenant Contoso -Location EastUS
    

    Om du vill återställa en specifik värdpool kan du inkludera namnet på värdpoolen i kommandot . Om du till exempel vill återställa en värdpool med namnet "Office" anger du något liknande:

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

    Den här cmdleten tar bort alla nyligen skapade Azure-tjänstobjekt. Användarna ser bara flödet för Azure Virtual Desktop-objekt (klassiska) i sina klienter.

    Cmdleten tar dock inte bort arbetsytan som modulen skapade eller dess associerade resursgrupp. Du måste ta bort objekten manuellt för att bli av med dem.

  6. Om du inte vill ta bort dina Azure Virtual Desktop-tjänstobjekt än, men vill testa migreringen, kan du köra Set-RdsHostPoolHidden.

    Till exempel:

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

    Om statusen anges till "true" döljs resurserna för Azure Virtual Desktop (klassisk). Om du anger "false" visas resurserna för dina användare.

    Parametern -Hostpool är valfri. Du kan använda den här parametern om det finns en specifik Azure Virtual Desktop-värdpool (klassisk) som du vill dölja.

    Den här cmdleten döljer användarflödet och tjänstobjekten för Azure Virtual Desktop (klassisk) i stället för att ta bort dem. Detta används dock vanligtvis bara för testning och räknas inte som en slutförd migrering. För att slutföra migreringen måste du köra kommandot Complete-RdsHostPoolMigration . Annars återställer du distributionen genom att köra Revert-RdsHostPoolMigration.

Felsöka automatisk migrering

I det här avsnittet beskrivs hur du löser vanliga problem i migreringsmodulen.

Jag kan inte komma åt klientorganisationen

Prova först följande två saker:

  • Kontrollera att administratörskontot har de behörigheter som krävs för att få åtkomst till klientorganisationen.
  • Prova att köra Get-RdsTenant på klientorganisationen.

Om dessa två saker fungerar kan du prova att köra cmdleten Set-RdsMigrationContext för att ange RDS-kontexten och ADAL-kontexten för migreringen:

  1. Skapa RDS-kontexten genom att köra cmdleten Add-RdsAccount .

  2. Hitta RDS-kontexten i den globala variabeln $rdMgmtContext.

  3. Hitta ADAL-kontexten i den globala variabeln $AdalContext.

  4. Kör Set-RdsMigrationContext med variablerna som du hittade i det här formatet:

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

Nästa steg

Om du vill lära dig hur du migrerar distributionen manuellt i stället kan du läsa Migrera manuellt från Azure Virtual Desktop (klassisk).

När du har migrerat kan du lära dig hur Azure Virtual Desktop fungerar genom att läsa våra självstudier. Lär dig mer om avancerade hanteringsfunktioner i Expandera en befintlig värdpool och Anpassa RDP-egenskaper.

Mer information om tjänstobjekt finns i Azure Virtual Desktop-miljön.