Sdílet prostřednictvím


Zálohování šifrovaného virtuálního počítače Azure pomocí PowerShellu

Tento skript vytvoří trezor služby Recovery Services s geograficky redundantním úložištěm (GRS) pro šifrovaný virtuální počítač Azure. Použije výchozí zásady ochrany, které umožňují uchovávat denní zálohy po dobu 365 dnů. Aktivuje také počáteční bod obnovení uložený po dobu 30 dnů.

Tato ukázka vyžaduje Azure PowerShell Az 1.0 nebo novější. Spusťte Get-Module -ListAvailable Az a zjistěte, které verze jsou nainstalované. Pokud potřebujete nainstalovat, přečtěte si téma Instalace modulu Azure PowerShellu.

Spuštěním příkazu Connect-AzAccount se přihlaste k Azure.

Pokud nemáte účet Azure, vytvořte si bezplatný účet před tím, než začnete.

Ukázkový skript

Poznámka:

K interakci s Azure doporučujeme použít modul Azure Az PowerShell. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.

# Edit these global variables with your unique Recovery Services Vault name, resource group name and location
$rsVaultName = "myRsVault"
$rgName = "myResourceGroup"
$location = "East US"

# Register the Recovery Services provider and create a resource group
Register-AzResourceProvider -ProviderNamespace "Microsoft.RecoveryServices"
New-AzResourceGroup -Location $location -Name $rgName

# Create a Recovery Services Vault and set its storage redundancy type
New-AzRecoveryServicesVault `
    -Name $rsVaultName `
    -ResourceGroupName $rgName `
    -Location $location 
$vault1 = Get-AzRecoveryServicesVault –Name $rsVaultName
Set-AzRecoveryServicesProperties ` 
    -Vault $vault1 `
    -BackupStorageRedundancy GeoRedundant
    
# Set Recovery Services Vault context and create protection policy
Get-AzRecoveryServicesVault -Name $rsVaultName | Set-AzRecoveryServicesVaultContext 
$schPol = Get-AzRecoveryServicesSchedulePolicyObject -WorkloadType "AzureVM"
$retPol = Get-AzRecoveryServicesRetentionPolicyObject -WorkloadType "AzureVM"
New-AzRecoveryServicesProtectionPolicy `
    -Name "NewPolicy" `
    -WorkloadType "AzureVM" ` 
    -RetentionPolicy $retPol `
    -SchedulePolicy $schPol
    
# Provide permissions to Azure Backup to access key vault and enable backup on the VM
Set-AzKeyVaultAccessPolicy `
    -VaultName "KeyVaultName" `
    -ResourceGroupName "KyeVault-RGName" ` 
    -PermissionsToKeys backup,get,list `
    -PermissionsToSecrets backup,get,list ` 
    -ServicePrincipalName 262044b1-e2ce-469f-a196-69ab7ada62d3
$pol = Get-AzRecoveryServicesProtectionPolicy -Name "NewPolicy" `
Enable-AzRecoveryServicesProtection `
    -Policy $pol `
    -Name "myVM" `
    -ResourceGroupName "VM-RGName" 
    
# Modify protection policy
$retPol = Get-AzRecoveryServicesRetentionPolicyObject -WorkloadType "AzureVM"
$retPol.DailySchedule.DurationCountInDays = 365
$pol = Get-AzRecoveryServicesProtectionPolicy -Name "NewPolicy"
Set-AzRecoveryServicesProtectionPolicy `
    -Policy $pol `
    -RetentionPolicy $RetPol
    
# Trigger a backup and monitor backup job
$namedContainer = Get-AzRecoveryServicesContainer -ContainerType "AzureVM" -Status "Registered" -FriendlyName "myVM"
$item = Get-AzRecoveryServicesBackupItem -Container $namedContainer -WorkloadType "AzureVM"
$job = Backup-AzRecoveryServicesBackupItem -Item $item
$joblist = Get-AzRecoveryServicesJob -Status "InProgress"
Wait-AzRecoveryServicesJob `
        -Job $joblist[0] `
        -Timeout 43200

Úklid po nasazení

Spuštěním následujícího příkazu odeberte skupinu prostředků, virtuální počítač a všechny související prostředky.

Remove-AzResourceGroup -Name myResourceGroup

Vysvětlení skriptu

Tento skript k vytvoření nasazení používá následující příkazy. Každá položka v tabulce odkazuje na dokumentaci specifickou pro příkazy.

Příkaz Poznámky
New-AzResourceGroup Vytvoří skupinu prostředků, ve které se ukládají všechny prostředky.
New-AzRecoveryServicesVault Vytvoří trezor služby Recovery Services pro ukládání záloh.
Set-AzRecoveryServicesBackupProperty Nastaví vlastnosti úložiště zálohování v trezoru služby Recovery Services.
New-AzRecoveryServicesBackupProtectionPolicy Vytvoří zásady ochrany pomocí zásad plánu a zásad uchovávání informací v trezoru služby Recovery Services.
Set-AzKeyVaultAccessPolicy Nastaví oprávnění pro Key Vault a udělí služebnímu účtu přístup k šifrovacím klíčům.
Enable-AzRecoveryServicesBackupProtection Povolí zálohování položky se zadanou zásadou ochrany zálohování.
Set-AzRecoveryServicesBackupProtectionPolicy Upraví existující zásady ochrany záloh.
Backup-AzRecoveryServicesBackupItem Spustí zálohu chráněné položky služby Azure Backup, která není svázaná s plánem zálohování.
Wait-AzRecoveryServicesBackupJob - příkaz sloužící k čekání na dokončení úlohy zálohování v Azure Recovery Services Čeká na dokončení úlohy Azure Backup.
Remove-AzResourceGroup Odstraní skupinu prostředků a všechny prostředky obsažené v ní.

Další kroky

Přečtěte si další informace o modulu Azure PowerShellu.