Sdílet prostřednictvím


Migrace virtuálních počítačů VMware do Azure (bez agentů) – PowerShell

V tomto článku se dozvíte, jak migrovat zjištěné virtuální počítače VMware pomocí metody bez agentů pomocí Azure PowerShellu pro migraci a modernizaci.

Získáte informace pro:

  • Načtení zjištěných virtuálních počítačů VMware v projektu Azure Migrate
  • Spusťte replikaci virtuálních počítačů.
  • Aktualizujte vlastnosti pro replikaci virtuálních počítačů.
  • Monitorování replikace
  • Spusťte testovací migraci, abyste měli jistotu, že všechno funguje podle očekávání.
  • Spusťte úplnou migraci virtuálního počítače.

Poznámka:

Kurzy ukazují nejjednodušší cestu nasazení pro scénář, abyste mohli rychle nastavit testování konceptu. Kurzy používají výchozí možnosti, pokud je to možné, a nezobrazují všechna možná nastavení a cesty.

Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

Požadavky

Než začnete s tímto kurzem, musíte mít splněné následující požadavky:

Instalace modulu Azure Migrate PowerShellu

Modul Azure Migrate PowerShell je k dispozici jako součást Azure PowerShellu (Az). Spuštěním Get-InstalledModule -Name Az.Migrate příkazu zkontrolujte, jestli je na vašem počítači nainstalovaný modul PowerShellu služby Azure Migrate.

Přihlaste se ke svému předplatnému Azure.

Přihlaste se k předplatnému Azure pomocí rutiny Connect-AzAccount .

Connect-AzAccount

Vybrat předplatné Azure

Pomocí rutiny Get-AzSubscription získáte seznam předplatných Azure, ke kterým máte přístup. Pomocí rutiny Set-AzContext vyberte předplatné Azure, se kterým má váš projekt Azure Migrate pracovat.

Set-AzContext -SubscriptionId aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e

Načtení projektu Azure Migrate

Projekt Azure Migrate se používá k ukládání metadat zjišťování, hodnocení a migrace shromážděných z prostředí, které posuzujete nebo migrujete. V projektu můžete sledovat zjištěné prostředky, orchestrovat posouzení a provádět migrace.

V rámci požadavků jste už vytvořili projekt Azure Migrate. K načtení podrobností o projektu Azure Migrate použijte rutinu Get-AzMigrateProject . Musíte zadat název projektu Azure Migrate (Name) a název skupiny prostředků projektu Azure Migrate (ResourceGroupName).

# Get resource group of the Azure Migrate project
$ResourceGroup = Get-AzResourceGroup -Name MyResourceGroup
# Get details of the Azure Migrate project
$MigrateProject = Get-AzMigrateProject -Name MyMigrateProject -ResourceGroupName $ResourceGroup.ResourceGroupName
# View Azure Migrate project details
Write-Output $MigrateProject

Načtení zjištěných virtuálních počítačů v projektu Azure Migrate

Azure Migrate a Moderne používají jednoduché zařízení Azure Migrate. V rámci požadavků jste nasadili zařízení Azure Migrate jako virtuální počítač VMware.

Pokud chcete načíst konkrétní virtuální počítač VMware v projektu Azure Migrate, zadejte název projektu Azure Migrate (ProjectName), skupinu prostředků projektu Azure Migrate (ResourceGroupName) a název virtuálního počítače (DisplayName).

# Get a specific VMware VM in an Azure Migrate project
$DiscoveredServer = Get-AzMigrateDiscoveredServer -ProjectName $MigrateProject.Name -ResourceGroupName $ResourceGroup.ResourceGroupName -DisplayName MyTestVM | Format-Table DisplayName, Name, Type

# View discovered server details
Write-Output $DiscoveredServer

Tento virtuální počítač migrujeme v rámci tohoto kurzu.

Pomocí parametrů ResourceGroupName můžete také načíst všechny virtuální počítače VMware v projektu ProjectName Azure Migrate.

# Get all VMware VMs in an Azure Migrate project
$DiscoveredServers = Get-AzMigrateDiscoveredServer -ProjectName $MigrateProject.Name -ResourceGroupName $ResourceGroup.ResourceGroupName

