Compartir a través de


Creación de directivas de copia de seguridad de protección de datos de Azure para blobs mediante la API de REST

En este artículo se describe cómo crear directivas de copia de seguridad de Azure Data Protection para blobs de Azure mediante la API de REST.

Normalmente, una directiva de Azure Backup rige la retención y la programación de las copias de seguridad. Dado que la copia de seguridad operativa de los blobs es continua por naturaleza, no necesita una programación para realizar copias de seguridad. La directiva es básicamente necesaria para especificar el período de retención. Puede reutilizar la directiva de copia de seguridad para configurar la copia de seguridad de varias cuentas de almacenamiento en un almacén.

Importante

Antes de continuar con la creación de la directiva y la configuración de copias de seguridad para blobs de Azure, consulte esta sección.

En este artículo se describe cómo crear una directiva para blobs en una cuenta de almacenamiento. Obtenga información sobre el proceso para crear una directiva de copia de seguridad para un almacén de Azure Recovery Services mediante la API de REST.

Nota

La restauración de duraciones largas puede dar lugar a que las operaciones de restauración tarden más en completarse. Por otra parte, el tiempo que se tarda en restaurar un conjunto de datos se basa en el número de operaciones de escritura y eliminación realizadas durante el período de restauración. Por ejemplo, una cuenta con un millón de objetos con 3000 objetos agregados al día y 1000 objetos eliminados al día requerirá aproximadamente dos horas para restaurar a un período de 30 días determinado del pasado. No se recomendarían un período de retención ni una restauración superiores a 90 días en el pasado para una cuenta con esta tasa de cambio.

En este artículo, aprenderá sobre:

  • Crear una directiva
  • Creación del cuerpo de la solicitud
  • Respuestas

Crear una directiva

Para crear una directiva de Azure Backup, use la siguiente operación PUT:

PUT https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupPolicies/{policyName}?api-version=2021-01-01

Los valores de {policyName} y {vaultName} se proporcionan en el URI. Puede encontrar información adicional en el cuerpo de la solicitud.

Importante

Actualmente, no se admite la actualización o modificación de una directiva existente. Por este motivo, puede crear una directiva nueva con los detalles necesarios y asignarla a la instancia de copia de seguridad correspondiente.

Creación del cuerpo de la solicitud

Por ejemplo, para crear una directiva para la copia de seguridad de blobs, use los componentes siguientes del cuerpo de la solicitud:

Nombre Obligatorio Tipo Descripción
properties True BaseBackupPolicy:BackupPolicy Propiedades BaseBackupPolicyResource

Para obtener una lista completa de las definiciones del cuerpo de la solicitud, consulte el documento de la API REST de directivas de copia de seguridad.

Cuerpo de solicitud de ejemplo

El cuerpo de la solicitud siguiente define una directiva de copia de seguridad para las copias de seguridad de blobs.

La directiva indica:

  • El período de retención es de 30 días.
  • El almacén de datos es "almacén operativo".
{
  "properties": {
    "datasourceTypes": [
      "Microsoft.Storage/storageAccounts/blobServices"
    ],
    "objectType": "BackupPolicy",
    "policyRules": [
      {
        "name": "Default",
        "objectType": "AzureRetentionRule",
        "isDefault": true,
        "lifecycles": [
          {
            "deleteAfter": {
              "duration": "P30D",
              "objectType": "AbsoluteDeleteOption"
            },
            "sourceDataStore": {
              "dataStoreType": "OperationalStore",
              "objectType": "DataStoreInfoBase"
            }
          }
        ]
      }
    ]
  }
}

Para configurar una directiva de copia de seguridad con la copia de seguridad de almacén, use el siguiente script de JSON:

{
  "id": "/subscriptions/495944b2-66b7-4173-8824-77043bb269be/resourceGroups/Blob-Backup/providers/Microsoft.DataProtection/BackupVaults/yavovaultecy01/backupPolicies/TestPolicy",
  "name": "TestPolicy",
  "type": "Microsoft.DataProtection/BackupVaults/backupPolicies",
  "properties": {
    "policyRules": [
      {
        "name": "Default",
        "objectType": "AzureRetentionRule",
        "isDefault": true,
        "lifecycles": [
          {
            "deleteAfter": {
              "duration": "P30D",
              "objectType": "AbsoluteDeleteOption"
            },
            "sourceDataStore": {
              "dataStoreType": "OperationalStore",
              "objectType": "DataStoreInfoBase"
            },
            "targetDataStoreCopySettings": []
          }
        ]
      },
      {
        "name": "Default",
        "objectType": "AzureRetentionRule",
        "isDefault": true,
        "lifecycles": [
          {
            "deleteAfter": {
              "duration": "P7D",
              "objectType": "AbsoluteDeleteOption"
            },
            "sourceDataStore": {
              "dataStoreType": "VaultStore",
              "objectType": "DataStoreInfoBase"
            },
            "targetDataStoreCopySettings": []
          }
        ]
      },
      {
        "name": "BackupDaily",
        "objectType": "AzureBackupRule",
        "backupParameters": {
          "backupType": "Discrete",
          "objectType": "AzureBackupParams"
        },
        "dataStore": {
          "dataStoreType": "VaultStore",
          "objectType": "DataStoreInfoBase"
        },
        "trigger": {
          "schedule": {
            "timeZone": "UTC",
            "repeatingTimeIntervals": [
              "R/2024-05-08T14:00:00+00:00/P1D"
            ]
          },
          "taggingCriteria": [
            {
              "isDefault": true,
              "taggingPriority": 99,
              "tagInfo": {
                "id": "Default_",
                "tagName": "Default"
              }
            }
          ],
          "objectType": "ScheduleBasedTriggerContext"
        }
      }
    ],
    "datasourceTypes": [
      "Microsoft.Storage/storageAccounts/blobServices"
    ],
    "objectType": "BackupPolicy",
    "name": "TestPolicy"
  }
} 

Importante

Los formatos de hora admitidos son solo DateTime. No admiten el formato Time por separado.

Respuestas

La creación o actualización de la directiva de copia de seguridad es una operación asincrónica y devuelve Correcta una vez que la operación se realiza correctamente.

Nombre Escribir Descripción
200 OK BaseBackupPolicyResource Aceptar

Respuestas de ejemplo

Una vez completada la operación, devuelve 200 (OK) con el contenido de la directiva en el cuerpo de respuesta.

{
  "id": "/subscriptions/xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups//TestBkpVaultRG/providers/Microsoft.RecoveryServices/vaults/testBkpVault/backupPolicies/TestBlobPolicy",
  "name": "TestBlobPolicy",
  "type": "Microsoft.DataProtection/backupVaults/backupPolicies",
  "properties": {
    "policyRules": [
      {
        "lifecycles": [
          {
            "deleteAfter": {
              "objectType": "AbsoluteDeleteOption",
              "duration": "P30D"
            },
            "sourceDataStore": {
              "dataStoreType": "OperationalStore",
              "objectType": "DataStoreInfoBase"
            }
          }
        ],
        "isDefault": true,
        "name": "Default",
        "objectType": "AzureRetentionRule"
      }
    ],
    "datasourceTypes": [
      "Microsoft.Storage/storageAccounts/blobServices"
    ],
    "objectType": "BackupPolicy"
  }
}

Pasos siguientes

Habilite la protección de blobs en una cuenta de almacenamiento.

Para más información sobre las API REST de Azure Backup, consulte los siguientes documentos: