Share via


Eseguire il backup di BLOB di Azure in un account di archiviazione con l'interfaccia della riga di comando di Azure

Questo articolo descrive come eseguire il backup di BLOB di Azure usando l'interfaccia della riga di comando di Azure.

Importante

Il supporto per il backup e il ripristino dei BLOB di Azure tramite l'interfaccia della riga di comando è disponibile in anteprima e come estensione in Az versione 2.15.0 e successive. L'estensione viene installata automaticamente quando si eseguono i comandi az dataprotection. Altre informazioni sulle estensioni.

In questo articolo si apprenderà come:

  • Prima di iniziare

  • Creare un insieme di credenziali per il backup

  • Creare un criterio di backup

  • Configurare il backup di un BLOB di Azure

  • Eseguire un processo di backup su richiesta

Per altre informazioni sulle aree di disponibilità, sugli scenari supportati e sulle limitazioni per i BLOB di Azure, vedere la matrice di supporto.

Prima di iniziare

Prima di iniziare, vedere i prerequisiti e la matrice di supporto.

Creare un insieme di credenziali per il backup

L'insieme di credenziali di Backup è un'entità di archiviazione in Azure che archivia i dati di backup per vari carichi di lavoro più recenti supportati da Backup di Azure, ad esempio i server di Database di Azure per PostgreSQL e i BLOB in un account di archiviazione e in Dischi di Azure. Gli insiemi di credenziali di backup semplificano l'organizzazione dei dati di backup, riducendo al minimo il carico di gestione. Gli insiemi di credenziali di Backup si basano sul modello di Azure Resource Manager di Azure, che offre funzionalità avanzate per proteggere i dati di backup.

Prima di creare un insieme di credenziali di Backup, scegliere la ridondanza di archiviazione dei dati all'interno dell'insieme di credenziali. Procedere quindi con la creazione dell'insieme di credenziali di Backup con la ridondanza di archiviazione e il percorso. In questo articolo verrà creato un insieme di credenziali di Backup TestBkpVault, nell'area westus, nel gruppo di risorse testBkpVaultRG. Usare il comando az dataprotection vault create per creare un insieme di credenziali di Backup. Altre informazioni sulla creazione di un insieme di credenziali di Backup.

az dataprotection backup-vault create -g testBkpVaultRG --vault-name TestBkpVault -l westus --type SystemAssigned --storage-settings datastore-type="VaultStore" type="LocallyRedundant"

{
  "eTag": null,
  "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/testBkpVaultRG/providers/Microsoft.DataProtection/BackupVaults/TestBkpVault",
  "identity": {
    "principalId": "2ca1d5f7-38b3-4b61-aa45-8147d7e0edbc",
    "tenantId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "type": "SystemAssigned"
  },
  "location": "westus",
  "name": "TestBkpVault",
  "properties": {
    "provisioningState": "Succeeded",
    "storageSettings": [
      {
        "datastoreType": "VaultStore",
        "type": "LocallyRedundant"
      }
    ]
  },
  "resourceGroup": "testBkpVaultRG",
  "systemData": null,
  "tags": null,
  "type": "Microsoft.DataProtection/backupVaults"
}

Importante

Anche se la ridondanza dell'archivio di backup dell'insieme di credenziali risulterà visibile, la ridondanza non si applica al backup operativo dei BLOB perché il backup è di natura locale e nessun dato viene archiviato nell'insieme di credenziali di Backup. In questo caso, l'insieme di credenziali di Backup è l'entità di gestione che consente di gestire la protezione dei BLOB in blocchi negli account di archiviazione.

Dopo aver creato un insieme di credenziali, creare un criterio di backup per proteggere i BLOB di Azure in un account di archiviazione.

Creare un criterio di backup

Importante

Leggere questa sezione prima di creare i criteri e configurare i backup per i BLOB di Azure.