Pokud máte v projektu Azure Migrate více zařízení, můžete pomocí parametru ProjectName, ResourceGroupNamea ApplianceName načíst všechny virtuální počítače zjištěné pomocí konkrétního zařízení Azure Migrate.

# Get all VMware VMs discovered by an Azure Migrate Appliance in an Azure Migrate project
$DiscoveredServers = Get-AzMigrateDiscoveredServer -ProjectName $MigrateProject.Name -ResourceGroupName $ResourceGroup.ResourceGroupName -ApplianceName MyMigrateAppliance

Inicializace infrastruktury replikace

Migrace a modernizace používá k migraci virtuálních počítačů více prostředků Azure. Migrace a modernizace zřídí následující zdroje ve stejné skupině prostředků jako projekt.

  • Service Bus: Migrace a modernizace používá service bus k odesílání zpráv orchestrace replikace do zařízení.
  • Účet úložiště brány: Migrace a modernizace používá účet úložiště brány k ukládání informací o stavu replikovaných virtuálních počítačů.
  • Účet úložiště protokolů: Zařízení Azure Migrate nahraje protokoly replikace virtuálních počítačů do účtu úložiště protokolů. Azure Migrate použije informace o replikaci na disky spravované replikou.
  • Trezor klíčů: Zařízení Azure Migrate používá trezor klíčů ke správě připojovací řetězec pro sběrnici Service Bus a přístupové klíče pro účty úložiště používané při replikaci.

Před replikací prvního virtuálního počítače v projektu Azure Migrate spusťte následující příkaz, který zřídí infrastrukturu replikace. Tento příkaz zřídí a nakonfiguruje předchozí prostředky, abyste mohli začít migrovat virtuální počítače VMware.

Poznámka:

Jeden projekt Azure Migrate podporuje migrace pouze do jedné oblasti Azure. Po spuštění tohoto skriptu nemůžete změnit cílovou oblast, do které chcete migrovat virtuální počítače VMware. Pokud v projektu Azure Migrate nakonfigurujete nové zařízení, musíte ho Initialize-AzMigrateReplicationInfrastructure spustit.

V tomto článku inicializujeme infrastrukturu replikace, abychom mohli migrovat virtuální počítače do Central US oblasti.

# Initialize replication infrastructure for the current Migrate project
Initialize-AzMigrateReplicationInfrastructure -ResourceGroupName $ResourceGroup.ResourceGroupName -ProjectName $MigrateProject. Name -Scenario agentlessVMware -TargetRegion "CentralUS" 

Replikace virtuálních počítačů

Po dokončení zjišťování a inicializace infrastruktury replikace můžete zahájit replikaci virtuálních počítačů VMware do Azure. Můžete spustit až 500 replikací současně.

K určení vlastností replikace použijte následující tabulku.

Parametr Typ Popis
Cílové předplatné a skupina prostředků Povinné Zadejte předplatné a skupinu prostředků, do kterého se má virtuální počítač migrovat, zadáním ID skupiny prostředků pomocí parametru TargetResourceGroupId .
Cílová virtuální síť a podsíť Povinné Zadejte ID instance služby Azure Virtual Network a název podsítě, do které se má virtuální počítač migrovat pomocí TargetNetworkId parametrů a TargetSubnetName parametrů.
ID počítače Povinné Zadejte ID zjištěného počítače, který je potřeba replikovat a migrovat. Slouží InputObject k určení zjištěného objektu virtuálního počítače pro replikaci.
Název cílového virtuálního počítače Povinné Zadejte název virtuálního počítače Azure, který se má vytvořit pomocí parametru TargetVMName .
Cílová velikost virtuálního počítače Povinné Zadejte velikost virtuálního počítače Azure, která se má použít pro replikaci virtuálního počítače pomocí parametru TargetVMSize . Pokud chcete například migrovat virtuální počítač do D2_v2 virtuálního počítače v Azure, zadejte hodnotu jako TargetVMSize Standard_D2_v2.
Licence Povinné Pokud chcete použít Zvýhodněné hybridní využití Azure pro počítače s Windows Serverem, které jsou pokryté aktivními předplatnými Software Assurance nebo Windows Serveru, zadejte hodnotu parametru LicenseType jako WindowsServer. V opačném případě zadejte hodnotu noLicenseType.
Disk OS Povinné Zadejte jedinečný identifikátor disku, který má spouštěcí zavaděč operačního systému a instalační program. ID disku, které se má použít, je vlastnost jedinečného identifikátoru (UUID) disku načteného pomocí rutiny Get-AzMigrateDiscoveredServer .
Typ disku Povinné Zadejte typ disku, který se má použít.
Redundance infrastruktury Volitelné Určete možnost redundance infrastruktury následujícím způsobem:

