Megosztás a következőn keresztül:


VMware virtuális gépek Azure-ba történő vészhelyreállításának beállítása a PowerShell használatával

Figyelemfelhívás

Ez a cikk a CentOS-ra, egy olyan Linux-disztribúcióra hivatkozik, amely közel áll az élettartam (EOL) állapotához. Fontolja meg a használatát, és ennek megfelelően tervezze meg. További információ: CentOS End Of Life útmutató.

Ebből a cikkből megtudhatja, hogyan replikálhat és feladatátvételt vmware virtuális gépeken az Azure-ba az Azure PowerShell használatával.

Az alábbiak végrehajtásának módját ismerheti meg:

  • Hozzon létre egy Recovery Services-tárolót, és állítsa be a tárolókörnyezetet.
  • Ellenőrizze a kiszolgálóregisztrációt a tárolóban.
  • Replikáció beállítása, beleértve a replikációs szabályzatot is. Adja hozzá a vCenter-kiszolgálót, és fedezze fel a virtuális gépeket.
  • VCenter-kiszolgáló hozzáadása és felderítése
  • Hozzon létre tárfiókokat a replikációs naplók vagy adatok tárolásához, és replikálja a virtuális gépeket.
  • Feladatátvétel végrehajtása. Konfigurálja a feladatátvételi beállításokat, és végezze el a virtuális gépek replikálásának beállításait.

Feljegyzés

Javasoljuk, hogy az Azure Az PowerShell modult használja az Azure-ral való interakcióhoz. Első lépésként tekintse meg az Azure PowerShell telepítését ismertető témakört. Az Az PowerShell-modulra történő migrálás részleteiről lásd: Az Azure PowerShell migrálása az AzureRM modulból az Az modulba.

Előfeltételek

Előkészületek:

Jelentkezzen be az Azure-ba

Jelentkezzen be Azure-előfizetésébe az Csatlakozás-AzAccount parancsmaggal:

Connect-AzAccount

Válassza ki azt az Azure-előfizetést, amelybe a VMware virtuális gépeket replikálni szeretné. A Get-AzSubscription parancsmaggal lekérheti azoknak az Azure-előfizetéseknek a listáját, amelyekhez hozzáféréssel rendelkezik. Válassza ki a Select-AzSubscription parancsmaggal használni kívánt Azure-előfizetést.

Select-AzSubscription -SubscriptionName "ASR Test Subscription"

Helyreállítási tár beállítása

  1. Hozzon létre egy erőforráscsoportot, amelyben létre kívánja hozni a Recovery Services-tárolót. Az alábbi példában az erőforráscsoport neve VMwareDRtoAzurePS, és a kelet-ázsiai régióban jön létre.

    New-AzResourceGroup -Name "VMwareDRtoAzurePS" -Location "East Asia"
    
    ResourceGroupName : VMwareDRtoAzurePS
    Location          : eastasia
    ProvisioningState : Succeeded
    Tags              :
    ResourceId        : /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/VMwareDRtoAzurePS
    
  2. Hozzon létre egy Helyreállítási tárat. Az alábbi példában a Recovery Services-tároló neve VMwareDRToAzurePs, és a kelet-ázsiai régióban és az előző lépésben létrehozott erőforráscsoportban jön létre.

    New-AzRecoveryServicesVault -Name "VMwareDRToAzurePs" -Location "East Asia" -ResourceGroupName "VMwareDRToAzurePs"
    
    Name              : VMwareDRToAzurePs
    ID                : /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/VMwareDRToAzurePs/providers/Microsoft.RecoveryServices/vaults/VMwareDRToAzurePs
    Type              : Microsoft.RecoveryServices/vaults
    Location          : eastasia
    ResourceGroupName : VMwareDRToAzurePs
    SubscriptionId    : xxxxxxxx-xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    Properties        : Microsoft.Azure.Commands.RecoveryServices.ARSVaultProperties
    
  3. Töltse le a tárolóhoz tartozó tárolóregisztrációs kulcsot. A tárolóregisztrációs kulcs használatával regisztrálhatja a helyszíni konfigurációs kiszolgálót ebbe a tárolóba. A regisztráció a Configuration Server szoftvertelepítési folyamatának része.

    #Get the vault object by name and resource group and save it to the $vault PowerShell variable 
    $vault = Get-AzRecoveryServicesVault -Name "VMwareDRToAzurePS" -ResourceGroupName "VMwareDRToAzurePS"
    
    #Download vault registration key to the path C:\Work
    Get-AzRecoveryServicesVaultSettingsFile -SiteRecovery -Vault $Vault -Path "C:\Work\"
    
    FilePath
    --------
    C:\Work\VMwareDRToAzurePs_2017-11-23T19-52-34.VaultCredentials
    
  4. A konfigurációs kiszolgáló telepítésének és regisztrációjának befejezéséhez használja a letöltött tárolóregisztrációs kulcsot, és kövesse a cikkben található alábbi lépéseket.

