Tworzenie kopii zapasowej usługi Azure Dyski zarządzane przy użyciu programu Azure PowerShell

W tym artykule wyjaśniono, jak utworzyć kopię zapasową dysku zarządzanego platformy Azure przy użyciu programu Azure PowerShell.

Ten artykuł obejmuje następujące zagadnienia:

  • Tworzenie magazynu kopii zapasowych

  • Tworzenie zasad kopii zapasowych

  • Konfigurowanie kopii zapasowej dysku platformy Azure

  • Uruchamianie zadania tworzenia kopii zapasowej na żądanie

Aby uzyskać informacje na temat dostępności regionu kopii zapasowej dysku platformy Azure, obsługiwanych scenariuszy i ograniczeń, zobacz macierz obsługi.

Tworzenie magazynu kopii zapasowych

Magazyn usługi Backup to jednostka magazynu na platformie Azure, która przechowuje dane kopii zapasowej dla różnych nowszych obciążeń obsługiwanych przez usługę Azure Backup, takich jak serwery usługi Azure Database for PostgreSQL i dyski platformy Azure. Magazyny kopii zapasowych ułatwiają organizowanie danych kopii zapasowych, jednocześnie minimalizując obciążenie związane z zarządzaniem. Magazyny kopii zapasowych są oparte na modelu usługi Azure Resource Manager platformy Azure, który zapewnia rozszerzone możliwości ułatwiające zabezpieczanie danych kopii zapasowych.

Przed utworzeniem magazynu kopii zapasowych wybierz nadmiarowość magazynu danych w magazynie. Następnie przejdź do utworzenia magazynu kopii zapasowych z nadmiarowością magazynu i lokalizacją. W tym artykule utworzymy magazyn kopii zapasowych "TestBkpVault" w regionie "westus" w grupie zasobów "testBkpVaultRG". Użyj polecenia New-AzDataProtectionBackupVault, aby utworzyć magazyn kopii zapasowych. Dowiedz się więcej o tworzeniu magazynu kopii zapasowych.

$storageSetting = New-AzDataProtectionBackupVaultStorageSettingObject -Type LocallyRedundant/GeoRedundant -DataStoreType VaultStore
New-AzDataProtectionBackupVault -ResourceGroupName testBkpVaultRG -VaultName TestBkpVault -Location westus -StorageSetting $storageSetting
$TestBkpVault = Get-AzDataProtectionBackupVault -VaultName TestBkpVault
$TestBKPVault | fl
ETag                :
Id                  : /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourceGroups/testBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/TestBkpVault
Identity            : Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.DppIdentityDetails
IdentityPrincipalId :
IdentityTenantId    :
IdentityType        :
Location            : westus
Name                : TestBkpVault
ProvisioningState   : Succeeded
StorageSetting      : {Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.StorageSetting}
SystemData          : Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.SystemData
Tag                 : Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.DppTrackedResourceTags
Type                : Microsoft.DataProtection/backupVaults

Po utworzeniu magazynu utwórzmy zasady tworzenia kopii zapasowych w celu ochrony dysków platformy Azure.

Tworzenie zasad kopii zapasowych

Aby zrozumieć składniki wewnętrzne zasad kopii zapasowej dla kopii zapasowej dysku platformy Azure, pobierz szablon zasad przy użyciu polecenia Get-AzDataProtectionPolicyTemplate. To polecenie zwraca domyślny szablon zasad dla danego typu źródła danych. Użyj tego szablonu zasad, aby utworzyć nowe zasady.

$policyDefn = Get-AzDataProtectionPolicyTemplate -DatasourceType AzureDisk
$policyDefn | fl


DatasourceType : {Microsoft.Compute/disks}
ObjectType     : BackupPolicy
PolicyRule     : {BackupHourly, Default}

$policyDefn.PolicyRule | fl


BackupParameter           : Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.AzureBackupParams
BackupParameterObjectType : AzureBackupParams
DataStoreObjectType       : DataStoreInfoBase
DataStoreType             : OperationalStore
Name                      : BackupHourly
ObjectType                : AzureBackupRule
Trigger                   : Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.ScheduleBasedTriggerContext
TriggerObjectType         : ScheduleBasedTriggerContext

IsDefault  : True
Lifecycle  : {Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.SourceLifeCycle}
Name       : Default
ObjectType : AzureRetentionRule

Szablon zasad składa się z wyzwalacza (który decyduje o wyzwalaczu kopii zapasowej) i cyklu życia (który decyduje, kiedy usunąć/skopiować/przenieść kopię zapasową). W kopii zapasowej dysku platformy Azure wartość domyślna wyzwalacza to zaplanowany wyzwalacz godzinowy co 4 godziny (PT4H) i przechowywanie każdej kopii zapasowej przez 7 dni.

 $policyDefn.PolicyRule[0].Trigger | fl


