Hyper-V virtuális gépek Azure-ba történő vészhelyreállításának beállítása a PowerShell és az Azure Resource Manager használatával
Az Azure Site Recovery hozzájárul az üzletmenet-folytonossági és vészhelyreállítási (BCDR) stratégiához az Azure-beli virtuális gépek (virtuális gépek), valamint a helyszíni virtuális gépek és fizikai kiszolgálók replikációjának, feladatátvételének és helyreállításának vezénylésével.
Ez a cikk azt ismerteti, hogyan replikálhat Hyper-V virtuális gépeket az Azure-ba a Windows PowerShell és az Azure Resource Manager együttes használatával. A cikkben használt példa bemutatja, hogyan replikálhat egyetlen Hyper-V-gazdagépen futó virtuális gépet az Azure-ba.
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.
Azure PowerShell
Az Azure PowerShell parancsmagokkal kezeli az Azure-t a Windows PowerShell használatával. Az Azure Resource Managerhez készült Azure PowerShell-lel elérhető Site Recovery PowerShell-parancsmagok segítenek megvédeni és helyreállítani a kiszolgálókat az Azure-ban.
A cikk használatához nem kell PowerShell-szakértőnek lennie, de ismernie kell az alapvető fogalmakat, például a modulokat, a parancsmagokat és a munkameneteket. További információkért tekintse meg a PowerShell dokumentációját és az Azure PowerShell azure Resource Managerrel való használatát.
Feljegyzés
A Felhőszolgáltató (CSP) programban részt vevő Microsoft-partnerek konfigurálhatják és kezelhetik az ügyfélkiszolgálók védelmét a megfelelő CSP-előfizetéseik (bérlői előfizetéseik) számára.
Előkészületek
Győződjön meg arról, hogy a következő előfeltételek teljesülnek:
- Egy Microsoft Azure-fiók . Kezdésként használhatja az ingyenes próbaverziót is. Emellett az Azure Site Recovery Manager díjszabásáról is olvashat.
- Azure PowerShell. A kiadással és a telepítés módjával kapcsolatos információkért lásd az Azure PowerShell telepítését ismertető témakört.
Emellett a cikkben ismertetett konkrét példa a következő előfeltételekkel rendelkezik:
- Egy Windows Server 2012 R2 vagy Microsoft Hyper-V Server 2012 R2 rendszerű Hyper-V gazdagép, amely egy vagy több virtuális gépet tartalmaz. A Hyper-V-kiszolgálókat közvetlenül vagy proxyn keresztül kell csatlakoztatni az internethez.
- A replikálni kívánt virtuális gépeknek meg kell felelniük ezeknek az előfeltételeknek.
1. lépés: Bejelentkezés az Azure-fiókba
Nyisson meg egy PowerShell-konzolt, és futtassa ezt a parancsot az Azure-fiókba való bejelentkezéshez. A parancsmag egy weblapot jelenít meg, amely a fiók hitelesítő adatainak megadását kéri:
Connect-AzAccount
.- A hitelesítő adatok paraméterként is megadhatóak a
Connect-AzAccount
parancsmagban. - Ha Ön egy bérlő nevében dolgozó CSP-partner, adja meg az ügyfelet bérlőként a bérlőazonosító vagy a bérlő elsődleges tartományneve használatával. Például:
Connect-AzAccount -Tenant "fabrikam.com"
- A hitelesítő adatok paraméterként is megadhatóak a
Társítsa a fiókhoz használni kívánt előfizetést, mivel egy fiók több előfizetéssel is rendelkezhet:
Set-AzContext -Subscription $SubscriptionName
Ellenőrizze, hogy az előfizetés regisztrálva van-e a Recovery Services és a Site Recovery Azure-szolgáltatóinak használatára az alábbi parancsok használatával:
Get-AzResourceProvider -ProviderNamespace Microsoft.RecoveryServices
Győződjön meg arról, hogy a parancs kimenetében a RegistrationState be van állítva Regisztrált értékre, továbbléphet a 2. lépésre. Ha nem, regisztrálja a hiányzó szolgáltatót az előfizetésében az alábbi parancsok futtatásával:
Register-AzResourceProvider -ProviderNamespace Microsoft.RecoveryServices
Ellenőrizze, hogy a szolgáltatók sikeresen regisztráltak-e a következő parancsokkal:
Get-AzResourceProvider -ProviderNamespace Microsoft.RecoveryServices
2. lépés: A tároló beállítása
Hozzon létre egy Azure Resource Manager-erőforráscsoportot, amelyben létrehozza a tárolót, vagy használjon egy meglévő erőforráscsoportot. Hozzon létre egy új erőforráscsoportot az alábbiak szerint. A
$ResourceGroupName
változó tartalmazza a létrehozni kívánt erőforráscsoport nevét, a $Geo változó pedig azt az Azure-régiót, amelyben létre kívánja hozni az erőforráscsoportot (például "Dél-Brazília").New-AzResourceGroup -Name $ResourceGroupName -Location $Geo
Az előfizetésben található erőforráscsoportok listájának lekéréséhez futtassa a
Get-AzResourceGroup
parancsmagot.Hozzon létre egy új Azure Recovery Services-tárolót az alábbiak szerint:
$vault = New-AzRecoveryServicesVault -Name <string> -ResourceGroupName <string> -Location <string>
A parancsmaggal lekérheti a Get-AzRecoveryServicesVault
meglévő tárolók listáját.
3. lépés: A Recovery Services-tároló környezetének beállítása
Állítsa be a tárolókörnyezetet az alábbiak szerint:
Set-AzRecoveryServicesAsrVaultContext -Vault $vault
4. lépés: Hyper-V-webhely létrehozása
Hozzon létre egy új Hyper-V-webhelyet az alábbiak szerint:
$sitename = "MySite" #Specify site friendly name New-AzRecoveryServicesAsrFabric -Type HyperVSite -Name $sitename
Ez a parancsmag elindít egy Site Recovery-feladatot a hely létrehozásához, és visszaad egy Site Recovery-feladatobjektumot. Várja meg, amíg a feladat befejeződik, és ellenőrizze, hogy a feladat sikeresen befejeződött-e.
Get-AzRecoveryServicesAsrJob
A parancsmaggal lekérheti a feladatobjektumot, és ellenőrizheti a feladat aktuális állapotát.Hozzon létre és töltsön le egy regisztrációs kulcsot a webhelyhez az alábbiak szerint:
$SiteIdentifier = Get-AzRecoveryServicesAsrFabric -Name $sitename | Select-Object -ExpandProperty SiteIdentifier $path = Get-AzRecoveryServicesVaultSettingsFile -Vault $vault -SiteIdentifier $SiteIdentifier -SiteFriendlyName $sitename
Másolja a letöltött kulcsot a Hyper-V gazdagépre. A Hyper-V-gazdagép webhelyre való regisztrálásához szüksége van a kulcsra.
5. lépés: A szolgáltató és az ügynök telepítése
Töltse le a telepítőt a Szolgáltató legújabb verziójához a Microsofttól.
Futtassa a telepítőt a Hyper-V gazdagépen.
A telepítés végén folytassa a regisztrációs lépéssel.
Amikor a rendszer kéri, adja meg a letöltött kulcsot, és fejezze be a Hyper-V-gazdagép regisztrációját.
Ellenőrizze, hogy a Hyper-V-gazdagép regisztrálva van-e a webhelyen az alábbiak szerint:
$server = Get-AzRecoveryServicesAsrFabric -Name $siteName | Get-AzRecoveryServicesAsrServicesProvider -FriendlyName $server-friendlyname
Ha Hyper-V magkiszolgálót futtat, töltse le a telepítőfájlt, és kövesse az alábbi lépéseket:
A következő parancs futtatásával bontsa ki a fájlokat a AzureSiteRecoveryProvider.exe egy helyi könyvtárba:
AzureSiteRecoveryProvider.exe /x:. /q
Futtassa az alábbi parancsot:
.\setupdr.exe /i
Az eredmények naplózása a következőbe : %ProgramData%\ASRLogs\DRASetupWizard.log.
Regisztrálja a kiszolgálót a következő paranccsal:
cd C:\Program Files\Microsoft Azure Site Recovery Provider\DRConfigurator.exe" /r /Friendlyname "FriendlyName of the Server" /Credentials "path to where the credential file is saved"
6. lépés: Replikációs szabályzat létrehozása
A kezdés előtt a megadott tárfióknak ugyanabban az Azure-régióban kell lennie, mint a tároló, és engedélyeznie kell a georeplikálást.
Hozzon létre egy replikációs szabályzatot az alábbiak szerint:
$ReplicationFrequencyInSeconds = "300"; #options are 30,300,900 $PolicyName = “replicapolicy” $Recoverypoints = 6 #specify the number of recovery points $storageaccountID = Get-AzStorageAccount -Name "mystorea" -ResourceGroupName "MyRG" | Select-Object -ExpandProperty Id $PolicyResult = New-AzRecoveryServicesAsrPolicy -Name $PolicyName -ReplicationProvider “HyperVReplicaAzure” -ReplicationFrequencyInSeconds $ReplicationFrequencyInSeconds -NumberOfRecoveryPointsToRetain $Recoverypoints -ApplicationConsistentSnapshotFrequencyInHours 1 -RecoveryAzureStorageAccountId $storageaccountID
Ellenőrizze a visszaadott feladatot, hogy a replikációs házirend létrehozása sikeres legyen.
Kérje le a helynek megfelelő védelmi tárolót az alábbiak szerint:
$protectionContainer = Get-AzRecoveryServicesAsrProtectionContainer
A védelmi tároló társítása a replikációs szabályzattal az alábbiak szerint:
$Policy = Get-AzRecoveryServicesAsrPolicy -FriendlyName $PolicyName $associationJob = New-AzRecoveryServicesAsrProtectionContainerMapping -Name $mappingName -Policy $Policy -PrimaryProtectionContainer $protectionContainer[0]
Várja meg, amíg a társítás feladat sikeresen befejeződik.
Kérje le a védelmi tároló leképezését.
$ProtectionContainerMapping = Get-AzRecoveryServicesAsrProtectionContainerMapping -ProtectionContainer $protectionContainer
7. lépés: Virtuálisgép-védelem engedélyezése
Kérje le a védeni kívánt virtuális gépnek megfelelő védhető elemet az alábbiak szerint:
$VMFriendlyName = "Fabrikam-app" #Name of the VM $ProtectableItem = Get-AzRecoveryServicesAsrProtectableItem -ProtectionContainer $protectionContainer -FriendlyName $VMFriendlyName
A virtuális gép védelme. Ha a védeni kívánt virtuális géphez egynél több lemez van csatlakoztatva, adja meg az operációsrendszer-lemezt az OSDiskName paraméterrel.
$OSType = "Windows" # "Windows" or "Linux" $DRjob = New-AzRecoveryServicesAsrReplicationProtectedItem -ProtectableItem $VM -Name $VM.Name -ProtectionContainerMapping $ProtectionContainerMapping -RecoveryAzureStorageAccountId $StorageAccountID -OSDiskName $OSDiskNameList[$i] -OS $OSType -RecoveryResourceGroupId $ResourceGroupID
Várja meg, amíg a virtuális gépek elérik a védett állapotot a kezdeti replikáció után. Ez eltarthat egy ideig, olyan tényezőktől függően, mint a replikálni kívánt adatok mennyisége és az Azure-nak rendelkezésre álló felső sávszélesség. Ha védett állapot van érvényben, a feladat állapota és a StateDescription a következőképpen frissül:
PS C:\> $DRjob = Get-AzRecoveryServicesAsrJob -Job $DRjob PS C:\> $DRjob | Select-Object -ExpandProperty State Succeeded PS C:\> $DRjob | Select-Object -ExpandProperty StateDescription Completed
Frissítse a helyreállítási tulajdonságokat (például a virtuálisgép-szerepkör méretét) és azt az Azure-hálózatot, amelyhez a virtuálisgép-hálózati adaptert a feladatátvétel után csatlakoztatni szeretné.
PS C:\> $nw1 = Get-AzVirtualNetwork -Name "FailoverNw" -ResourceGroupName "MyRG" PS C:\> $VMFriendlyName = "Fabrikam-App" PS C:\> $rpi = Get-AzRecoveryServicesAsrReplicationProtectedItem -ProtectionContainer $protectionContainer -FriendlyName $VMFriendlyName PS C:\> $UpdateJob = Set-AzRecoveryServicesAsrReplicationProtectedItem -InputObject $rpi -PrimaryNic $VM.NicDetailsList[0].NicId -RecoveryNetworkId $nw1.Id -RecoveryNicSubnetName $nw1.Subnets[0].Name PS C:\> $UpdateJob = Get-AzRecoveryServicesAsrJob -Job $UpdateJob PS C:\> $UpdateJob | Select-Object -ExpandProperty state PS C:\> Get-AzRecoveryServicesAsrJob -Job $job | Select-Object -ExpandProperty state Succeeded
Feljegyzés
Ha CMK-kompatibilis felügyelt lemezekre szeretne replikálni az Azure-ban, végezze el az alábbi lépéseket az Az PowerShell 3.3.0-s verzióival:
- Felügyelt lemezek feladatátvételének engedélyezése a virtuális gép tulajdonságainak frissítésével
Get-AzRecoveryServicesAsrReplicationProtectedItem
A parancsmag használatával kérje le a védett elem minden lemezének lemezazonosítóját- Hozzon létre egy szótárobjektumot a parancsmaggal
New-Object "System.Collections.Generic.Dictionary``2[System.String,System.String]"
a lemezazonosító lemeztitkosítási csoporthoz való leképezéséhez. Ezeket a lemeztitkosítási csoportokat előre létre kell hoznia a célrégióban. - Frissítse a virtuálisgép-tulajdonságokat parancsmag használatával
Set-AzRecoveryServicesAsrReplicationProtectedItem
a DiskIdToDiskEncryptionSetMap paraméter szótárobjektumának átadásával.
8. lépés: Feladatátvételi teszt futtatása
Futtasson egy feladatátvételi tesztet az alábbiak szerint:
$nw = Get-AzVirtualNetwork -Name "TestFailoverNw" -ResourceGroupName "MyRG" #Specify Azure vnet name and resource group $rpi = Get-AzRecoveryServicesAsrReplicationProtectedItem -ProtectionContainer $protectionContainer -FriendlyName $VMFriendlyName $TFjob = Start-AzRecoveryServicesAsrTestFailoverJob -ReplicationProtectedItem $VM -Direction PrimaryToRecovery -AzureVMNetworkId $nw.Id
Ellenőrizze, hogy a teszt virtuális gép létrejött-e az Azure-ban. A teszt feladatátvételi feladat felfüggesztése a teszt virtuális gép Azure-beli létrehozása után történik.
A feladatátvételi teszt törléséhez és befejezéséhez futtassa a következőt:
$TFjob = Start-AzRecoveryServicesAsrTestFailoverCleanupJob -ReplicationProtectedItem $rpi -Comment "TFO done"
Következő lépések
További információ az Azure Site Recoveryről az Azure Resource Manager PowerShell-parancsmagjaival.