A tároló környezetének beállítása

Állítsa be a tárolókörnyezetet a Set-ASRVaultContext parancsmaggal. A beállítás után a PowerShell-munkamenet későbbi Azure Site Recovery-műveletei a kijelölt tároló kontextusában lesznek végrehajtva.

Tipp.

Az Azure Site Recovery PowerShell-modul (Az.RecoveryServices modul) a legtöbb parancsmaghoz könnyen használható aliasokkal rendelkezik. A modul parancsmagjai az Operation-AzRecoveryServicesAsr<> objektumot<>alkotják, és egyenértékű aliasokkal rendelkeznek, amelyek az Operation-ASR<> objektumot <>veszik fel. A könnyű használat érdekében lecserélheti a parancsmag aliasait.

Az alábbi példában a $vault változó tárolóadatait használjuk a PowerShell-munkamenet tárolókörnyezetének megadására.

Set-ASRVaultContext -Vault $vault
ResourceName      ResourceGroupName ResourceNamespace          ResourceType
------------      ----------------- -----------------          -----------
VMwareDRToAzurePs VMwareDRToAzurePs Microsoft.RecoveryServices vaults

A Set-ASRVaultContext parancsmag alternatívaként az Import-AzRecoveryServicesAsrVault Gépház File parancsmagot is használhatja a tárolókörnyezet beállításához. Adja meg a tárolóregisztrációs kulcsfájl elérési útját az Import-AzRecoveryServicesAsrVault Gépház File parancsmag -path paramétereként. Példa:

Get-AzRecoveryServicesVaultSettingsFile -SiteRecovery -Vault $Vault -Path "C:\Work\"
Import-AzRecoveryServicesAsrVaultSettingsFile -Path "C:\Work\VMwareDRToAzurePs_2017-11-23T19-52-34.VaultCredentials"

A cikk következő szakaszai feltételezik, hogy az Azure Site Recovery-műveletek tárolókörnyezete be van állítva.

Tárolóregisztráció ellenőrzése

Ebben a példában a következő követelményekkel rendelkezünk:

  • A tárolóban egy konfigurációs kiszolgáló (ConfigurationServer) lett regisztrálva.
  • Egy további folyamatkiszolgáló (ScaleOut-ProcessServer) lett regisztrálva a ConfigurationServerben
  • A konfigurációs kiszolgálón fiókok (vCenter_account, WindowsAccount, LinuxAccount) lettek beállítva. Ezek a fiókok a vCenter-kiszolgáló hozzáadására, a virtuális gépek felderítésére és a mobilitási szolgáltatás szoftverének leküldéses telepítésére szolgálnak a replikálni kívánt Windows- és Linux-kiszolgálókon.
  1. A regisztrált konfigurációs kiszolgálókat egy hálóobjektum képviseli a Site Recoveryben. Kérje le a hálóobjektumok listáját a tárolóban, és azonosítsa a konfigurációs kiszolgálót.

    # Verify that the Configuration server is successfully registered to the vault
    $ASRFabrics = Get-AzRecoveryServicesAsrFabric
    $ASRFabrics.count
    
    1
    
    #Print details of the Configuration Server
    $ASRFabrics[0]
    
    Name                  : 2c33d710a5ee6af753413e97f01e314fc75938ea4e9ac7bafbf4a31f6804460d
    FriendlyName          : ConfigurationServer
    ID                    : /Subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/VMwareDRToAzurePs/providers/Microsoft.RecoveryServices/vaults/VMwareDRToAzurePs/replicationFabrics
                            /2c33d710a5ee6af753413e97f01e314fc75938ea4e9ac7bafbf4a31f6804460d
    Type                  : Microsoft.RecoveryServices/vaults/replicationFabrics
    FabricType            : VMware
    SiteIdentifier        : ef7a1580-f356-4a00-aa30-7bf80f952510
    FabricSpecificDetails : Microsoft.Azure.Commands.RecoveryServices.SiteRecovery.ASRVMWareSpecificDetails
    
  2. A gépek replikálásához használható folyamatkiszolgálók azonosítása.

    $ProcessServers = $ASRFabrics[0].FabricSpecificDetails.ProcessServers
    for($i=0; $i -lt $ProcessServers.count; $i++) {
     "{0,-5} {1}" -f $i, $ProcessServers[$i].FriendlyName
    }
    
    0     ScaleOut-ProcessServer
    1     ConfigurationServer
    

    A fenti kimenetből $ProcessServers[0] a ScaleOut-ProcessServernek felel meg, $ProcessServers[1] pedig a ConfigurationServer folyamatkiszolgálói szerepkörének felel meg

  3. Azonosítsa a konfigurációs kiszolgálón beállított fiókokat.

    $AccountHandles = $ASRFabrics[0].FabricSpecificDetails.RunAsAccounts
    #Print the account details
    $AccountHandles
    
    AccountId AccountName
    --------- -----------
    1         vCenter_account
    2         WindowsAccount
    3         LinuxAccount
    

    A fenti kimenetből $AccountHandles[0] a fiók vCenter_account, $AccountHandles[1] a WindowsAccount fióknak, a $AccountHandles[2] pedig a LinuxAccount fióknak felel meg

Replikációs házirend létrehozása

Ebben a lépésben két replikációs szabályzat jön létre. Az egyik szabályzat a VMware virtuális gépek Azure-ba való replikálására, a másik pedig az Azure-ban futó virtuális gépek feladatátvétele a helyszíni VMware-helyre.

Feljegyzés

A legtöbb Azure Site Recovery-művelet aszinkron módon lesz végrehajtva. Amikor műveletet kezdeményez, a rendszer elküld egy Azure Site Recovery-feladatot, és visszaad egy feladatkövetési objektumot. Ez a feladatkövetési objektum a művelet állapotának figyelésére használható.

  1. Hozzon létre egy ReplikációPolicy nevű replikációs szabályzatot a VMware virtuális gépek Azure-ba való replikálásához a megadott tulajdonságokkal.

    $Job_PolicyCreate = New-AzRecoveryServicesAsrPolicy -VMwareToAzure -Name "ReplicationPolicy" -RecoveryPointRetentionInHours 24 -ApplicationConsistentSnapshotFrequencyInHours 4 -RPOWarningThresholdInMinutes 60
    
    # Track Job status to check for completion
    while (($Job_PolicyCreate.State -eq "InProgress") -or ($Job_PolicyCreate.State -eq "NotStarted")){
            sleep 10;
            $Job_PolicyCreate = Get-ASRJob -Job $Job_PolicyCreate
    }
    
    #Display job status
    $Job_PolicyCreate
    
    Name             : 8d18e2d9-479f-430d-b76b-6bc7eb2d0b3e
    ID               : /Subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/VMwareDRToAzurePs/providers/Microsoft.RecoveryServices/vaults/VMwareDRToAzurePs/replicationJobs/8d18e2d
                       9-479f-430d-b76b-6bc7eb2d0b3e
    Type             :
    JobType          : AddProtectionProfile
    DisplayName      : Create replication policy
    ClientRequestId  : a162b233-55d7-4852-abac-3d595a1faac2 ActivityId: 9895234a-90ea-4c1a-83b5-1f2c6586252a
    State            : Succeeded
    StateDescription : Completed
    StartTime        : 11/24/2017 2:49:24 AM
    EndTime          : 11/24/2017 2:49:23 AM
    TargetObjectId   : ab31026e-4866-5440-969a-8ebcb13a372f
    TargetObjectType : ProtectionProfile
    TargetObjectName : ReplicationPolicy
    AllowedActions   :
    Tasks            : {Prerequisites check for creating the replication policy, Creating the replication policy}
    Errors           : {}
    
  2. Hozzon létre egy replikációs szabályzatot, amelyet az Azure-ból a helyszíni VMware-helyre történő feladat-visszavételhez használhat.

    $Job_FailbackPolicyCreate = New-AzRecoveryServicesAsrPolicy -AzureToVMware -Name "ReplicationPolicy-Failback" -RecoveryPointRetentionInHours 24 -ApplicationConsistentSnapshotFrequencyInHours 4 -RPOWarningThresholdInMinutes 60
    

    A $Job_FailbackPolicyCreate feladatadataival nyomon követheti a műveletet.

    • Hozzon létre egy védelmi tárolóleképezést a replikációs szabályzatok konfigurációs kiszolgálóval való leképezéséhez.
    #Get the protection container corresponding to the Configuration Server
    $ProtectionContainer = Get-AzRecoveryServicesAsrProtectionContainer -Fabric $ASRFabrics[0]
    
    #Get the replication policies to map by name.
    $ReplicationPolicy = Get-AzRecoveryServicesAsrPolicy -Name "ReplicationPolicy"
    $FailbackReplicationPolicy = Get-AzRecoveryServicesAsrPolicy -Name "ReplicationPolicy-Failback"
    
    # Associate the replication policies to the protection container corresponding to the Configuration Server.
    
    $Job_AssociatePolicy = New-AzRecoveryServicesAsrProtectionContainerMapping -Name "PolicyAssociation1" -PrimaryProtectionContainer $ProtectionContainer -Policy $ReplicationPolicy
    
    # Check the job status
    while (($Job_AssociatePolicy.State -eq "InProgress") -or ($Job_AssociatePolicy.State -eq "NotStarted")){
            sleep 10;
            $Job_AssociatePolicy = Get-ASRJob -Job $Job_AssociatePolicy
    }
    $Job_AssociatePolicy.State
    
    <# In the protection container mapping used for failback (replicating failed over virtual machines
       running in Azure, to the primary VMware site.) the protection container corresponding to the
       Configuration server acts as both the Primary protection container and the recovery protection
       container
    #>
     $Job_AssociateFailbackPolicy = New-AzRecoveryServicesAsrProtectionContainerMapping -Name "FailbackPolicyAssociation" -PrimaryProtectionContainer $ProtectionContainer -RecoveryProtectionContainer $ProtectionContainer -Policy $FailbackReplicationPolicy
    
    # Check the job status
    while (($Job_AssociateFailbackPolicy.State -eq "InProgress") -or ($Job_AssociateFailbackPolicy.State -eq "NotStarted")){
            sleep 10;
            $Job_AssociateFailbackPolicy = Get-ASRJob -Job $Job_AssociateFailbackPolicy
    }
    $Job_AssociateFailbackPolicy.State
    
    

VCenter-kiszolgáló hozzáadása és virtuális gépek felderítése

Adjon hozzá egy vCenter-kiszolgálót IP-cím vagy gazdagépnév alapján. A -port paraméter megadja a vCenter-kiszolgálón a csatlakozáshoz használt portot, a -Name paraméter a vCenter-kiszolgálóhoz használandó felhasználóbarát nevet, a -Account paraméter pedig a konfigurációs kiszolgálón a vCenter-kiszolgáló által felügyelt virtuális gépek felderítéséhez használandó fiókleírót adja meg.

# The $AccountHandles[0] variable holds details of vCenter_account

$Job_AddvCenterServer = New-AzRecoveryServicesAsrvCenter -Fabric $ASRFabrics[0] -Name "MyvCenterServer" -IpOrHostName "10.150.24.63" -Account $AccountHandles[0] -Port 443