ObjectType                    : ScheduleBasedTriggerContext
ScheduleRepeatingTimeInterval : {R/2020-04-05T13:00:00+00:00/PT4H}
TaggingCriterion              : {Default}
$policyDefn.PolicyRule[1].Lifecycle | fl


DeleteAfterDuration        : P7D
DeleteAfterObjectType      : AbsoluteDeleteOption
SourceDataStoreObjectType  : DataStoreInfoBase
SourceDataStoreType        : OperationalStore
TargetDataStoreCopySetting :

Usługa Azure Disk Backup oferuje wiele kopii zapasowych dziennie. Jeśli potrzebujesz częstszych kopii zapasowych, wybierz częstotliwość co godzinę tworzenia kopii zapasowych z możliwością tworzenia kopii zapasowych z interwałami co 4, 6, 8 lub 12 godzin. Kopie zapasowe są zaplanowane na podstawie wybranego interwału czasu . Jeśli na przykład wybierzesz co 4 godziny, kopie zapasowe są wykonywane w przybliżeniu w odstępie co 4 godziny, dzięki czemu kopie zapasowe są równomiernie dystrybuowane w ciągu dnia. Jeśli kopia zapasowa raz dziennie jest wystarczająca, wybierz częstotliwość tworzenia kopii zapasowych codziennie . W dziennej częstotliwości tworzenia kopii zapasowych można określić godzinę wykonania kopii zapasowych. Należy pamiętać, że godzina dnia wskazuje godzinę rozpoczęcia tworzenia kopii zapasowej, a nie godzinę zakończenia tworzenia kopii zapasowej. Czas wymagany do ukończenia operacji tworzenia kopii zapasowej zależy od różnych czynników, w tym rozmiaru dysku, oraz współczynnik zmian między kolejnymi kopiami zapasowymi. Jednak kopia zapasowa dysku platformy Azure to bez agenta kopia zapasowa, która używa migawek przyrostowych, co nie ma wpływu na wydajność aplikacji produkcyjnych.

Uwaga

  • Mimo że wybrany magazyn może mieć globalne ustawienie nadmiarowości, obecnie usługa Azure Disk Backup obsługuje tylko magazyn danych migawek. Wszystkie kopie zapasowe są przechowywane w grupie zasobów w ramach subskrypcji i nie są kopiowane do magazynu kopii zapasowych.
  • W przypadku dysków platformy Azure należących do dysków HDD w warstwie Standardowa, SSD w warstwie Standardowa i SSD w warstwie Premium można zdefiniować harmonogram tworzenia kopii zapasowych z częstotliwością godzinową (1, 2, 4, 6, 8 lub 12 godzin) i częstotliwością dzienną.
  • W przypadku dysków platformy Azure należących do jednostek SKU Premium V2 i Ultra Disk można zdefiniować harmonogram tworzenia kopii zapasowych z częstotliwością godzinną tylko 12 godzin i częstotliwością dzienną .

Aby dowiedzieć się więcej na temat tworzenia zasad, zapoznaj się z dokumentem Dotyczącym zasad usługi Azure Disk Backup.

Jeśli chcesz edytować częstotliwość godzinową lub okres przechowywania, użyj poleceń Edit-AzDataProtectionPolicyTriggerClientObject i/lub Edit-AzDataProtectionPolicyRetentionRuleClientObject . Gdy obiekt zasad ma wszystkie żądane wartości, przejdź do utworzenia nowych zasad z obiektu zasad przy użyciu polecenia New-AzDataProtectionBackupPolicy.

New-AzDataProtectionBackupPolicy -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -Name diskBkpPolicy -Policy $policyDefn

Name                   Type
----                   ----
diskBkpPolicy       Microsoft.DataProtection/backupVaults/backupPolicies

$diskBkpPol = Get-AzDataProtectionBackupPolicy -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -Name "diskBkpPolicy"

Konfigurowanie kopii zapasowych

Po utworzeniu magazynu i zasad istnieją 3 punkty krytyczne, które użytkownik musi wziąć pod uwagę, aby chronić dysk platformy Azure.

Kluczowe jednostki zaangażowane

Dysk do ochrony

Pobierz identyfikator arm dysku, który ma być chroniony. Będzie to służyć jako identyfikator dysku. Użyjemy przykładu dysku o nazwie "PSTestDisk" w grupie zasobów "diskrg" w ramach innej subskrypcji.

$DiskId = "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourcegroups/diskrg/providers/Microsoft.Compute/disks/PSTestDisk"

Grupa zasobów migawki

