Share via


Azure nyilvános MEC-ben futó virtuális gépek replikálása azure-régióba

Fontos

A nyilvános MEC Azure Site Recovery funkciója előzetes verzióban érhető el.

Ez a cikk azt ismerteti, hogyan replikálhatja, feladatátvételt és feladat-visszavételt az Azure-beli nyilvános MEC-n futó Azure-beli virtuális gépek (VM-ek) a szülő Azure-régióba, ahol az Azure Public MEC egy bővítmény.

Vészhelyreállítás az Azure Public MEC-ben

Site Recovery biztosítja az üzletmenet folytonosságát azáltal, hogy folyamatosan replikálja a számítási feladatokat az elsődlegesről a másodlagos helyre. A MEC ASR-funkciója előzetes verzióban érhető el.

Itt az elsődleges hely egy Azure-beli nyilvános MEC, a másodlagos hely pedig az a szülőrégió, amelyhez az Azure Nyilvános MEC csatlakozik.

Virtuális gépek vészhelyreállításának beállítása azure-beli nyilvános MEC-ben a PowerShell használatával

Előfeltételek

  • Győződjön meg arról, hogy az Azure Az PowerShell-modul telepítve van. A telepítés módjáról további információt az Azure Az PowerShell-modul telepítése című témakörben talál.

  • Az Azure Az PowerShell minimális verziójának 4.1.0-snak kell lennie. Az aktuális verzió megtekintéséhez használja a következő parancsot:

    Get-InstalledModule -Name Az
    
  • Győződjön meg arról, hogy az Azure Site Recovery támogatja a Linux disztribúciós verziót és a kernelt. További információt a támogatási mátrixban talál.

Azure-beli nyilvános MEC-ben futó virtuális gépek replikálása azure-régióba

Az Azure nyilvános MEC-ben futó virtuális gépek Azure-régióba való replikálásához kövesse az alábbi lépéseket:

Megjegyzés

