Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule opisano sposób tworzenia kopii zapasowych wszystkich obiektów blob platformy Azure w koncie magazynu przy użyciu Azure PowerShell. Teraz można wykonywać operacyjne i archiwalne kopie zapasowe w celu ochrony blokowych obiektów blob na kontach magazynu przy użyciu usługi Azure Backup. Możesz również skonfigurować tworzenie kopii zapasowej przy użyciu interfejsu API REST
Aby uzyskać informacje na temat dostępności regionu obiektów blob platformy Azure, obsługiwanych scenariuszy i ograniczeń, zobacz macierz wsparcia.
Ważne
Obsługa obiektów blob platformy Azure jest dostępna w wersji Az 5.9.0.
Przed rozpoczęciem
Przed rozpoczęciem zapoznaj się z macierzą wymagań wstępnych i pomocy technicznej.
Tworzenie magazynu kopii zapasowych
Magazyn kopii zapasowych to przestrzeń magazynująca na platformie Azure, która przechowuje dane kopii zapasowych dla różnych nowszych obciążeń obsługiwanych przez usługę Azure Backup, takich jak serwery Azure Database for PostgreSQL i obiekty blob 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 skarbca kopii zapasowych wybierz nadmiarowość przechowywania danych w skarbcu. Następnie przejdź do utworzenia skarbca kopii zapasowych z nadmiarowością przechowywania i określoną 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 obiektów blob platformy Azure.
Ważne
Chociaż zobaczysz nadmiarowość magazynowania kopii zapasowych skarbca, nadmiarowość nie dotyczy operacyjnej kopii zapasowej obiektów blob, ponieważ kopia zapasowa jest lokalna i żadne dane nie są przechowywane w skarbcu usługi Backup. Tutaj skarbiec kopii zapasowych jest jednostką zarządzania, która ułatwia zarządzanie ochroną blobów blokowych na kontach magazynowania.
Tworzenie zasad kopii zapasowych
Wybierz warstwę kopii zapasowej:
Ważne
Przeczytaj tę sekcję przed kontynuowaniem tworzenia zasad i konfigurowania kopii zapasowych dla obiektów blob platformy Azure.
Aby zrozumieć wewnętrzne składniki zasad kopii zapasowej obiektów blob 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 AzureBlob
$policyDefn | fl
DatasourceType : {Microsoft.Storage/storageAccounts/blobServices}
ObjectType : BackupPolicy
PolicyRule : {Default}
$policyDefn.PolicyRule | fl
IsDefault : True
Lifecycle : {Microsoft.Azure.PowerShell.Cmdlets.DataProtection.Models.Api202101.SourceLifeCycle}
Name : Default
ObjectType : AzureRetentionRule
Szablon zasad składa się tylko z cyklu życia (który decyduje, kiedy usunąć/skopiować/przenieść kopię zapasową). Ponieważ operacyjna kopia zapasowa obiektów blob ma charakter ciągły, nie trzeba ustalać harmonogramu do wykonywania kopii zapasowych.
$policyDefn.PolicyRule.Lifecycle | fl
DeleteAfterDuration : P30D
DeleteAfterObjectType : AbsoluteDeleteOption
SourceDataStoreObjectType : DataStoreInfoBase
SourceDataStoreType : OperationalStore
TargetDataStoreCopySetting :
Uwaga
Przywracanie przez długi czas może powodować, że operacje przywracania trwają dłużej. Ponadto czas potrzebny na przywrócenie zestawu danych zależy od liczby operacji zapisu i usuwania wykonanych w okresie przywracania. Na przykład konto z milionem obiektów, do którego codziennie dodaje się 3000 obiektów, a usuwa 1000 obiektów, będzie wymagało około dwóch godzin na przywrócenie do stanu sprzed 30 dni.
Nie zalecamy okresu przechowywania i przywracania ponad 90 dni w przeszłości dla konta z tą częstotliwością zmian.
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 blobBkpPolicy -Policy $policyDefn
Name Type
---- ----
blobBkpPolicy Microsoft.DataProtection/backupVaults/backupPolicies
$blobBkpPol = Get-AzDataProtectionBackupPolicy -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -Name "blobBkpPolicy"
Konfigurowanie kopii zapasowych
Po utworzeniu skarbca i zasad istnieją dwa krytyczne punkty, które należy wziąć pod uwagę, aby chronić wszystkie obiekty blob platformy Azure w koncie przechowywania.
- Kluczowe encje
- Uprawnienia
Kluczowe encje
Konto magazynu zawierające obiekty blob do ochrony: pobierz identyfikator usługi Azure Resource Manager konta magazynu zawierającego obiekty blob do ochrony. Będzie to służyć jako identyfikator konta magazynu. Użyjemy przykładu konta przechowywania o nazwie PSTestSA w ramach grupy zasobów blobrg w innej subskrypcji.
$SAId = "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourcegroups/blobrg/providers/Microsoft.Storage/storageAccounts/PSTestSA"Magazyn kopii zapasowych: Magazyn kopii zapasowych wymaga uprawnień do konta magazynu, aby umożliwić tworzenie kopii zapasowych obiektów blob znajdujących się w tym koncie. Tożsamość zarządzana przypisana przez system magazynu służy do przypisywania takich uprawnień.
Przypisywanie uprawnień użytkowników
Musisz przypisać kilka uprawnień za pośrednictwem kontroli dostępu opartej na rolach (RBAC) platformy Azure do utworzonego skarbca (reprezentowanego przez tożsamość usługi zarządzanej skarbca) i odpowiedniego konta magazynu. Można je wykonać za pomocą portalu lub programu PowerShell. Dowiedz się więcej o wszystkich powiązanych uprawnieniach.
Przygotowywanie żądania do skonfigurowania kopii zapasowej obiektów blob
Wybierz warstwę kopii zapasowej:
Po ustawieniu wszystkich odpowiednich uprawnień konfiguracja kopii zapasowej jest wykonywana w 2 krokach. Najpierw przygotowujemy odpowiednie żądanie przy użyciu odpowiedniego magazynu, zasad, konta magazynu przy użyciu polecenia Initialize-AzDataProtectionBackupInstance . Następnie przesyłamy żądanie ochrony obiektów blob na koncie magazynu przy użyciu polecenia New-AzDataProtectionBackupInstance .
$instance = Initialize-AzDataProtectionBackupInstance -DatasourceType AzureBlob -DatasourceLocation $TestBkpvault.Location -PolicyId $blobBkpPol[0].Id -DatasourceId $SAId
New-AzDataProtectionBackupInstance -ResourceGroupName "testBkpVaultRG" -VaultName $TestBkpVault.Name -BackupInstance $instance
Name Type BackupInstanceName
---- ---- ------------------
blobrg-PSTestSA-3df6ac08-9496-4839-8fb5-8b78e594f166 Microsoft.DataProtection/backupVaults/backupInstances blobrg-PSTestSA-3df6ac08-9496-4839-8fb5-8b78e594f166
Ważne
Po skonfigurowaniu konta magazynu na potrzeby tworzenia kopii zapasowych obiektów blob ma to wpływ na kilka funkcji, takich jak zestawienie zmian i blokada usuwania. Dowiedz się więcej.
Aktualizowanie wystąpienia kopii zapasowej
Po skonfigurowaniu kopii zapasowej można zmienić skojarzoną politykę dla instancji kopii zapasowej. W przypadku magazynowanych kopii zapasowych można również zmienić kontenery wybrane do kopii zapasowej.
Aby zaktualizować wystąpienie kopii zapasowej, uruchom następujące polecenia cmdlet:
Sprawdź, czy wystąpienie kopii zapasowej jest gotowe do skonfigurowania kopii zapasowej przy użyciu polecenia Test-AzDataProtectionBackupInstanceReadiness . Polecenie kończy się niepowodzeniem, jeśli instancja zapasowa nie jest gotowa.
Możesz również użyć tego polecenia, aby sprawdzić, czy magazyn kopii zapasowych ma wszystkie niezbędne uprawnienia do konfigurowania kopii zapasowej.
Zmień zasady używane do tworzenia kopii zapasowych obiektów blob platformy Azure przy użyciu klasy Update-AzDataProtectionBackupInstance. Określ odpowiedni element kopii zapasowej i nowe zasady tworzenia kopii zapasowej.
Zaktualizuj zasady lub zastosuj nowe kontenery do istniejących elementów kopii zapasowej.
Utwórz kontekst konta magazynu przy użyciu polecenia cmdlet
New-AzStorageContext.-UseConnectedAccountPodaj parametr , aby operacje na danych były wykonywane przy użyciu poświadczeń firmy Microsoft Entra. Dowiedz się więcej o poleceniach konta magazynowego.Create a context object using Azure AD credentials $ctx = New-AzStorageContext -StorageAccountName xxx -UseConnectedAccountPobierz kontenery magazynu przy użyciu cmdlet
Get-AzStorageContainer. Aby pobrać pojedynczy kontener, podaj-Nameparametr . Aby zwrócić listę kontenerów rozpoczynających się od danego ciągu znaku, określ wartość parametru-Prefix.
Poniższy przykład pobiera zarówno pojedynczy kontener, jak i listę zasobów kontenera:
# Create variables $containerName = "individual-container" $prefixName = "loop-" # Approach 1: Retrieve an individual container Get-AzStorageContainer -Name $containerName -Context $ctx Write-Host # Approach 2: Retrieve a list of containers $targetContainers = Get-AzStorageContainer -Context $ctx | Where-Object { $_.Name -match "cont" }Wynik zawiera identyfikator URI punktu końcowego obiektu blob i wyświetla listę kontenerów pobranych według nazwy i prefiksu:
Storage Account Name: demostorageaccount Name PublicAccess LastModified IsDeleted VersionId ---- ------------ ------------ --------- --------- individual-container 11/2/2021 5:52:08 PM +00:00 loop-container1 11/2/2021 12:22:00 AM +00:00 loop-container2 11/2/2021 12:22:00 AM +00:00 loop-container1 11/2/2021 12:22:00 AM +00:00 loop-container2 11/2/2021 12:22:00 AM +00:00 loop-container3 11/2/2021 12:22:00 AM +00:00 True 01D7E7129FDBD7D4 loop-container4 11/2/2021 12:22:00 AM +00:00 True 01D7E8A5EF01C787Pobierz wystąpienie kopii zapasowej, które należy zaktualizować.
C:\Users\testuser> $instance = Search-AzDataProtectionBackupInstanceInAzGraph -Subscription "Demosub" -ResourceGroup Demo-BCDR-RG -Vault BCDR-BV-EastUS -DatasourceType AzureBlob PS C:\Users\testuser> $instance Output Name BackupInstanceName ---- ------------------ blobsa-blobsa-c7325e08-980d-43b2-863f-68feee4fd03c blobsa-blobsa-c7325e08-980d-43b2-863f-68feee4fd03c blobsavaulted-blobsavaulted-40c36519-f422-45aa-bbeb-3f0eedb440c7 blobsavaulted-blobsavaulted-40c36519-f422-45aa-bbeb-3f0eedb440c7 testdpp-testdpp-ff4254dd-7a70-437b-9a10-8c0d2223d037 testdpp-testdpp-ff4254dd-7a70-437b-9a10-8c0d2223d037Pobierz zasady kopii zapasowej o nazwie vaulted-policy, które chcesz zaktualizować w wystąpieniu kopii zapasowej. Możesz również pobrać nową politykę, którą należy zaktualizować w instancji kopii zapasowej.
$updatePolicy = Get-AzDataProtectionBackupPolicy -SubscriptionId "Demosub" -VaultName BCDR-BV-EastUS -ResourceGroupName Demo-BCDR-RG -name continer-1Zaktualizuj wystąpienie kopii zapasowej przy użyciu nowej listy kontenerów (istniejące kontenery kopii zapasowej i nowe kontenery).
PS C:\Users\testuser> $updateBI = Update-AzDataProtectionBackupInstance -ResourceGroupName Daya-BCDR-RG -VaultName DPBCDR-BV-EastUS -BackupInstanceName $instance[0].Name -SubscriptionId "ef4ab5a7-c2c0-4304-af80-af49f48af3d1" -PolicyId $updatePolicy.id -VaultedBackupContainer $targetContainers.name PS C:\Users\testuser> $updateBI.Property.PolicyInfo.PolicyId /subscriptions/ef4ab5a7-c2c0-4304-af80-af49f48af3d1/resourceGroups/Daya-BCDR-RG/providers/Microsoft.DataProtection/backupVaults/DPBCDR-BV-EastUS/backupPolicies/continerdeltest-1 PS C:\Users\testuser> $updateBI.Property.PolicyInfo.PolicyParameter.BackupDatasourceParametersList[0].ContainersList cont-01 cont-02 cont-03 cont-04 cont-05 cont-06 cont-07 cont-08 cont-09 cont-10 cont-11
Następne kroki
Przywracanie obiektów blob platformy Azure przy użyciu programu Azure PowerShell.
Treści powiązane
Przywracanie obiektów blob platformy Azure za pomocą usługi Azure Backup przy użyciu witryny Azure Portal, interfejsu wiersza polecenia platformy Azure, interfejsu API REST.