#Wait for the job to complete and ensure it completed successfully

while (($Job_AddvCenterServer.State -eq "InProgress") -or ($Job_AddvCenterServer.State -eq "NotStarted")) {
        sleep 30;
        $Job_AddvCenterServer = Get-ASRJob -Job $Job_AddvCenterServer
}
$Job_AddvCenterServer
Name             : 0f76f937-f9cf-4e0e-bf27-10c9d1c252a4
ID               : /Subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/VMwareDRToAzurePs/providers/Microsoft.RecoveryServices/vaults/VMwareDRToAzurePs/replicationJobs/0f76f93
                   7-f9cf-4e0e-bf27-10c9d1c252a4
Type             :
JobType          : DiscoverVCenter
DisplayName      : Add vCenter server
ClientRequestId  : a2af8892-5686-4d64-a528-10445bc2f698 ActivityId: 7ec05aad-002e-4da0-991f-95d0de7a9f3a
State            : Succeeded
StateDescription : Completed
StartTime        : 11/24/2017 2:41:47 AM
EndTime          : 11/24/2017 2:44:37 AM
TargetObjectId   : 10.150.24.63
TargetObjectType : VCenter
TargetObjectName : MyvCenterServer
AllowedActions   :
Tasks            : {Adding vCenter server}
Errors           : {}

Tárfiókok létrehozása replikációhoz

Felügyelt lemezre való íráshoz használja a PowerShell Az.RecoveryServices 2.0.0-s modult. Ehhez csak egy naplótárfiók létrehozása szükséges. Ajánlott szabványos fióktípust és LRS-redundanciát használni, mivel csak ideiglenes naplók tárolására szolgál. Győződjön meg arról, hogy a tárfiók ugyanabban az Azure-régióban van létrehozva, mint a tároló.

Ha az Az.RecoveryServices modul 2.0.0-snál régebbi verzióját használja, a következő lépésekkel hozhat létre tárfiókokat. Ezeket a tárfiókokat később a rendszer a virtuális gépek replikálására használja. Győződjön meg arról, hogy a tárfiókok ugyanabban az Azure-régióban vannak létrehozva, mint a tároló. Ezt a lépést kihagyhatja, ha egy meglévő tárfiókot szeretne használni a replikációhoz.

Feljegyzés

Miközben a helyszíni virtuális gépeket prémium szintű tárfiókba replikálja, egy további standard tárfiókot (naplótárfiókot) kell megadnia. A naplótárfiók köztes tárolóként tárolja a replikációs naplókat, amíg a naplók a prémium szintű tárolási célra nem alkalmazhatók.


$PremiumStorageAccount = New-AzStorageAccount -ResourceGroupName "VMwareDRToAzurePs" -Name "premiumstorageaccount1" -Location "East Asia" -SkuName Premium_LRS

$LogStorageAccount = New-AzStorageAccount -ResourceGroupName "VMwareDRToAzurePs" -Name "logstorageaccount1" -Location "East Asia" -SkuName Standard_LRS

$ReplicationStdStorageAccount= New-AzStorageAccount -ResourceGroupName "VMwareDRToAzurePs" -Name "replicationstdstorageaccount1" -Location "East Asia" -SkuName Standard_LRS

VMware virtuális gépek replikálása

A virtuális gépek felderítése körülbelül 15–20 percet vesz igénybe a vCenter-kiszolgálóról. A felfedezést követően minden felderített virtuális géphez létrejön egy védhető elemobjektum az Azure Site Recoveryben. Ebben a lépésben a felderített virtuális gépek közül három replikálódik az előző lépésben létrehozott Azure Storage-fiókokba.