- Zóna dostupnosti: Připne migrovaný počítač do konkrétní zóny dostupnosti v dané oblasti. Tuto možnost použijte k distribuci serverů, které tvoří aplikační vrstvu s více uzly napříč zónami dostupnosti. Tato možnost je dostupná jenom v případě, že cílová oblast vybraná pro migraci podporuje zóny dostupnosti. Pokud chcete použít zóny dostupnosti, zadejte hodnotu zóny dostupnosti pro TargetAvailabilityZone parametr.
- Skupina dostupnosti: Umístí migrovaný počítač do skupiny dostupnosti. Vybraná cílová skupina prostředků musí mít k použití této možnosti jednu nebo více skupin dostupnosti. Pokud chcete použít sadu dostupnosti, zadejte ID skupiny dostupnosti pro TargetAvailabilitySet parametr.
Účet diagnostického úložiště spouštění Volitelné Pokud chcete použít účet diagnostického úložiště spouštění, zadejte ID parametru TargetBootDiagnosticStorageAccount .
– Účet úložiště používaný pro diagnostiku spouštění by měl být ve stejném předplatném, na které migrujete virtuální počítače.
– Ve výchozím nastavení není pro tento parametr nastavena žádná hodnota.
Značky Volitelné Přidejte značky k migrovaným virtuálním počítačům, diskům a síťovým kartám.
Slouží Tag k přidání značek k virtuálním počítačům, diskům a síťovým kartám nebo:
– Slouží VMTag k přidání značek do migrovaných virtuálních počítačů.
– Slouží DiskTag k přidání značek na disky.
- Slouží NicTag k přidání značek do síťových rozhraní.
Přidejte například požadované značky do proměnné $tags a předejte proměnnou v požadovaném parametru: $tags = @{Organization=”Contoso”}.

Replikace virtuálních počítačů se všemi disky

V tomto kurzu replikujeme všechny disky zjištěného virtuálního počítače a zadáme nový název virtuálního počítače v Azure. Jako disk s operačním systémem určíme první disk zjištěného serveru a všechny disky migrujeme jako hdd úrovně Standard. Disk s operačním systémem je disk, který obsahuje spouštěcí zavaděč a instalační program operačního systému. Rutina vrátí úlohu, kterou je možné sledovat pro monitorování stavu operace.

# Retrieve the resource group that you want to migrate to
$TargetResourceGroup = Get-AzResourceGroup -Name MyTargetResourceGroup
# Retrieve the Azure virtual network and subnet that you want to migrate to
$TargetVirtualNetwork = Get-AzVirtualNetwork -Name MyVirtualNetwork
# Start replication for a discovered VM in an Azure Migrate project
$MigrateJob =  New-AzMigrateServerReplication -InputObject $DiscoveredServer -TargetResourceGroupId $TargetResourceGroup.ResourceId -TargetNetworkId $TargetVirtualNetwork.Id -LicenseType NoLicenseType -OSDiskID $DiscoveredServer.Disk[0].Uuid -TargetSubnetName $TargetVirtualNetwork.Subnets[0].Name -DiskType Standard_LRS -TargetVMName MyMigratedTestVM -TargetVMSize Standard_DS2_v2
# Track job status to check for completion
while (($MigrateJob.State -eq 'InProgress') -or ($MigrateJob.State -eq 'NotStarted')){
        #If the job hasn't completed, sleep for 10 seconds before checking the job status again
        sleep 10;
        $MigrateJob = Get-AzMigrateJob -InputObject $MigrateJob
}
#Check if the Job completed successfully. The updated job state of a successfully completed job should be "Succeeded".
Write-Output $MigrateJob.State

Replikace virtuálních počítačů s vybranými disky

Disky zjištěného virtuálního počítače můžete také selektivně replikovat pomocí rutiny New-AzMigrateDiskMapping a poskytnout ji jako vstup parametru DiskToInclude v rutině New-AzMigrateServerReplication. Pomocí rutiny New-AzMigrateDiskMapping můžete také určit různé cílové typy disků pro každý jednotlivý disk, který se má replikovat.