Migawki dysku są przechowywane w grupie zasobów w ramach subskrypcji. Zgodnie z wytycznymi zaleca się utworzenie dedykowanej grupy zasobów jako magazynu danych migawek do użycia przez usługę Azure Backup. Posiadanie dedykowanej grupy zasobów umożliwia ograniczenie uprawnień dostępu do grupy zasobów, zapewniając bezpieczeństwo i łatwość zarządzania danymi kopii zapasowych. Zanotuj identyfikator usługi ARM dla grupy zasobów, w której chcesz umieścić migawki dysku

$snapshotrg = "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourceGroups/snapshotrg"

Magazyn kopii zapasowych

Magazyny kopii zapasowych wymagają uprawnień na dysku i grupie zasobów migawki, aby móc wyzwalać migawki i zarządzać ich cyklem życia. Tożsamość zarządzana przypisana przez system magazynu służy do przypisywania takich uprawnień. Użyj polecenia Update-AzRecoveryServicesVault, aby włączyć tożsamość zarządzaną przypisaną przez system dla magazynu usługi Recovery Services.

Przypisywanie uprawnień użytkowników

Użytkownik musi przypisać kilka uprawnień za pośrednictwem kontroli dostępu opartej na rolach do magazynu (reprezentowanego przez tożsamość usługi zarządzanej magazynu) oraz odpowiedniego dysku i/lub grupy zasobów zasobów dysku. Można je wykonać za pomocą portalu lub programu PowerShell.

Magazyn kopii zapasowych używa tożsamości zarządzanej do uzyskiwania dostępu do innych zasobów platformy Azure. Aby skonfigurować tworzenie kopii zapasowych dysków zarządzanych, tożsamość zarządzana magazynu kopii zapasowych wymaga zestawu uprawnień na dyskach źródłowych i grupach zasobów, w których są tworzone migawki i zarządzane.

Tożsamość zarządzana przypisana przez system jest ograniczona do jednej na zasób i jest powiązana z cyklem życia tego zasobu. Uprawnienia do tożsamości zarządzanej można udzielić przy użyciu kontroli dostępu opartej na rolach (RBAC) platformy Azure. Tożsamość zarządzana to jednostka usługi specjalnego typu, która może być używana tylko z zasobami platformy Azure. Dowiedz się więcej o tożsamościach zarządzanych.

Aby skonfigurować kopię zapasową dysków zarządzanych, upewnij się, że spełnione są następujące wymagania wstępne:

  • Przypisz rolę Czytelnik kopii zapasowej dysku do tożsamości zarządzanej magazynu kopii zapasowych na dysku źródłowym, którego kopia zapasowa musi zostać utworzona.

    1. Przejdź do dysku, którego kopię zapasową należy utworzyć.

    2. Przejdź do pozycji Kontrola dostępu (Zarządzanie dostępem i tożsamościami) i wybierz pozycję Dodaj przypisania ról.

    3. W okienku kontekstowym po prawej stronie wybierz pozycję Czytelnik kopii zapasowej dysku na liście rozwijanej Rola .

    4. Wybierz tożsamość zarządzaną magazynu kopii zapasowych i kliknij przycisk Zapisz.

      Napiwek

      Wpisz nazwę magazynu kopii zapasowych, aby wybrać tożsamość zarządzaną magazynu.

    Zrzut ekranu przedstawiający proces przypisywania roli Czytelnik kopii zapasowej dysku do tożsamości zarządzanej magazynu kopii zapasowych na dysku źródłowym, którego kopia zapasowa musi zostać utworzona.

  • Przypisz rolę Współautor migawki dysku do tożsamości zarządzanej magazynu kopii zapasowych w grupie zasobów, w której kopie zapasowe są tworzone i zarządzane przez usługę Azure Backup. Migawki dysku są przechowywane w grupie zasobów w ramach subskrypcji. Aby umożliwić usłudze Azure Backup tworzenie, przechowywanie migawek i zarządzanie nimi, należy podać uprawnienia do magazynu kopii zapasowych.

    1. Przejdź do grupy zasobów. Na przykład grupa zasobów to SnapshotRG, która znajduje się w tej samej subskrypcji co dysk do utworzenia kopii zapasowej.

    2. Przejdź do pozycji Kontrola dostępu (Zarządzanie dostępem i tożsamościami) i wybierz pozycję Dodaj przypisania ról.

    3. W okienku kontekstowym po prawej stronie wybierz pozycję Współautor migawki dysku na liście rozwijanej Rola .

    4. Wybierz tożsamość zarządzaną magazynu kopii zapasowych i kliknij przycisk Zapisz.

      Napiwek

      Wpisz nazwę magazynu kopii zapasowych, aby wybrać tożsamość zarządzaną magazynu.

    Zrzut ekranu przedstawiający proces przypisywania roli Współautor migawki dysku do tożsamości zarządzanej magazynu kopii zapasowych w grupie zasobów.

  • Sprawdź, czy tożsamość zarządzana magazynu kopii zapasowych ma odpowiedni zestaw przypisań ról na dysku źródłowym i grupie zasobów, która służy jako magazyn danych migawek.

    1. Przejdź do pozycji Magazyn kopii zapasowych —> Tożsamość i wybierz pozycję Przypisania ról platformy Azure.

      Zrzut ekranu przedstawiający wybór przypisań ról platformy Azure.

    2. Sprawdź, czy rola, nazwa zasobu i typ zasobu są poprawne.

      Zrzut ekranu przedstawiający weryfikację roli, nazwy zasobu i typu zasobu.