A felderített virtuális gépek védelméhez a következő részletekre lesz szüksége:

  • A replikálni kívánt védhető elem.
  • A virtuális gép replikálásához használt tárfiók (csak akkor, ha tárfiókba replikál).
  • Naplótárolásra van szükség a virtuális gépek prémium szintű tárfiókhoz vagy felügyelt lemezhez való védelméhez.
  • A replikációhoz használandó folyamatkiszolgáló. A rendszer lekérte és mentette az elérhető folyamatkiszolgálók listáját a $ProcessServers[0](ScaleOut-ProcessServer) és $ProcessServers[1](ConfigurationServer) változókban.
  • A Mobility szolgáltatás szoftver leküldéses telepítéséhez használt fiók a gépekre. A rendszer lekérte és tárolta az elérhető fiókok listáját a $AccountHandles változóban.
  • A replikációhoz használandó replikációs házirend védelmi tárolóleképezése.
  • Az az erőforráscsoport, amelyben a virtuális gépeket feladatátvételkor létre kell hozni.
  • Opcionálisan azt az Azure-beli virtuális hálózatot és alhálózatot, amelyhez a feladatátvételi virtuális gépet csatlakoztatni kell.

Most replikálja a következő virtuális gépeket a táblázatban megadott beállításokkal:

Virtuális gép Folyamatkiszolgáló Tárfiók Log Storage-fiók Szabályzat Fiók Mobility szolgáltatás telepítéshez Cél-erőforráscsoport Cél virtuális hálózata Célalhálózat
CentOSVM1 ConfigurationServer n/a logstorageaccount1 ReplicationPolicy LinuxAccount VMwareDRToAzurePs ASR-vnet 1. alhálózat
Win 2K12VM1 ScaleOut-ProcessServer premiumstorageaccount1 logstorageaccount1 ReplicationPolicy WindowsAccount VMwareDRToAzurePs ASR-vnet 1. alhálózat
CentOSVM2 ConfigurationServer replicationstdstorageaccount1 n/a ReplicationPolicy LinuxAccount VMwareDRToAzurePs ASR-vnet 1. alhálózat

#Get the target resource group to be used
$ResourceGroup = Get-AzResourceGroup -Name "VMwareToAzureDrPs"

#Get the target virtual network to be used
$RecoveryVnet = Get-AzVirtualNetwork -Name "ASR-vnet" -ResourceGroupName "asrrg" 

#Get the protection container mapping for replication policy named ReplicationPolicy
$PolicyMap  = Get-AzRecoveryServicesAsrProtectionContainerMapping -ProtectionContainer $ProtectionContainer | where PolicyFriendlyName -eq "ReplicationPolicy"

#Get the protectable item corresponding to the virtual machine CentOSVM1
$VM1 = Get-AzRecoveryServicesAsrProtectableItem -ProtectionContainer $ProtectionContainer -FriendlyName "CentOSVM1"

# Enable replication for virtual machine CentOSVM1 using the Az.RecoveryServices module 2.0.0 onwards to replicate to managed disks
# The name specified for the replicated item needs to be unique within the protection container. Using a random GUID to ensure uniqueness
$Job_EnableReplication1 = New-AzRecoveryServicesAsrReplicationProtectedItem -VMwareToAzure -ProtectableItem $VM1 -Name (New-Guid).Guid -ProtectionContainerMapping $PolicyMap -ProcessServer $ProcessServers[1] -Account $AccountHandles[2] -RecoveryResourceGroupId $ResourceGroup.ResourceId -logStorageAccountId $LogStorageAccount.Id -RecoveryAzureNetworkId $RecoveryVnet.Id -RecoveryAzureSubnetName "Subnet-1"

# Alternatively, if the virtual machine CentOSVM1 has CMK enabled disks, enable replication using Az module 3.3.0 onwards as below
# $diskID is the Disk Encryption Set ID to be used for all replica managed disks and target managed disks in the target region
$Job_EnableReplication1 = New-AzRecoveryServicesAsrReplicationProtectedItem -VMwareToAzure -ProtectableItem $VM1 -Name (New-Guid).Guid -ProtectionContainerMapping $PolicyMap -ProcessServer $ProcessServers[1] -Account $AccountHandles[2] -RecoveryResourceGroupId $ResourceGroup.ResourceId -logStorageAccountId -DiskEncryptionSetId $diskId $LogStorageAccount.Id -RecoveryAzureNetworkId $RecoveryVnet.Id -RecoveryAzureSubnetName "Subnet-1"