Zadejte hodnoty pro následující parametry rutiny New-AzMigrateDiskMapping :

  • DiskId: Zadejte jedinečný identifikátor disku, který se má migrovat. ID disku, které se má použít, je vlastnost UUID disku načteného pomocí rutiny Get-AzMigrateDiscoveredServer .
  • IsOSDisk: Určete true , jestli se jedná o disk s operačním systémem virtuálního počítače. V opačném případě zadejte false.
  • DiskType: Zadejte typ disku, který se má použít v Azure.

V následujícím příkladu replikujeme pouze dva disky zjištěného virtuálního počítače. Určíme disk s operačním systémem a pro replikaci jednotlivých disků použijeme různé typy disků. Rutina vrátí úlohu, kterou je možné sledovat pro monitorování stavu operace.

# View disk details of the discovered server
Write-Output $DiscoveredServer.Disk
# Create a new disk mapping for the disks to be replicated
$DisksToReplicate = @()
$OSDisk = New-AzMigrateDiskMapping -DiskID $DiscoveredServer.Disk[0].Uuid -DiskType StandardSSD_LRS -IsOSDisk true
$DataDisk = New-AzMigrateDiskMapping -DiskID $DiscoveredServer.Disk[1].Uuid -DiskType Premium_LRS -IsOSDisk false

$DisksToReplicate += $OSDisk
$DisksToReplicate += $DataDisk
# Retrieve the resource group that you want to migrate to
$TargetResourceGroup = Get-AzResourceGroup -Name MyTargetResourceGroup
# Retrieve the Azure virtual network and subnet that you want to migrate to
$TargetVirtualNetwork = Get-AzVirtualNetwork -Name MyVirtualNetwork
# Start replication for the VM
$MigrateJob =  New-AzMigrateServerReplication -InputObject $DiscoveredServer -TargetResourceGroupId $TargetResourceGroup.ResourceId -TargetNetworkId $TargetVirtualNetwork.Id -LicenseType NoLicenseType -DiskToInclude $DisksToReplicate -TargetSubnetName $TargetVirtualNetwork.Subnets[0].Name -TargetVMName MyMigratedTestVM -TargetVMSize Standard_DS2_v2
# Track job status to check for completion
while (($MigrateJob.State -eq 'InProgress') -or ($MigrateJob.State -eq 'NotStarted')){
        #If the job hasn't completed, sleep for 10 seconds before checking the job status again
        sleep 10;
        $MigrateJob = Get-AzMigrateJob -InputObject $MigrateJob
}
# Check if the Job completed successfully. The updated job state of a successfully completed job should be "Succeeded".
Write-Output $MigrateJob.State

Monitorování replikace

K replikaci dochází v následujících případech:

  • Po úspěšném dokončení úlohy spuštění replikace zahájí počítače počáteční replikaci do Azure.
  • Během počáteční replikace se vytvoří snímek virtuálního počítače. Disková data ze snímku se replikují na disky spravované replikou v Azure.
  • Po dokončení počáteční replikace začne rozdílová replikace. Přírůstkové změny místních disků se pravidelně replikují na replikované disky v Azure.

Stav replikace můžete sledovat pomocí rutiny Get-AzMigrateServerReplication .

# List replicating VMs and filter the result for selecting a replicating VM. This cmdlet will not return all properties of the replicating VM.
$ReplicatingServer = Get-AzMigrateServerReplication -ProjectName $MigrateProject.Name -ResourceGroupName $ResourceGroup.ResourceGroupName -MachineName MyTestVM
# Retrieve all properties of a replicating VM 
$ReplicatingServer = Get-AzMigrateServerReplication -TargetObjectID $ReplicatingServer.Id

Ve výstupu můžete sledovat vlastnosti Popis stavu migrace a stavu migrace.

  • Pro počáteční replikaci jsou InitialSeedingInProgress hodnoty vlastností Popis stavu migrace a stavu migrace a Initial replicationv uvedeném pořadí.
  • Během rozdílové replikace jsou hodnoty vlastností Migrovat stav a Popis stavu migrace a Ready to migratev uvedeném Replicating pořadí.
  • Po dokončení migrace budou Migration succeeded hodnoty vlastností Popis stavu migrace a stavu migrace a Migratedv uvedeném pořadí.
