Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln beskriver hur du säkerhetskopierar alla Azure-blobar i ett lagringskonto med hjälp av Azure PowerShell. Nu kan du utföra operativa och valvsäkerhetskopior för att skydda blockblobar i dina lagringskonton med Azure Backup. Du kan också konfigurera säkerhetskopiering med hjälp av REST API
Information om tillgänglighet för Azure-blobregionen, scenarier och begränsningar som stöds finns i supportmatrisen.
Viktigt!
Stöd för Azure-blobar är tillgängligt från version Az 5.9.0.
Innan du börjar
Se förhandskraven och supportmatrisen innan du kommer igång.
Skapa ett säkerhetskopieringsvalv
Ett säkerhetskopieringsvalv är en lagringsentitet i Azure som innehåller säkerhetskopieringsdata för olika nyare arbetsbelastningar som Stöds av Azure Backup, till exempel Azure Database for PostgreSQL-servrar och Azure-blobar. Säkerhetskopieringsvalv gör det enkelt att organisera dina säkerhetskopierade data, samtidigt som hanteringskostnaderna minimeras. Säkerhetskopieringsvalv baseras på Azure Resource Manager-modellen i Azure, som ger förbättrade funktioner för att skydda säkerhetskopierade data.
Innan du skapar ett säkerhetskopieringsvalv väljer du lagringsredundans för data i valvet. Fortsätt sedan med att skapa säkerhetskopieringsvalvet med lagringsredundansen och platsen. I den här artikeln kommer vi att skapa ett säkerhetskopieringsvalv TestBkpVault i regionen westus, under resursgruppen testBkpVaultRG. Använd kommandot New-AzDataProtectionBackupVault för att skapa ett säkerhetskopieringsvalv. Läs mer om att skapa ett säkerhetskopieringsvalv.
$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
När valvet har skapats ska vi skapa en säkerhetskopieringsprincip för att skydda Azure-blobar.
Viktigt!
Även om du ser redundans i säkerhetskopieringslagringen i valvet, gäller denna redundans inte för den operativa säkerhetskopian av blobar eftersom denna säkerhetskopia är lokal och inga data lagras i säkerhetskopieringsvalvet. Här är säkerhetskopieringsvalvet den hanteringsentitet som hjälper dig att hantera skyddet av blockblobbar i dina lagringskonton.
Skapa en säkerhetskopieringsprincip
Välj en säkerhetskopieringsnivå:
Viktigt!
Läs det här avsnittet innan du fortsätter att skapa principen och konfigurera säkerhetskopior för Azure-blobar.
Om du vill förstå de inre komponenterna i en säkerhetskopieringsprincip för Azure Blob Backup hämtar du principmallen med kommandot Get-AzDataProtectionPolicyTemplate . Det här kommandot returnerar en standardprincipmall för en viss datakällatyp. Använd den här principmallen för att skapa en ny princip.
$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
Principmallen består endast av en livscykel (som bestämmer när säkerhetskopieringen ska tas bort/kopieras/flyttas). Eftersom den operativa säkerhetskopieringen för blobbar är kontinuerlig behöver du inget schema för att utföra säkerhetskopior.
$policyDefn.PolicyRule.Lifecycle | fl
DeleteAfterDuration : P30D
DeleteAfterObjectType : AbsoluteDeleteOption
SourceDataStoreObjectType : DataStoreInfoBase
SourceDataStoreType : OperationalStore
TargetDataStoreCopySetting :
Anmärkning
Återställning över lång tid kan leda till att återställningsåtgärder tar längre tid att slutföra. Dessutom baseras den tid det tar att återställa en uppsättning data på antalet skriv- och borttagningsåtgärder som gjorts under återställningsperioden. Till exempel kräver ett konto med en miljon objekt med 3 000 objekt tillagda per dag och 1 000 objekt som tagits bort per dag ungefär två timmar för att återställa till en punkt 30 dagar tidigare.
Vi rekommenderar inte en kvarhållningsperiod eller återställning längre tillbaka än 90 dagar för ett konto med den här ändringstakten.
När principobjektet har alla önskade värden fortsätter du med att skapa en ny princip från principobjektet med kommandot 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"
Konfigurera säkerhetskopiering
När valvet och principen har skapats finns det två viktiga punkter som du måste överväga för att skydda alla Azure Blobs i ett lagringskonto.
- Nyckelentiteter
- Behörigheter
Nyckelentiteter
Lagringskonto som innehåller de blobar som ska skyddas: Hämta Azure Resource Manager-ID:t för lagringskontot som innehåller de blobar som ska skyddas. Detta fungerar som identifierare för lagringskontot. Vi använder ett exempel på ett lagringskonto med namnet PSTestSA under resursgruppens blobrg i en annan prenumeration.
$SAId = "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourcegroups/blobrg/providers/Microsoft.Storage/storageAccounts/PSTestSA"Säkerhetskopieringsvalv: Säkerhetskopieringsvalvet kräver behörigheter för lagringskontot för att aktivera säkerhetskopior på blobar som finns i lagringskontot. Den systemtilldelade hanterade identiteten för valvet används för att tilldela sådana behörigheter.
Tilldela behörigheter
Du måste tilldela några behörigheter via Azure RBAC till det skapade valvet (representerat av valvet MSI) och det relevanta lagringskontot. Dessa kan utföras via portalen eller PowerShell. Läs mer om alla relaterade behörigheter.
Förbereda begäran om att konfigurera blobsäkerhetskopiering
Välj en säkerhetskopieringsnivå:
När alla relevanta behörigheter har angetts utförs konfigurationen av säkerhetskopieringen i två steg. Först förbereder vi den relevanta begäran genom att använda det relevanta valvet, policyn och lagringskontot med kommandot Initialize-AzDataProtectionBackupInstance. Sedan skickar vi begäran om att skydda blobarna i lagringskontot med kommandot 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
Viktigt!
När ett lagringskonto har konfigurerats för säkerhetskopiering av blobar påverkas några funktioner, till exempel ändringsflöde och borttagningslås. Läs mer.
Uppdatera en säkerhetskopieringsinstans
När du har konfigurerat säkerhetskopieringen kan du ändra den associerade principen med en säkerhetskopieringsinstans. För säkerhetskopior i valv kan du också ändra de containrar som valts för säkerhetskopiering.
Om du vill uppdatera säkerhetskopieringsinstansen kör du följande cmdletar:
Kontrollera om säkerhetskopieringsinstansen är redo att konfigurera säkerhetskopiering med hjälp av kommandot Test-AzDataProtectionBackupInstanceReadiness . Kommandot misslyckas om säkerhetskopieringsinstansen inte är klar.
Du kan också använda det här kommandot för att kontrollera om säkerhetskopieringsvalvet har alla nödvändiga behörigheter för att konfigurera säkerhetskopiering.
Ändra den princip som används för att säkerhetskopiera Azure Blobs med hjälp av Update-AzDataProtectionBackupInstance. Ange relevant säkerhetskopieringsobjekt och den nya säkerhetskopieringsprincipen.
Uppdatera policyn eller de nya containrarna för befintliga säkerhetskopieringsobjekt.
Skapa lagringskontokontexten med hjälp av cmdleten
New-AzStorageContext. Ange parametern-UseConnectedAccountså att dataåtgärder utförs med dina Microsoft Entra-autentiseringsuppgifter. Läs mer om kommandona för lagringskontot.Create a context object using Azure AD credentials $ctx = New-AzStorageContext -StorageAccountName xxx -UseConnectedAccountHämta lagringscontainrarna med hjälp av cmdleten
Get-AzStorageContainer. Ange parameter-Nameför att hämta en enda container. Om du vill returnera en lista över containrar som börjar med en viss teckensträng anger du ett värde för parametern-Prefix.
I följande exempel hämtas både en enskild container och en lista över containerresurser:
# 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" }Resultatet ger URI för blobslutpunkten och visar en lista över containrar som hämtats med namn och prefix:
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 01D7E8A5EF01C787Hämta den säkerhetskopieringsinstans som måste uppdateras.
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-8c0d2223d037Hämta säkerhetskopieringsprincipen med namnet på den valvprincip som du vill uppdatera i Säkerhetskopieringsinstansen. Du kan också hämta den nya policyn som ska uppdateras i Backup-instansen.
$updatePolicy = Get-AzDataProtectionBackupPolicy -SubscriptionId "Demosub" -VaultName BCDR-BV-EastUS -ResourceGroupName Demo-BCDR-RG -name continer-1Uppdatera säkerhetskopieringsinstansen med en ny lista över containrar (befintliga säkerhetskopierade containrar och nya containrar).
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
Nästa steg
Återställa Azure-blobar med Hjälp av Azure PowerShell.
Relaterat innehåll
Återställa Azure Blobs med Azure Backup med hjälp av Azure-portalen, Azure CLI, REST API.