Konfigurera haveriberedskap för virtuella VMware-datorer till Azure med PowerShell

Varning

Den här artikeln refererar till CentOS, en Linux-distribution som har statusen End Of Life (EOL). Överväg att använda och planera i enlighet med detta. Mer information finns i CentOS End Of Life-vägledningen.

I den här artikeln får du se hur du replikerar och redundansväxlar virtuella VMware-datorer till Azure med hjälp av Azure PowerShell.

Du lär dig att:

  • Skapa ett Recovery Services-valv och ange valvkontexten.
  • Verifiera serverregistrering i valvet.
  • Konfigurera replikering, inklusive en replikeringsprincip. Lägg till vCenter-servern och identifiera virtuella datorer.
  • Lägga till en vCenter-server och identifiera
  • Skapa lagringskonton för att lagra replikeringsloggar eller data och replikera de virtuella datorerna.
  • Utför en redundans. Konfigurera redundansinställningar, utför en inställning för replikering av virtuella datorer.

Kommentar

Vi rekommenderar att du använder Azure Az PowerShell-modulen för att interagera med Azure. Se Installera Azure PowerShell för att komma igång. Information om hur du migrerar till Az PowerShell-modulen finns i artikeln om att migrera Azure PowerShell från AzureRM till Az.

Förutsättningar

Innan du börjar:

Logga in på Azure

Logga in på din Azure-prenumeration med hjälp av cmdleten Connect-AzAccount:

Connect-AzAccount

Välj den Azure-prenumeration som du vill replikera dina virtuella VMware-datorer till. Använd cmdleten Get-AzSubscription för att hämta listan över Azure-prenumerationer som du har åtkomst till. Välj den Azure-prenumeration som du vill arbeta med med cmdleten Select-AzSubscription.

Select-AzSubscription -SubscriptionName "ASR Test Subscription"

Skapa ett Recovery Services-valv

  1. Skapa en resursgrupp där Du kan skapa Recovery Services-valvet. I följande exempel heter resursgruppen VMwareDRtoAzurePS och skapas i regionen Asien, östra.

    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. Skapa ett Recovery Services-valv. I följande exempel heter Recovery Services-valvet VMwareDRToAzurePs och skapas i regionen Asien, östra och i resursgruppen som skapades i föregående steg.

    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. Ladda ned valvregistreringsnyckeln för valvet. Valvregistreringsnyckeln används för att registrera den lokala konfigurationsservern i det här valvet. Registrering är en del av installationsprocessen för konfigurationsserverns programvara.

    #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. Använd den nedladdade valvregistreringsnyckeln och följ följande steg i artiklarna för att slutföra installationen och registreringen av konfigurationsservern.

Ange valvkontexten

Ange valvkontexten med cmdleten Set-ASRVaultContext. När de har angetts utförs efterföljande Azure Site Recovery-åtgärder i PowerShell-sessionen i kontexten för det valda valvet.

Dricks

Azure Site Recovery PowerShell-modulen (Az.RecoveryServices-modulen) levereras med enkla alias för de flesta cmdletar. Cmdletarna i modulen har formatet Operation-AzRecoveryServicesAsr<> Object> och har motsvarande alias som har formatet <Operation-ASR>< Object.>< Du kan ersätta cmdlet-aliasen för enkel användning.

I följande exempel används valvinformationen från variabeln $vault för att ange valvkontexten för PowerShell-sessionen.

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

Som ett alternativ till cmdleten Set-ASRVaultContext kan man också använda cmdleten Import-AzRecoveryServicesAsrVaultSettingsFile för att ange valvkontexten. Ange den sökväg där nyckelfilen för valvregistrering finns som parametern -path till cmdleten Import-AzRecoveryServicesAsrVaultSettingsFile. Till exempel:

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

Efterföljande avsnitt i den här artikeln förutsätter att valvkontexten för Azure Site Recovery-åtgärder har angetts.

Verifiera valvregistrering

I det här exemplet har vi följande krav:

  • En konfigurationsserver (ConfigurationServer) har registrerats för det här valvet.
  • En extra processserver (ScaleOut-ProcessServer) har registrerats för ConfigurationServer
  • Konton (vCenter_account, WindowsAccount, LinuxAccount) har konfigurerats på konfigurationsservern. Dessa konton används för att lägga till vCenter-servern, identifiera virtuella datorer och push-installera mobilitetstjänstprogramvaran på Windows- och Linux-servrar som ska replikeras.
  1. Registrerade konfigurationsservrar representeras av ett infrastrukturobjekt i Site Recovery. Hämta listan över infrastrukturobjekt i valvet och identifiera konfigurationsservern.

    # 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. Identifiera de processservrar som kan användas för att replikera datorer.

    $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
    

    Från utdata ovan motsvarar $ProcessServers[0] ScaleOut-ProcessServer och $ProcessServers[1] motsvarar processserverrollen på ConfigurationServer

  3. Identifiera konton som har konfigurerats på konfigurationsservern.

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

    Från utdata ovan motsvarar $AccountHandles[0] kontot vCenter_account, $AccountHandles[1] till kontot WindowsAccount och $AccountHandles[2] till kontot LinuxAccount

Skapa replikeringsprincip

I det här steget skapas två replikeringsprinciper. En princip för att replikera virtuella VMware-datorer till Azure och den andra för att replikera växlade över virtuella datorer som körs i Azure tillbaka till den lokala VMware-platsen.

Kommentar

De flesta Azure Site Recovery-åtgärder körs asynkront. När du initierar en åtgärd skickas ett Azure Site Recovery-jobb och ett jobbspårningsobjekt returneras. Det här jobbspårningsobjektet kan användas för att övervaka åtgärdens status.

  1. Skapa en replikeringsprincip med namnet ReplicationPolicy för att replikera virtuella VMware-datorer till Azure med de angivna egenskaperna.

    $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. Skapa en replikeringsprincip som ska användas för återställning efter fel från Azure till den lokala VMware-webbplatsen.

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

    Använd jobbinformationen i $Job_FailbackPolicyCreate för att spåra åtgärden till slutförande.

    • Skapa en skyddscontainermappning för att mappa replikeringsprinciper med konfigurationsservern.
    #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
    
    

Lägga till en vCenter-server och identifiera virtuella datorer

Lägg till en vCenter Server efter IP-adress eller värdnamn. Parametern -port anger porten på den vCenter-server som ska anslutas till, -Name-parametern anger ett eget namn som ska användas för vCenter-servern, och parametern -Account anger kontohandtaget på konfigurationsservern som ska användas för att identifiera virtuella datorer som hanteras av vCenter-servern.

# 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           : {}

Skapa lagringskonton för replikering

Om du vill skriva till en hanterad disk använder du PowerShell Az.RecoveryServices-modulen 2.0.0 och senare. Det kräver bara att ett logglagringskonto skapas. Vi rekommenderar att du använder en standardkontotyp och LRS-redundans eftersom den endast används för att lagra tillfälliga loggar. Kontrollera att lagringskontot har skapats i samma Azure-region som valvet.

Om du använder en version av Az.RecoveryServices-modulen som är äldre än 2.0.0 använder du följande steg för att skapa lagringskonton. Dessa lagringskonton används senare för att replikera virtuella datorer. Kontrollera att lagringskontona skapas i samma Azure-region som valvet. Du kan hoppa över det här steget om du planerar att använda ett befintligt lagringskonto för replikering.

Kommentar

När du replikerar lokala virtuella datorer till ett Premium Storage-konto måste du ange ytterligare ett standardlagringskonto (logglagringskonto). Logglagringskontot innehåller replikeringsloggar som ett mellanliggande lager tills loggarna kan tillämpas på premiumlagringsmålet.


$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

Replikera virtuella VMware-datorer

Det tar cirka 15–20 minuter innan virtuella datorer identifieras från vCenter-servern. När det har identifierats skapas ett skyddsbart objektobjekt i Azure Site Recovery för varje identifierad virtuell dator. I det här steget replikeras tre av de identifierade virtuella datorerna till de Azure Storage-konton som skapades i föregående steg.

Du behöver följande information för att skydda en identifierad virtuell dator:

  • Det skyddsbara objekt som ska replikeras.
  • Lagringskontot som den virtuella datorn ska replikeras till (endast om du replikerar till lagringskontot).
  • En logglagring krävs för att skydda virtuella datorer till ett premiumlagringskonto eller till en hanterad disk.
  • Den processserver som ska användas för replikering. Listan över tillgängliga processservrar har hämtats och sparats i variablerna $ProcessServers[0](ScaleOut-ProcessServer) och $ProcessServers[1] (ConfigurationServer).
  • Kontot som ska användas för att push-installera tjänsten Mobility programvara på datorerna. Listan över tillgängliga konton har hämtats och lagrats i variabeln $AccountHandles .
  • Skyddscontainerns mappning för replikeringsprincipen som ska användas för replikering.
  • Resursgruppen där virtuella datorer måste skapas vid redundansväxling.
  • Du kan också använda det virtuella Azure-nätverket och undernätet som den virtuella datorn ska vara ansluten till.