AllowedOperation            : {DisableMigration, TestMigrate, Migrate}
CurrentJobId                : /Subscriptions/xxx/resourceGroups/xxx/providers/Micr
                              osoft.RecoveryServices/vaults/xxx/replicationJobs/None
CurrentJobName              : None
CurrentJobStartTime         : 1/1/1753 1:01:01 AM
EventCorrelationId          : 9d435c55-4660-41a5-a8ed-dd74213d85fa
Health                      : Normal
HealthError                 : {}
Id                          : /Subscriptions/xxx/resourceGroups/xxx/providers/Micr
                              osoft.RecoveryServices/vaults/xxx/replicationFabrics/xxx/replicationProtectionContainers/xxx/
                              replicationMigrationItems/10-150-8-52-b090bef3-b733-5e34-bc8f-eb6f2701432a_5009e941-3e40-
                              39b2-1e14-f90584522703
LastTestMigrationStatus     :
LastTestMigrationTime       :
Location                    :
MachineName                 : MyTestVM
MigrationState              : InitialSeedingInProgress
MigrationStateDescription   : Initial replication
Name                        : 10-150-8-52-b090bef3-b733-5e34-bc8f-eb6f2701432a_5009e941-3e40-39b2-1e14-f90584522703
PolicyFriendlyName          : xxx
PolicyId                    : /Subscriptions/xxx/resourceGroups/xxx/providers/Micr
                              osoft.RecoveryServices/vaults/xxx/replicationPolicies/xxx
ProviderSpecificDetail      : Microsoft.Azure.PowerShell.Cmdlets.Migrate.Models.Api20180110.VMwareCbtMigrationDetails
TestMigrateState            : None
TestMigrateStateDescription : None
Type                        : Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems

Podrobnosti o průběhu replikace získáte spuštěním následující rutiny:

Write-Output $replicatingserver.ProviderSpecificDetail

Průběh počáteční replikace můžete sledovat pomocí vlastností Procento počátečního průběhu počátečního seedingu ve výstupu.

    "DataMoverRunAsAccountId": "/subscriptions/xxx/resourceGroups/xxx/providers/Microsoft.OffAzure/VMwareSites/xxx/runasaccounts/xxx",
    "FirmwareType":  "BIOS",
    "InitialSeedingProgressPercentage": 20,
    "InstanceType":  "VMwareCbt",
    "LastRecoveryPointReceived":  "\/Date(1601733591427)\/",
    "LicenseType":  "NoLicenseType",
    "MigrationProgressPercentage":  null,
    "MigrationRecoveryPointId":  null,
    "OSType":  "Windows",
    "PerformAutoResync":  "true",

K replikaci dochází v následujících případech:

  • Po úspěšném dokončení úlohy spuštění replikace zahájí počítače počáteční replikaci do Azure.
  • Během počáteční replikace se vytvoří snímek virtuálního počítače. Disková data ze snímku se replikují na disky spravované replikou v Azure.
  • Po dokončení počáteční replikace začne rozdílová replikace. Přírůstkové změny místních disků se pravidelně replikují na replikované disky v Azure.

Načtení stavu úlohy

Stav úlohy můžete monitorovat pomocí rutiny Get-AzMigrateJob .

# Retrieve the updated status for a job
$job = Get-AzMigrateJob -InputObject $job

Aktualizace vlastností replikujícího virtuálního počítače

Migrace a modernizace umožňuje změnit cílové vlastnosti, jako je název, velikost, skupina prostředků, konfigurace síťové karty atd., pro replikující virtuální počítač.

Pro virtuální počítač je možné aktualizovat následující vlastnosti.

Parametr Typ Popis
název virtuálního počítače Volitelné Zadejte název virtuálního počítače Azure, který se má vytvořit pomocí parametru TargetVMName .
Velikost virtuálního počítače Volitelné Zadejte velikost virtuálního počítače Azure, která se má použít pro replikaci virtuálního počítače pomocí parametru TargetVMSize . Pokud chcete například migrovat virtuální počítač do D2_v2 virtuálního počítače v Azure, zadejte hodnotu jako TargetVMSize Standard_D2_v2.
Virtuální síť Volitelné Zadejte ID virtuální sítě Azure, do které se má virtuální počítač migrovat pomocí parametru TargetNetworkId .
Skupina prostředků Volitelné Konfiguraci IC je možné zadat pomocí rutiny New-AzMigrateNicMapping . Objekt se pak předá vstupu parametru NicToUpdate v rutině Set-AzMigrateServerReplication .