Uwaga

Podczas gdy przypisania ról są prawidłowo odzwierciedlane w portalu, może upłynąć około 15–30 minut, aż uprawnienie zostanie zastosowane do tożsamości zarządzanej magazynu kopii zapasowych.

Przygotowywanie żądania

Po ustawieniu wszystkich odpowiednich uprawnień konfiguracja kopii zapasowej jest wykonywana w 2 krokach. Najpierw przygotowujemy odpowiednie żądanie przy użyciu odpowiedniego magazynu, zasad, dysku i grupy zasobów migawki przy użyciu polecenia Initialize-AzDataProtectionBackupInstance . Następnie przesyłamy żądanie ochrony dysku przy użyciu polecenia New-AzDataProtectionBackupInstance .

$instance = Initialize-AzDataProtectionBackupInstance -DatasourceType AzureDisk -DatasourceLocation $TestBkpvault.Location -PolicyId $diskBkpPol[0].Id -DatasourceId $DiskId 
$instance.Property.PolicyInfo.PolicyParameter.DataStoreParametersList[0].ResourceGroupId = $snapshotrg
New-AzDataProtectionBackupInstance -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -BackupInstance $instance

Name                                                       Type                                                  BackupInstanceName
----                                                       ----                                                  ------------------
diskrg-PSTestDisk-3df6ac08-9496-4839-8fb5-8b78e594f166 Microsoft.DataProtection/backupVaults/backupInstances diskrg-PSTestDisk-3df6ac08-9496-4839-8fb5-8b78e594f166

Uruchamianie tworzenia kopii zapasowej na żądanie

Pobierz odpowiednie wystąpienie kopii zapasowej, na którym użytkownik chce wyzwolić kopię zapasową przy użyciu klasy Get-AzDataProtectionBackupInstance

$instance = Get-AzDataProtectionBackupInstance -SubscriptionId "xxxx-xxx-xxx" -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -Name "BackupInstanceName"

Regułę przechowywania można określić podczas wyzwalania kopii zapasowej. Aby wyświetlić reguły przechowywania w zasadach, przejdź przez obiekt zasad dla reguł przechowywania. W poniższym przykładzie zostanie wyświetlona reguła o nazwie "default" i użyjemy tej reguły dla kopii zapasowej na żądanie

$policyDefn.PolicyRule | fl


BackupParameter           : Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.AzureBackupParams
BackupParameterObjectType : AzureBackupParams
DataStoreObjectType       : DataStoreInfoBase
DataStoreType             : OperationalStore
Name                      : BackupHourly
ObjectType                : AzureBackupRule
Trigger                   : Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.ScheduleBasedTriggerContext
TriggerObjectType         : ScheduleBasedTriggerContext

IsDefault  : True
Lifecycle  : {Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api20210201Preview.SourceLifeCycle}
Name       : Default
ObjectType : AzureRetentionRule

Wyzwalanie kopii zapasowej na żądanie przy użyciu polecenia Backup-AzDataProtectionBackupInstanceAdhoc .

$AllInstances = Get-AzDataProtectionBackupInstance -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name
Backup-AzDataProtectionBackupInstanceAdhoc -BackupInstanceName $AllInstances[0].Name -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -BackupRuleOptionRuleName "Default"

Śledzenie zadań

Śledź wszystkie zadania przy użyciu polecenia Get-AzDataProtectionJob . Możesz wyświetlić listę wszystkich zadań i pobrać szczegóły określonego zadania.

Za pomocą polecenia Az.ResourceGraph można również śledzić wszystkie zadania we wszystkich magazynach kopii zapasowych. Użyj polecenia Search-AzDataProtectionJobInAzGraph, aby uzyskać odpowiednie zadanie, które może znajdować się w dowolnym magazynie kopii zapasowych.

  $job = Search-AzDataProtectionJobInAzGraph -Subscription $sub -ResourceGroupName "testBkpVaultRG" -Vault $TestBkpVault.Name -DatasourceType AzureDisk -Operation OnDemandBackup

Następne kroki