Per informazioni sui componenti interni di un criterio di backup per il backup del database dei BLOB di Azure, recuperare il modello di criteri usando il comando az dataprotection backup-policy get-default-policy-template. Questo comando restituisce un modello di criteri predefinito per un determinato tipo di origine dati. Usare questo modello di criterio per creare un nuovo criterio.

az dataprotection backup-policy get-default-policy-template --datasource-type AzureBlob

{
  "datasourceTypes": [
    "Microsoft.Storage/storageAccounts/blobServices"
  ],
  "name": "BlobPolicy1",
  "objectType": "BackupPolicy",
  "policyRules": [
    {
      "isDefault": true,
      "lifecycles": [
        {
          "deleteAfter": {
            "duration": "P30D",
            "objectType": "AbsoluteDeleteOption"
          },
          "sourceDataStore": {
            "dataStoreType": "OperationalStore",
            "objectType": "DataStoreInfoBase"
          }
        }
      ],
      "name": "Default",
      "objectType": "AzureRetentionRule"
    }
  ]
}

Il modello di criteri è costituito solo da un ciclo di vita (che determina quando eliminare/copiare/spostare il backup). Poiché il backup operativo per i BLOB è di natura continua, non è necessaria una pianificazione per eseguire i backup.

"policyRules": [
    {
      "isDefault": true,
      "lifecycles": [
        {
          "deleteAfter": {
            "duration": "P30D",
            "objectType": "AbsoluteDeleteOption"
          },
          "sourceDataStore": {
            "dataStoreType": "OperationalStore",
            "objectType": "DataStoreInfoBase"
          }
        }
      ],
      "name": "Default",
      "objectType": "AzureRetentionRule"
    }
  ]

Nota

Periodi di ripristino lunghi possono comportare l'incremento del tempo necessario al completamento delle operazioni di ripristino. Inoltre, il tempo impiegato per ripristinare un set di dati si basa sul numero di operazioni di scrittura ed eliminazione eseguite durante il periodo di ripristino. Ad esempio, un account con un milione di oggetti e con 3.000 oggetti aggiunti e 1.000 oggetti eliminati al giorno richiederà circa due ore per il ripristino a un punto corrispondente a 30 giorni nel passato.

Non è consigliabile definire un periodo di conservazione e un ripristino superiore a 90 giorni nel passato per un account con questa frequenza di modifica.

Quando il file JSON dei criteri include tutti i valori necessari, procedere con la creazione di un nuovo criterio dall'oggetto criteri usando il comando az dataprotection backup-policy create.

az dataprotection backup-policy get-default-policy-template --datasource-type AzureBlob > policy.json
az dataprotection backup-policy create -g testBkpVaultRG --vault-name TestBkpVault -n BlobBackup-Policy --policy policy.json

{
    "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/TestBkpVault/backupPolicies/BlobBackup-Policy",
    "name": "BlobBackup-Policy",
    "properties": {
      "datasourceTypes": [
        "Microsoft.Storage/storageAccounts/blobServices"
      ],
      "objectType": "BackupPolicy",
      "policyRules": [
        {
          "isDefault": true,
          "lifecycles": [
            {
              "deleteAfter": {
                "duration": "P2D",
                "objectType": "AbsoluteDeleteOption"
              },
              "sourceDataStore": {
                "dataStoreType": "OperationalStore",
                "objectType": "DataStoreInfoBase"
              },
              "targetDataStoreCopySettings": []
            }
          ],
          "name": "Default",
          "objectType": "AzureRetentionRule"
        }
      ]
    },
    "resourceGroup": "testBkpVaultRG",
    "systemData": null,
    "type": "Microsoft.DataProtection/backupVaults/backupPolicies"
  }

Configurare il backup

Dopo aver creato l'insieme di credenziali e i criteri, per proteggere i BLOB di Azure è necessario considerare due punti critici.

Entità chiave coinvolte

Account di archiviazione che contiene i BLOB da proteggere