- Změna přidělování IP adres: Pokud chcete zadat statickou IP adresu síťové karty, zadejte adresu IPv4, která se použije jako statická IP adresa virtuálního počítače pomocí parametru TargetNicIP . Pokud chcete dynamicky přiřadit IP adresu síťové karty, zadejte auto jako hodnotu parametru TargetNicIP .
– Pomocí hodnot Primarynebo DoNotCreate parametru TargetNicSelectionType určete, Secondary jestli má být síťová karta primární, sekundární nebo nevytvořená na migrovaném virtuálním počítači. Jako primární síťovou kartu pro virtuální počítač je možné zadat pouze jednu síťovou kartu.
– Pokud chcete vytvořit primární síťovou kartu, musíte také zadat další síťové karty, které by měly být na migrovaném virtuálním počítači sekundární nebo se nevytvořily.
– Pokud chcete změnit podsíť síťové karty, zadejte název podsítě pomocí parametru TargetNicSubnet .
Síťové rozhraní Volitelné Zadejte název virtuálního počítače Azure, který se má vytvořit pomocí parametru TargetVMName .
Availability zone Volitelné Pokud chcete použít zóny dostupnosti, zadejte hodnotu zóny dostupnosti pro TargetAvailabilityZone parametr.
Skupina dostupnosti Volitelné Pokud chcete použít skupiny dostupnosti, zadejte ID skupiny dostupnosti pro parametr TargetAvailabilitySet .
Značky Volitelné Pro aktualizaci značek použijte následující parametry: nebo , , a typ operace UpdateTagOperation aktualizace značky nebo UpdateVMTagOperation, UpdateDiskTagOperation. UpdateNicTagOperation. UpdateNicTagUpdateDiskTagUpdateVMTagUpdateTag Operace aktualizace značky přebírá následující hodnoty: Sloučení, Odstranění a Nahrazení.
Slouží UpdateTag k aktualizaci všech značek napříč virtuálními počítači, disky a síťovými kartami.
Slouží UpdateVMTag k aktualizaci značek virtuálních počítačů.
Slouží UpdateDiskTag k aktualizaci značek disku.
Slouží UpdateNicTag k aktualizaci značek síťových adaptérů.
Slouží UpdateTagOperation k aktualizaci operace pro všechny značky napříč virtuálními počítači, disky a síťovými kartami.
Slouží UpdateVMTagOperation k aktualizaci značek virtuálních počítačů.
Slouží UpdateDiskTagOperation k aktualizaci značek disku.
Slouží UpdateNicTagOperation k aktualizaci značek síťových adaptérů.

Možnost nahrazení nahradí celou sadu existujících značek novou sadou.
Možnost sloučení umožňuje přidávat značky s novými názvy a aktualizovat hodnoty značek stávajícími názvy.
Možnost odstranění umožňuje selektivní odstranění značek na základě konkrétních názvů nebo párů název/hodnota.
Disky Volitelné Disk s operačním systémem:
– Aktualizujte název disku s operačním systémem pomocí parametru TargetDiskName .

Aktualizace více disků:
- Pomocí Set-AzMigrateDiskMapping nastavte názvy disků na proměnnou $DiskMapping. Pak použijte DiskToUpdate parametr a předejte proměnnou.

ID disku, které se má použít v Set-AzMigrateDiskMapping , je vlastnost UUID disku načteného pomocí rutiny Get-AzMigrateDiscoveredServer .
Název síťové karty Volitelné Pomocí New-AzMigrateNicMapping nastavte názvy síťových adaptérů na proměnnou $NICMapping. Pak použijte NICToUpdate parametr a předejte proměnnou.

Rutina Get-AzMigrateServerReplication vrátí úlohu, kterou je možné sledovat pro monitorování stavu operace.