#Get the protectable item corresponding to the virtual machine Win2K12VM1
$VM2 = Get-AzRecoveryServicesAsrProtectableItem -ProtectionContainer $ProtectionContainer -FriendlyName "Win2K12VM1"

# Enable replication for virtual machine Win2K12VM1
$Job_EnableReplication2 = New-AzRecoveryServicesAsrReplicationProtectedItem -VMwareToAzure -ProtectableItem $VM2 -Name (New-Guid).Guid -ProtectionContainerMapping $PolicyMap -RecoveryAzureStorageAccountId $PremiumStorageAccount.Id -LogStorageAccountId $LogStorageAccount.Id -ProcessServer $ProcessServers[0] -Account $AccountHandles[1] -RecoveryResourceGroupId $ResourceGroup.ResourceId -RecoveryAzureNetworkId $RecoveryVnet.Id -RecoveryAzureSubnetName "Subnet-1"

#Get the protectable item corresponding to the virtual machine CentOSVM2
$VM3 = Get-AzRecoveryServicesAsrProtectableItem -ProtectionContainer $ProtectionContainer -FriendlyName "CentOSVM2"

# Enable replication for virtual machine CentOSVM2
$Job_EnableReplication3 = New-AzRecoveryServicesAsrReplicationProtectedItem -VMwareToAzure -ProtectableItem $VM3 -Name (New-Guid).Guid -ProtectionContainerMapping $PolicyMap -RecoveryAzureStorageAccountId $ReplicationStdStorageAccount.Id  -ProcessServer $ProcessServers[1] -Account $AccountHandles[2] -RecoveryResourceGroupId $ResourceGroup.ResourceId -RecoveryAzureNetworkId $RecoveryVnet.Id -RecoveryAzureSubnetName "Subnet-1"

Miután az engedélyezési replikációs feladat sikeresen befejeződött, a rendszer elindítja a kezdeti replikációt a virtuális gépeken. A kezdeti replikáció a replikálandó adatok mennyiségétől és a replikációhoz rendelkezésre álló sávszélességtől függően eltarthat egy ideig. A kezdeti replikáció befejezése után a virtuális gép védett állapotba kerül. Miután a virtuális gép elérte a védett állapotot, elvégezheti a virtuális gép feladatátvételi tesztét, hozzáadhatja a helyreállítási tervekhez stb.

A get-ASRReplicationProtectedItem parancsmaggal ellenőrizheti a virtuális gép replikációs állapotát és replikációs állapotát.

Get-AzRecoveryServicesAsrReplicationProtectedItem -ProtectionContainer $ProtectionContainer | Select FriendlyName, ProtectionState, ReplicationHealth
FriendlyName ProtectionState                 ReplicationHealth
------------ ---------------                 -----------------
CentOSVM1    Protected                       Normal
CentOSVM2    InitialReplicationInProgress    Normal
Win2K12VM1   Protected                       Normal

Feladatátvételi beállítások konfigurálása

A védett gépek feladatátvételi beállításai a Set-ASRReplicationProtectedItem parancsmaggal frissíthetők. A parancsmaggal frissíthető beállítások némelyike a következő:

  • A feladatátvételkor létrehozandó virtuális gép neve
  • A feladatátvételkor létrehozandó virtuális gép virtuálisgép-mérete
  • Azure-beli virtuális hálózat és alhálózat, amelyhez a virtuális gép hálózati adaptereinek csatlakozniuk kell feladatátvételkor
  • Feladatátvétel felügyelt lemezekre
  • Az Azure Hybrid Use Benefit alkalmazása
  • Rendeljen hozzá egy statikus IP-címet a cél virtuális hálózatból, amelyet a feladatátvétel során a virtuális géphez kell rendelni.

Ebben a példában frissítjük a Win2K12VM1 virtuális gép feladatátvételkor létrehozandó virtuális gépének méretét, és meg kell adni, hogy a virtuális gép felügyelt lemezeket használjon feladatátvételkor.

$ReplicatedVM1 = Get-AzRecoveryServicesAsrReplicationProtectedItem -FriendlyName "Win2K12VM1" -ProtectionContainer $ProtectionContainer