Ebben a példában az elsődleges hely egy Azure Nyilvános MEC, a másodlagos/helyreállítási hely pedig az Azure Nyilvános MEC régiója.

  1. Jelentkezzen be az Azure-fiókjába.

    Connect-AzAccount
    
  2. Válassza a Jobb előfizetés lehetőséget.

    $subscription = Get-AzSubscription -SubscriptionName "<SubscriptionName>" 
    Set-AzContext $subscription.Id 
    
  3. Kérje le a replikálni kívánt virtuális gép részleteit.

    $VM = Get-AzVM -ResourceGroupName "<ResourceGroupName>" -Name "<VMName>" 
    
    Write-Output $VM 
    
  4. Hozzon létre egy erőforráscsoportot a helyreállítási tárhoz a másodlagos Azure-régióban.

    New-AzResourceGroup -Name "edgezonerecoveryrg" -Location "<EdgeZoneRegion>"
    
  5. Hozzon létre egy új Helyreállítási tárat a másodlagos régióban.

    $vault = New-AzRecoveryServicesVault -Name "EdgeZoneRecoveryVault" -
    ResourceGroupName "edgezonerecovery" -Location "\<EdgeZoneRegion\>"
    Write-Output $vault
    
  6. Állítsa be a tárolókörnyezetet.

    Set-AzRecoveryServicesAsrVaultContext -Vault $vault 
    
  7. Elsődleges Site Recovery háló létrehozása.

    $TempASRJob = New-AzRecoveryServicesAsrFabric -Azure -Location “<EdgeZoneRegion>” -
    Name "EdgeZoneFabric"
    
    1. A feladat állapotának nyomon követése a befejezés ellenőrzéséhez.

      while (($TempASRJob.State -eq "InProgress") -or ($TempASRJob.State -eq "NotStarted")){
      
    2. Ha a feladat még nem fejeződött be, a feladat állapotának ismételt ellenőrzése előtt 10 másodpercig aludjon.

      sleep 10;
      $TempASRJob = Get-AzRecoveryServicesAsrJob -Job $TempASRJob
      }
      
    3. Sikeres befejezés esetén a feladat állapotának Sikeresnek kell lennie.

      Write-Output $TempASRJob.State
      $PrimaryFabric = Get-AzRecoveryServicesAsrFabric -Name "EdgeZoneFabric"
      
  8. Az elsődleges hálóval elsődleges és helyreállítási védelmi tárolókat is létrehozhat.

    $TempASRJob = New-AzRecoveryServicesAsrProtectionContainer -InputObject 
    $PrimaryFabric -Name "EdgeZoneProtectionContainer"
    
    1. A feladat állapotának nyomon követése a befejezés ellenőrzéséhez.

      while (($TempASRJob.State -eq "InProgress") -or ($TempASRJob.State -eq 
      "NotStarted")){
       sleep 10;
       $TempASRJob = Get-AzRecoveryServicesAsrJob -Job $TempASRJob
      }
      Write-Output $TempASRJob.State
      
    2. Az elsődleges és a helyreállítási védelmi tárolók az elsődleges régióban (az elsődleges hálón belül) jönnek létre.

      $PrimaryProtectionContainer = Get-AzRecoveryServicesAsrProtectionContainer -Fabric 
      $primaryFabric -Name "EdgeZoneProtectionContainer"
      $RecoveryProtectionContainer = Get-AzRecoveryServicesAsrProtectionContainer -Fabric 
      $primaryFabric -Name "EdgeZoneProtectionContainer-t"
      
  9. Hozzon létre replikációs szabályzatot.

    $TempASRJob = New-AzRecoveryServicesAsrPolicy -AzureToAzure -Name 
    "ReplicationPolicy" -RecoveryPointRetentionInHours 24 -
    ApplicationConsistentSnapshotFrequencyInHours 4
    
    1. A feladat állapotának nyomon követése a befejezés ellenőrzéséhez.

      while (($TempASRJob.State -eq "InProgress") -or ($TempASRJob.State -eq 
      "NotStarted")){
       sleep 10;
       $TempASRJob = Get-AzRecoveryServicesAsrJob -Job $TempASRJob
      }
      
    2. Sikeres befejezés esetén a feladat állapotának Sikeresnek kell lennie.

      Write-Output $TempASRJob.State
      
      $ReplicationPolicy = Get-AzRecoveryServicesAsrPolicy -Name "ReplicationPolicy"
      
  10. Hozzon létre egy védelmi tárolóleképezést az elsődleges és a helyreállítási védelmi tárolók között a Replikációs szabályzattal.

    $TempASRJob = New-AzRecoveryServicesAsrProtectionContainerMapping -Name 
    "PrimaryToRecovery" -Policy $ReplicationPolicy -PrimaryProtectionContainer 
    $PrimaryProtectionContainer -RecoveryProtectionContainer 
    $RecoveryProtectionContainer
    
    1. A feladat állapotának nyomon követése a befejezés ellenőrzéséhez.

      while (($TempASRJob.State -eq "InProgress") -or ($TempASRJob.State -eq 
      "NotStarted")){
       sleep 10;
       $TempASRJob = Get-AzRecoveryServicesAsrJob -Job $TempASRJob
      }
      
    2. Sikeres befejezés esetén a feladat állapotának Sikeresnek kell lennie.

      Write-Output $TempASRJob.State
      
      $EdgeZoneToAzurePCMapping = Get-AzRecoveryServicesAsrProtectionContainerMapping -
      ProtectionContainer $PrimaryProtectionContainer -Name "PrimaryToRecovery"
      
    3. Hozzon létre egy védelmi tárolóleképezést a feladat-visszavételhez a helyreállítási és az elsődleges védelmi tárolók között a replikációs szabályzattal.

      $TempASRJob = New-AzRecoveryServicesAsrProtectionContainerMapping -Name 
      "RecoveryToPrimary" -Policy $ReplicationPolicy -PrimaryProtectionContainer 
      $RecoveryProtectionContainer -RecoveryProtectionContainer 
      $PrimaryProtectionContainer
      
      1. A feladat állapotának nyomon követése a befejezés ellenőrzéséhez.

        while (($TempASRJob.State -eq "InProgress") -or ($TempASRJob.State -eq 
        "NotStarted")){
         sleep 10;
         $TempASRJob = Get-AzRecoveryServicesAsrJob -Job $TempASRJob
        }
        
      2. Sikeres befejezés esetén a feladat állapotának Sikeresnek kell lennie.

        Write-Output $TempASRJob.State 
        $AzureToEdgeZonePCMapping = Get-AzRecoveryServicesAsrProtectionContainerMapping -
        ProtectionContainer $RecoveryProtectionContainer -Name "RecoveryToPrimary"
        
  11. Hozzon létre egy gyorsítótár-tárfiókot a replikációs naplókhoz az elsődleges régióban. A gyorsítótár tárfiókja az elsődleges régióban jön létre.

    $CacheStorageAccount = New-AzStorageAccount -Name "cachestorage" -ResourceGroupName 
    "<primary ResourceGroupName>" -Location '<EdgeZoneRegion>' -SkuName Standard_LRS -
    Kind Storage
    
  12. Győződjön meg arról, hogy létrehoz egy virtuális hálózatot a célhelyen. Hozzon létre egy helyreállítási hálózatot a helyreállítási régióban.

    $recoveryVnet = New-AzVirtualNetwork -Name "recoveryvnet" -ResourceGroupName 
    "recoveryrg" -Location '<EdgeZoneRegion>' -AddressPrefix "10.0.0.0/16" 
    Add-AzVirtualNetworkSubnetConfig -Name "defaultsubnetconf" -VirtualNetwork 
    $recoveryVnet -AddressPrefix "10.0.0.0/24" | Set-AzVirtualNetwork
    $recoveryNetwork = $recoveryVnet.Id
    
  13. Az alábbi PowerShell-parancsmaggal replikálhat egy Azure-beli nyilvános MEC Azure-beli virtuális gépet felügyelt lemezekkel. Ez a lépés körülbelül 20 percet vehet igénybe.

    1. Kérje le azt az erőforráscsoportot, amelyben a virtuális gépet létre kell hozni a feladatátvételkor.

      $RecoveryRG = Get-AzResourceGroup -Name "edgezonerecoveryrg" -Location "
      <EdgeZoneRegion>"
      
    2. Virtuális gép lekérése és tartalom megjelenítése.

      $vm = Get-AzVM -Name $vmName -ResourceGroupName $primaryResourceGroupName
      
    3. Adja meg a replikálandó virtuális gép minden lemezének replikációs tulajdonságait (lemezreplikációs konfiguráció létrehozása).

      #OsDisk
      $OSdiskId = $vm.StorageProfile.OsDisk.ManagedDisk.Id
      $RecoveryOSDiskAccountType = $vm.StorageProfile.OsDisk.ManagedDisk.StorageAccountType
      $RecoveryReplicaDiskAccountType = 
      $vm.StorageProfile.OsDisk.ManagedDisk.StorageAccountType
      $OSDiskReplicationConfig = New-AzRecoveryServicesAsrAzureToAzureDiskReplicationConfig -
      ManagedDisk -LogStorageAccountId $CacheStorageAccount.Id `
       -DiskId $OSdiskId -RecoveryResourceGroupId $RecoveryRG.ResourceId -
      RecoveryReplicaDiskAccountType $RecoveryReplicaDiskAccountType `
       -RecoveryTargetDiskAccountType $RecoveryOSDiskAccountType
      
    4. Adatlemez

      1. Ha a virtuális gép rendelkezik adatlemezzel, az alábbi paranccsal hozzon létre lemezkonfigurációt. Ha nem, kihagyhatja ezt a szakaszt. From $datadiskId to $DataDisk1ReplicationConfig $datadiskId = $vm.StorageProfile.OSDisk.ManagedDisk.Id.

        Vagylagosan

        $RecoveryReplicaDiskAccountType = "Premium_LRS"
        $RecoveryTargetDiskAccountType = "Premium_LRS"
        $RecoveryRGId = $RecoveryRG.ResourceId
        $DataDisk1ReplicationConfig = New-AzRecoveryServicesAsrAzureToAzureDiskReplicationConfig 
        -ManagedDisk -LogStorageAccountId $CacheStorageAccount.Id `
         -DiskId $OSdiskId -RecoveryResourceGroupId $RecoveryRGId -
        RecoveryReplicaDiskAccountType $RecoveryReplicaDiskAccountType `
         -RecoveryTargetDiskAccountType $RecoveryTargetDiskAccountType
        
    5. Hozzon létre egy replikációval védett elemet a replikáció elindításához. A név egyediségének biztosításához használjon GUID azonosítót a replikációval védett elem nevéhez. Ha nem áll helyre rendelkezésre állási zónába, ne adja meg a paramétert -RecoveryAvailabilityZone .

      $TempASRJob = New-AzRecoveryServicesAsrReplicationProtectedItem -AzureToAzure -AzureVmId 
      $VM.Id -Name $vm.Name -ProtectionContainerMapping $EdgeZoneToAzurePCMapping -
      AzureToAzureDiskReplicationConfiguration $DataDisk1ReplicationConfig -
      RecoveryResourceGroupId $RecoveryRGId -RecoveryAvailabilityZone “1” -
      RecoveryAzureNetworkId $recoveryVnet.Id -RecoveryAzureSubnetName “defaultsubnetconf”
      
    6. A feladat állapotának nyomon követése a befejezés ellenőrzéséhez.

      while (($TempASRJob.State -eq "InProgress") -or ($TempASRJob.State -eq "NotStarted")){
      sleep 10; 
      $TempASRJob = Get-AzRecoveryServicesAsrJob -Job $TempASRJob 
      } 
      
    7. Ellenőrizze, hogy a feladat sikeresen befejeződött-e. A sikeresen befejezett feladat frissített feladatállapotának Sikeresnek kell lennie.

      Write-Output $TempASRJob.State
      
    8. Miután a replikáció indítására irányuló művelet sikeres volt, a rendszer replikálja a virtuálisgép-adatokat a helyreállítási régióba.

    Kezdetben a replikációs folyamat elindulásakor létrehozza a virtuális gép replikáló lemezeinek másolatát a helyreállítási régióban. Ezt a fázist kezdeti replikációs fázisnak nevezzük. Ez a lépés körülbelül 20 percet vesz igénybe. Tekintse meg a replikáció állapotát a Tároló panel Replikált elemek területén.

    Képernyőkép a replikált elemekről.

    A replikáció befejezése után a tároló replikációs elemei az alábbiak szerint jelennek meg:

    A tároló replikációjának képernyőképe.

    Most a virtuális gép védett, és elvégezhet egy feladatátvételi tesztet. A virtuális gépet képviselő replikált elem replikációs állapota a kezdeti replikáció befejezése után a védett állapotba kerül.

    A virtuális gép replikációs állapotának és replikációs állapotának monitorozása a hozzá tartozó replikációval védett elem részleteinek lekérésével:

    $PE = Get-AzRecoveryServicesAsrReplicationProtectedItem
     -ProtectionContainer $PrimaryProtectionContainer
    | Select FriendlyName, ProtectionState, ReplicationHealth
    $PE
    

    Ha a Védett elemet látja a ProtectionState-ban, készen áll a feladatátvétel tesztelésére.

    Képernyőkép a Védelmi állapotról.

  14. Feladatátvételi teszt végrehajtása, ellenőrzése és törlése. A feladatátvételi teszt kihagyható. Javasoljuk azonban a feladatátvételi teszt végrehajtását annak biztosítása érdekében, hogy a másodlagos régió a várt módon jöjjön létre.

    1. Hozzon létre egy külön hálózatot a feladatátvétel teszteléséhez (nem csatlakozik a DR-hálózathoz).

      $TFOVnet = New-AzVirtualNetwork -Name "TFOvnet" -ResourceGroupName "edgezonerecoveryrg" 
      -Location '<EdgeZoneRegion>' -AddressPrefix "10.3.0.0/26"
      
      Add-AzVirtualNetworkSubnetConfig -Name "default" -VirtualNetwork $TFOVnet -AddressPrefix 
      "10.3.0.0/26" | Set-AzVirtualNetwork
      
      $TFONetwork= $TFOVnet.Id
      
    2. Feladatátvételi teszt végrehajtása.

      $ReplicationProtectedItem = Get-AzRecoveryServicesAsrReplicationProtectedItem -
      FriendlyName "<VMName>" -ProtectionContainer $PrimaryProtectionContainer
      
      $TFOJob = Start-AzRecoveryServicesAsrTestFailoverJob -ReplicationProtectedItem 
      $ReplicationProtectedItem -AzureVMNetworkId $TFONetwork -Direction PrimaryToRecovery
      
    3. Várjon, amíg a feladat befejeződik.

      while (($TFOJob.State -eq "InProgress") -or ($TFOJob.State -eq 
      "NotStarted")){
       sleep 10;
       $TFOJob = Get-AzRecoveryServicesAsrJob -Job $TFOJob
      }
      
    4. Várja meg, amíg a feladatátvételi teszt befejeződik.

      Get-AzRecoveryServicesAsrJob -Job $TFOJob
      

    Megjegyzés

    A feladat előrehaladását a portálon, a tároló kiválasztásával, majd a Site Recovery feladatok kiválasztásával is ellenőrizheti.

    Miután a feladatátvételi feladat sikeresen befejeződött, kapcsolódhat a virtuális gépen meghiúsult teszthez, és ellenőrizheti a feladatátvételi tesztet. Ha a tesztelés befejeződött a virtuális gépen végrehajtott teszten, törölje a tesztpéldányt a feladatátvételi feladatátvételi művelet elindításával. Ez a művelet törli a feladatátvételi teszt által létrehozott virtuális gép tesztpéldányát. Győződjön meg arról, hogy a feladatátvételi virtuális gépen minden célbeállítás megfelelő, beleértve a helyet, a hálózati beállítást, az adatsérülést, és a cél virtuális gépen nem vesznek el adatok. Most törölheti a feladatátvételi tesztet, és elindíthatja a feladatátvételt.

    $Job_TFOCleanup = Start-AzRecoveryServicesAsrTestFailoverCleanupJob -
    ReplicationProtectedItem $ReplicationProtectedItem 
    Get-AzRecoveryServicesAsrJob -Job $Job_TFOCleanup | Select State
    
  15. A következő lépés a virtuális gép feladatátvétele. Ez a lépés létrehozza a virtuális gépet a helyreállítási régióban található replikált lemezek használatával.

    $ReplicationProtectedItem = Get-AzRecoveryServicesAsrReplicationProtectedItem -
    FriendlyName "<VMName>" -ProtectionContainer $PrimaryProtectionContainer
    $RecoveryPoints = Get-AzRecoveryServicesAsrRecoveryPoint -ReplicationProtectedItem 
    $ReplicationProtectedItem 
    

    Előfordulhat, hogy a visszaadott helyreállítási pontok listája nem rendezhető időrendben. Ezeket először rendeznie kell, hogy megtalálja a virtuális gép legrégebbi vagy legújabb helyreállítási pontjait.

     "{0} {1}" -f $RecoveryPoints[0].RecoveryPointType, $RecoveryPoints[-
    1].RecoveryPointTime
    
    1. Indítsa el a feladatátvételi feladatot.

      $Job_Failover = Start-AzRecoveryServicesAsrUnplannedFailoverJob -
      ReplicationProtectedItem $ReplicationProtectedItem -Direction PrimaryToRecovery -
      RecoveryPoint $RecoveryPoints[-1] 
      do { 
      $Job_Failover = Get-AzRecoveryServicesAsrJob -Job $Job_Failover; 
      sleep 30; 
      } while (($Job_Failover.State -eq "InProgress") -or ($JobFailover.State -eq 
      "NotStarted")) 
      $Job_Failover.State
      
  16. Ha a feladatátvételi feladat sikeres, véglegesítheti a feladatátvételt.

     $CommitFailoverJob = Start-AzRecoveryServicesAsrCommitFailoverJob -
    ReplicationProtectedItem $ReplicationProtectedItem 
    
    1. Várjon, amíg a feladatátvételi feladat véglegesítése befejeződött.

      while (($CommitFailoverJob.State -eq "InProgress") -or ($CommitFailoverJob.State 
      -eq "NotStarted")){
       sleep 10;
       $CommitFailoverJob = Get-AzRecoveryServicesAsrJob -Job $CommitFailoverJob
      }
       Get-AzRecoveryServicesAsrJob -Job $CommitFailoverJOb
      
  17. A feladatátvétel után, amikor készen áll az eredeti régióra való visszalépésre, indítsa el a replikációval védett elem fordított replikációját a Update-AzRecoveryServicesAsrProtectionDirection parancsmag használatával.

    1. Gyorsítótár-tárfiók létrehozása a helyreállítási régióban található replikációs naplókhoz.

      $EdgeZoneCacheStorageAccount = New-AzStorageAccount -Name "cachestorageedgezone" -
      ResourceGroupName "<ResourceGroupName>" -Location '<EdgeZoneRegion>' -SkuName 
      Standard_LRS -Kind Storage
      
    2. Használja a helyreállítási védelmi tárolót, az azure-beli nyilvános mec régiójában található új gyorsítótár-tárfiókot és a forrásrégió virtuálisgép-erőforráscsoportját.

      $ReplicationProtectedItem = Get-AzRecoveryServicesAsrReplicationProtectedItem -
      FriendlyName $vm.name -ProtectionContainer $PrimaryProtectionContainer
       $sourceVMResourcegroupId = $(Get-AzResourceGroup -Name $vm.ResourceGroupName).
      ResourceId
      Update-ASRProtectionDirection -ReplicationProtectedItem $ReplicationProtectedItem `
       -AzureToAzure `
       -ProtectionContainerMapping $AzureToEdgeZonePCMapping `
       -LogStorageAccountId $EdgeZoneCacheStorageAccount.Id `
       -RecoveryResourceGroupID $sourceVMResourcegroupId
      

    Ez a lépés körülbelül 20 percet vesz igénybe, és az állapot a Folyamatban állapotról a Sikeresre változik.

    Képernyőkép a Védett elemek listájáról.

  18. Tiltsa le a replikációt.

    Remove-AzRecoveryServicesAsrReplicationProtectedItem -ReplicationProtectedItem 
    $ReplicationProtectedItem
    
  19. Tisztítsa meg a környezetet. Ez a lépés nem kötelező, és az erőforráscsoport eltávolítására használható.

    Remove-AzResourceGroup -Name $Name -Force