# List replicating VMs and filter the result for selecting a replicating VM. This cmdlet will not return all properties of the replicating VM.
$ReplicatingServer = Get-AzMigrateServerReplication -ProjectName $MigrateProject.Name -ResourceGroupName $ResourceGroup.ResourceGroupName -MachineName MyTestVM
# Retrieve all properties of a replicating VM 
$ReplicatingServer = Get-AzMigrateServerReplication -TargetObjectID $ReplicatingServer.Id

# View NIC details of the replicating server
Write-Output $ReplicatingServer.ProviderSpecificDetail.VMNic

V následujícím příkladu aktualizujeme konfiguraci síťové karty tak, že vytvoříme první síťovou kartu jako primární a přiřadíme jí statickou IP adresu. Druhou síťovou kartu pro migraci zahodíme, aktualizujeme název a velikost cílového virtuálního počítače a přizpůsobíme názvy síťových adaptérů.

# Specify the NIC properties to be updated for a replicating VM.
$NicMapping = @()
$NicMapping1 = New-AzMigrateNicMapping -NicId $ReplicatingServer.ProviderSpecificDetail.VMNic[0].NicId -TargetNicIP ###.###.###.### -TargetNicSelectionType Primary TargetNicName "ContosoNic_1"
$NicMapping2 = New-AzMigrateNicMapping -NicId $ReplicatingServer.ProviderSpecificDetail.VMNic[1].NicId -TargetNicSelectionType DoNotCreate - TargetNicName "ContosoNic_2"

$NicMapping += $NicMapping1
$NicMapping += $NicMapping2
# Update the name, size and NIC configuration of a replicating server
$UpdateJob = Set-AzMigrateServerReplication -InputObject $ReplicatingServer -TargetVMSize Standard_DS13_v2 -TargetVMName MyMigratedVM -NicToUpdate $NicMapping

V následujícím příkladu přizpůsobíme název disku.

# Customize the Disk names for a replicating VM
$OSDisk = Set-AzMigrateDiskMapping -DiskID "6000C294-1217-dec3-bc18-81f117220424" -DiskName "ContosoDisk_1" 
$DataDisk1= Set-AzMigrateDiskMapping -DiskID "6000C292-79b9-bbdc-fb8a-f1fa8dbeff84" -DiskName "ContosoDisk_2" 
$DiskMapping = $OSDisk, $DataDisk1 
# Update the disk names for a replicating server
$UpdateJob = Set-AzMigrateServerReplication InputObject $ReplicatingServer DiskToUpdate $DiskMapping 

V následujícím příkladu přidáme značky do replikujících virtuálních počítačů.

# Update all tags across virtual machines, disks, and NICs.
Set-azmigrateserverreplication UpdateTag $UpdateTag UpdateTagOperation Merge/Replace/Delete

# Update virtual machines tags
Set-azmigrateserverreplication UpdateVMTag $UpdateVMTag UpdateVMTagOperation Merge/Replace/Delete 

Stav úlohy můžete sledovat pomocí následujícího příkladu.

# Track job status to check for completion
while (($UpdateJob.State -eq 'InProgress') -or ($UpdateJob.State -eq 'NotStarted')){
        #If the job hasn't completed, sleep for 10 seconds before checking the job status again
        sleep 10;
        $UpdateJob = Get-AzMigrateJob -InputObject $UpdateJob
}
# Check if the Job completed successfully. The updated job state of a successfully completed job should be "Succeeded".
Write-Output $UpdateJob.State

Spuštění testu migrace

Po zahájení rozdílové replikace můžete spustit testovací migraci virtuálních počítačů před spuštěním úplné migrace do Azure. Důrazně doporučujeme provést test migrace alespoň jednou pro každý počítač před migrací. Rutina vrátí úlohu, kterou je možné sledovat pro monitorování stavu operace.

  • Spuštění testovací migrace zkontroluje, že migrace funguje podle očekávání. Testovací migrace nemá vliv na místní počítač, který zůstává funkční a pokračuje v replikaci.
  • Testovací migrace simuluje migraci vytvořením virtuálního počítače Azure pomocí replikovaných dat. Test se obvykle migruje do neprodukční virtuální sítě ve vašem předplatném Azure.
  • Replikovaný testovací virtuální počítač Azure můžete použít k ověření migrace, testování aplikací a řešení jakýchkoli problémů před úplnou migrací.

Vyberte virtuální síť Azure, kterou chcete použít k testování, zadáním ID virtuální sítě pomocí parametru TestNetworkID .