Replikera nu följande virtuella datorer med de inställningar som anges i den här tabellen:

Virtuell maskin Processserver Lagringskonto Logglagringskonto Policy Konto för tjänsten Mobility installation Målresursgrupp Virtuellt målnätverk Målundernät
CentOSVM1 ConfigurationServer Ej tillämpligt logstorageaccount1 ReplicationPolicy LinuxAccount VMwareDRToAzurePs ASR-vnet Subnet-1
Vinn 2K12VM1 ScaleOut-ProcessServer premiumstorageaccount1 logstorageaccount1 ReplicationPolicy WindowsAccount VMwareDRToAzurePs ASR-vnet Subnet-1
CentOSVM2 ConfigurationServer replicationstdstorageaccount1 Ej tillämpligt ReplicationPolicy LinuxAccount VMwareDRToAzurePs ASR-vnet Subnet-1

#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"

När aktiveringsreplikeringsjobbet har slutförts startas den inledande replikeringen för de virtuella datorerna. Inledande replikering kan ta en stund beroende på mängden data som ska replikeras och den tillgängliga bandbredden för replikering. När den inledande replikeringen har slutförts flyttas den virtuella datorn till ett skyddat tillstånd. När den virtuella datorn når ett skyddat tillstånd kan du utföra ett redundanstest för den virtuella datorn, lägga till den i återställningsplaner osv.

Du kan kontrollera replikeringstillståndet och replikeringshälsan för den virtuella datorn med cmdleten Get-ASRReplicationProtectedItem.

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

Konfigurera redundansinställningar

Redundansinställningar för skyddade datorer kan uppdateras med hjälp av cmdleten Set-ASRReplicationProtectedItem. Några av de inställningar som kan uppdateras via den här cmdleten är:

  • Namnet på den virtuella dator som ska skapas vid redundansväxling
  • VM-storleken på den virtuella datorn som ska skapas vid redundansväxling
  • Virtuellt Azure-nätverk och undernät som nätverkskorten för den virtuella datorn ska anslutas till vid redundansväxling
  • Redundansväxling till hanterade diskar
  • Använda Azure Hybrid-användningsförmån
  • Tilldela en statisk IP-adress från det virtuella målnätverket som ska tilldelas till den virtuella datorn vid redundansväxling.

I det här exemplet uppdaterar vi vm-storleken på den virtuella datorn som ska skapas vid redundans för den virtuella datorn Win2K12VM1 och anger att den virtuella datorn använder hanterade diskar vid redundansväxling.

$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           : {}

Kör ett redundanstest

  1. Kör ett haveriberedskapstest (redundanstest) på följande sätt:

    #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. När redundanstestet har slutförts ser du att en virtuell dator med suffixet "-Test" (Win2K12VM1-Test i det här fallet) till dess namn skapas i Azure.

  3. Nu kan du ansluta till testet redundansväxla den virtuella datorn och verifiera redundanstestet.

  4. Rensa redundanstestet med hjälp av cmdleten Start-ASRTestFailoverCleanupJob. Den här åtgärden tar bort den virtuella datorn som skapades som en del av redundanstestet.

    $Job_TFOCleanup = Start-AzRecoveryServicesAsrTestFailoverCleanupJob -ReplicationProtectedItem $ReplicatedVM1
    

Redundansväxla till Azure

I det här steget redundansväxlar vi den virtuella datorn Win2K12VM1 till en specifik återställningspunkt.

  1. Hämta en lista över tillgängliga återställningspunkter som ska användas för redundansväxlingen:

    # 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. När redundansväxlingen har slutförts kan du genomföra redundansåtgärden och konfigurera omvänd replikering från Azure tillbaka till den lokala VMware-platsen.

Nästa steg

Lär dig hur du automatiserar fler uppgifter med hjälp av PowerShell-referensen för Azure Site Recovery.