Recuperare l'ID di Azure Resource Manager dell'account di archiviazione che contiene i BLOB da proteggere. Verrà usato come identificatore dell'account di archiviazione. Verrà usato un esempio di account di archiviazione denominato CLITestSA, nel gruppo di risorse blobrg, in una sottoscrizione diversa presente nell'area Asia sud-orientale.

"/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourcegroups/blobrg/providers/Microsoft.Storage/storageAccounts/CLITestSA"

Insieme di credenziali per il backup

L'insieme di credenziali di Backup richiede autorizzazioni per l'account di archiviazione per abilitare i backup nei BLOB presenti per tale account. L'identità gestita assegnata dal sistema dell'insieme di credenziali viene usata per assegnare tali autorizzazioni.

Assegnare autorizzazioni

È necessario assegnare alcune autorizzazioni tramite il controllo degli accessi in base al ruolo all'insieme di credenziali (rappresentato dall'identità del servizio gestito dell'insieme di credenziali) e all'account di archiviazione pertinente. Queste operazioni possono essere eseguite tramite il portale o PowerShell. Altre informazioni su tutte le autorizzazioni correlate.

Preparare la richiesta

Dopo aver impostato tutte le autorizzazioni pertinenti, la configurazione del backup viene eseguita in 2 passaggi. Preparare innanzitutto la richiesta usando l'insieme di credenziali, i criteri e l'account di archiviazione pertinenti usando il comando az dataprotection backup-instance initialize. Inviare quindi la richiesta per proteggere il disco usando il comando az dataprotection backup-instance create.

az dataprotection backup-instance initialize --datasource-type AzureBlob  -l southeastasia --policy-id "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/TestBkpVault/backupPolicies/BlobBackup-Policy" --datasource-id "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourcegroups/blobrg/providers/Microsoft.Storage/storageAccounts/CLITestSA" > backup_instance.json
az dataprotection backup-instance create -g testBkpVaultRG --vault-name TestBkpVault --backup-instance backup_instance.json

{
    "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx/resourceGroups/testBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/TestBkpVault/backupInstances/CLITestSA-CLITestSA-c3a2a98c-def8-44db-bd1d-ff6bc86ed036",
    "name": "CLITestSA-CLITestSA-c3a2a98c-def8-44db-bd1d-ff6bc86ed036",
    "properties": {
      "currentProtectionState": "ProtectionConfigured",
      "dataSourceInfo": {
        "datasourceType": "Microsoft.Storage/storageAccounts/blobServices",
        "objectType": "Datasource",
        "resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourcegroups/blobrg/providers/Microsoft.Storage/storageAccounts/CLITestSA",
        "resourceLocation": "southeastasia",
        "resourceName": "CLITestSA",
        "resourceType": "Microsoft.Storage/storageAccounts",
        "resourceUri": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourcegroups/blobrg/providers/Microsoft.Storage/storageAccounts/CLITestSA"
      },
      "dataSourceSetInfo": null,
      "friendlyName": "CLITestSA",
      "objectType": "BackupInstance",
      "policyInfo": {
        "policyId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/TestBkpVault/backupPolicies/BlobBackup-Policy",
        "policyParameters": {
          "dataStoreParametersList": [
            {
              "dataStoreType": "OperationalStore",
              "objectType": "AzureOperationalStoreParameters",
              "resourceGroupId": ""
            }
          ]
        },
        "policyVersion": ""
      },
      "protectionErrorDetails": null,
      "protectionStatus": {
        "errorDetails": null,
        "status": "ProtectionConfigured"
      },
      "provisioningState": "Succeeded"
    },
    "resourceGroup": "testBkpVaultRG",
    "systemData": null,
    "type": "Microsoft.DataProtection/backupVaults/backupInstances"
  }

Importante

Dopo aver configurato un account di archiviazione per il backup dei BLOB, alcune funzionalità risultano interessate, ad esempio il feed di modifiche e il blocco di eliminazione. Altre informazioni.

Passaggi successivi

Ripristinare i BLOB di Azure con l'interfaccia della riga di comando di Azure