# Retrieve the Azure virtual network created for testing
$TestVirtualNetwork = Get-AzVirtualNetwork -Name MyTestVirtualNetwork
# Start test migration for a replicating server
$TestMigrationJob = Start-AzMigrateTestMigration -InputObject $ReplicatingServer -TestNetworkID $TestVirtualNetwork.Id
# Track job status to check for completion
while (($TestMigrationJob.State -eq 'InProgress') -or ($TestMigrationJob.State -eq 'NotStarted')){
        #If the job hasn't completed, sleep for 10 seconds before checking the job status again
        sleep 10;
        $TestMigrationJob = Get-AzMigrateJob -InputObject $TestMigrationJob
}
# Check if the Job completed successfully. The updated job state of a successfully completed job should be "Succeeded".
Write-Output $TestMigrationJob.State

Po dokončení testování vyčistěte testovací migraci pomocí rutiny Start-AzMigrateTestMigrationCleanup . Rutina vrátí úlohu, kterou je možné sledovat pro monitorování stavu operace.

# Clean-up test migration for a replicating server
$CleanupTestMigrationJob = Start-AzMigrateTestMigrationCleanup -InputObject $ReplicatingServer
# Track job status to check for completion
while (($CleanupTestMigrationJob.State -eq "InProgress") -or ($CleanupTestMigrationJob.State -eq "NotStarted")){
        #If the job hasn't completed, sleep for 10 seconds before checking the job status again
        sleep 10;
        $CleanupTestMigrationJob = Get-AzMigrateJob -InputObject $CleanupTestMigrationJob
}
# Check if the Job completed successfully. The updated job state of a successfully completed job should be "Succeeded".
Write-Output $CleanupTestMigrationJob.State

Migrace virtuálních počítačů

Po ověření, že testovací migrace funguje podle očekávání, můžete replikační server migrovat pomocí následující rutiny. Rutina vrátí úlohu, kterou je možné sledovat pro monitorování stavu operace.

Pokud nechcete vypnout zdrojový server, nepoužívejte TurnOffSourceServer parametr.

# Start migration for a replicating server and turn off source server as part of migration
$MigrateJob = Start-AzMigrateServerMigration -InputObject $ReplicatingServer -TurnOffSourceServer
# Track job status to check for completion
while (($MigrateJob.State -eq 'InProgress') -or ($MigrateJob.State -eq 'NotStarted')){
        #If the job hasn't completed, sleep for 10 seconds before checking the job status again
        sleep 10;
        $MigrateJob = Get-AzMigrateJob -InputObject $MigrateJob
}
#Check if the Job completed successfully. The updated job state of a successfully completed job should be "Succeeded".
Write-Output $MigrateJob.State

Dokončení migrace

  1. Po dokončení migrace zastavte replikaci místního počítače a pomocí následující rutiny vyčistíte informace o stavu replikace pro virtuální počítač. Rutina vrátí úlohu, kterou je možné sledovat pro monitorování stavu operace.

    # Stop replication for a migrated server
    $StopReplicationJob = Remove-AzMigrateServerReplication -InputObject $ReplicatingServer
    
    # Track job status to check for completion
    while (($StopReplicationJob.State -eq 'InProgress') -or ($StopReplicationJob.State -eq 'NotStarted')){
            #If the job hasn't completed, sleep for 10 seconds before checking the job status again
            sleep 10;
            $StopReplicationJob = Get-AzMigrateJob -InputObject $StopReplicationJob
    }
    # Check if the Job completed successfully. The updated job state of a successfully completed job should be "Succeeded".
    Write-Output $StopReplicationJob.State
    
  2. Proveďte všechna vylepšení aplikace po migraci, například aktualizujte databázové připojovací řetězce a nakonfigurujte webové servery.

  3. U migrované aplikace, která teď běží v Azure, proveďte finální akceptační testování aplikace a migrace.

  4. Vyřízněte provoz do migrované instance virtuálního počítače Azure.

  5. Odeberte místní virtuální počítače z místního inventáře virtuálních počítačů.

  6. Odeberte místní virtuální počítače ze záloh.

  7. Aktualizujte veškerou interní dokumentaci tak, aby obsahovala nová umístění a IP adresy virtuálních počítačů Azure.

Osvědčené postupy po migraci