Set-AzRecoveryServicesAsrReplicationProtectedItem -InputObject $ReplicatedVM1 -Size "Standard_DS11" -UseManagedDisk True
Name             : cafa459c-44a7-45b0-9de9-3d925b0e7db9
ID               : /Subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/VMwareDRToAzurePs/providers/Microsoft.RecoveryServices/vaults/VMwareDRToAzurePs/replicationJobs/cafa459
                   c-44a7-45b0-9de9-3d925b0e7db9
Type             :
JobType          : UpdateVmProperties
DisplayName      : Update the virtual machine
ClientRequestId  : b0b51b2a-f151-4e9a-a98e-064a5b5131f3 ActivityId: ac2ba316-be7b-4c94-a053-5363f683d38f
State            : InProgress
StateDescription : InProgress
StartTime        : 11/24/2017 2:04:26 PM
EndTime          :
TargetObjectId   : 88bc391e-d091-11e7-9484-000c2955bb50
TargetObjectType : ProtectionEntity
TargetObjectName : Win2K12VM1
AllowedActions   :
Tasks            : {Update the virtual machine properties}
Errors           : {}

Feladatátvételi teszt futtatása

  1. Futtasson egy vészhelyreállítási próbát (feladatátvételi teszt) az alábbiak szerint:

    #Test failover of Win2K12VM1 to the test virtual network "V2TestNetwork"
    
    #Get details of the test failover virtual network to be used
    TestFailovervnet = Get-AzVirtualNetwork -Name "V2TestNetwork" -ResourceGroupName "asrrg" 
    
    #Start the test failover operation
    $TFOJob = Start-AzRecoveryServicesAsrTestFailoverJob -ReplicationProtectedItem $ReplicatedVM1 -AzureVMNetworkId $TestFailovervnet.Id -Direction PrimaryToRecovery
    
  2. Miután a feladatátvételi feladat sikeresen befejeződött, láthatja, hogy egy "-Test" utótaggal ellátott virtuális gép (ebben az esetben Win2K12VM1-Test) létrejön az Azure-ban.

  3. Most már csatlakozhat a virtuális gépen meghiúsult teszthez, és ellenőrizheti a feladatátvételi tesztet.

  4. Törölje a feladatátvételi tesztet a Start-ASRTestFailoverCleanupJob parancsmaggal. Ez a művelet törli a feladatátvételi tesztművelet részeként létrehozott virtuális gépet.

    $Job_TFOCleanup = Start-AzRecoveryServicesAsrTestFailoverCleanupJob -ReplicationProtectedItem $ReplicatedVM1
    

Feladatátvétel az Azure-ba

Ebben a lépésben a Win2K12VM1 virtuális gépet egy adott helyreállítási pontra megyünk át.

  1. A feladatátvételhez használandó helyreállítási pontok listájának lekérése:

    # Get the list of available recovery points for Win2K12VM1
    $RecoveryPoints = Get-AzRecoveryServicesAsrRecoveryPoint -ReplicationProtectedItem $ReplicatedVM1
    "{0} {1}" -f $RecoveryPoints[0].RecoveryPointType, $RecoveryPoints[0].RecoveryPointTime
    
    CrashConsistent 11/24/2017 5:28:25 PM
    
    
    #Start the failover job
    $Job_Failover = Start-AzRecoveryServicesAsrUnplannedFailoverJob -ReplicationProtectedItem $ReplicatedVM1 -Direction PrimaryToRecovery -RecoveryPoint $RecoveryPoints[0]
    do {
            $Job_Failover = Get-ASRJob -Job $Job_Failover;
            sleep 60;
    } while (($Job_Failover.State -eq "InProgress") -or ($JobFailover.State -eq "NotStarted"))
    $Job_Failover.State
    
    Succeeded
    
  2. A sikeres feladatátvétel után véglegesítheti a feladatátvételi műveletet, és visszaállíthatja a fordított replikációt az Azure-ból a helyszíni VMware-helyre.

Következő lépések

Megtudhatja, hogyan automatizálhat további feladatokat az Azure Site Recovery PowerShell-referencia használatával.