Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo descrive come gestire i backup per i dischi di Azure tramite l'API REST.
Backup dischi di Azure semplifica la gestione del ciclo di vita degli snapshot per i dischi gestiti automatizzando istantanee periodiche e la loro conservazione in base alle politiche di backup. Elimina i costi dell'infrastruttura, gli script personalizzati e il sovraccarico di gestione, fornendo un backup temporizzato coerente con l'arresto anomalo del sistema tramite snapshot incrementali, supportando più backup al giorno. Questa soluzione senza agente garantisce un impatto zero sulle prestazioni di produzione e consente il backup e il ripristino di dischi dati e del sistema operativo (inclusi i dischi condivisi), indipendentemente dal fatto che siano collegati a una macchina virtuale di Azure.
Per informazioni sulle aree di disponibilità, sugli scenari supportati e sulle limitazioni del backup di dischi di Azure, vedere la matrice di supporto.
Prerequisiti
Prima di eseguire il backup dei dischi, esaminare i prerequisiti seguenti:
Configurare il backup
Dopo aver creato il vault e i criteri, è fondamentale che l'utente consideri due aspetti fondamentali per proteggere tutti i BLOB di Azure all'interno di un account Azure di archiviazione.
- Entità chiave
- Autorizzazioni
Entità chiave
Dopo aver creato il vault e i criteri, è necessario considerare tre aspetti fondamentali per proteggere un disco di Azure.
Disco da proteggere: prendere nota dell'ID ARM e del percorso del disco da proteggere. Verrà usato come identificatore del disco.
"/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx/resourcegroups/RG-DiskBackup/providers/Microsoft.Compute/disks/msdiskbackup"Gruppo di risorse snapshot: gli snapshot del disco vengono archiviati in un gruppo di risorse all'interno della sottoscrizione. Come linea guida, è consigliabile creare un gruppo di risorse dedicato come archivio dati snapshot da usare dal servizio Backup di Azure. La disponibilità di un gruppo di risorse dedicato consente di limitare le autorizzazioni di accesso per il gruppo di risorse, offrendo sicurezza e facilità di gestione dei dati di backup. Prendere nota dell'ID ARM per il gruppo di risorse in cui si desidera inserire gli snapshot del disco.
"/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/snapshot-rg"Insieme di credenziali di backup: l'insieme di credenziali di backup richiede le autorizzazioni per il disco per abilitare i backup. 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'MSI dell'insieme di credenziali) e al disco e/o al disco RG. Queste operazioni possono essere eseguite tramite portale di Azure o l'interfaccia della riga di comando. Per assegnare autorizzazioni correlate, vedere i prerequisiti per configurare il backup dei dischi gestiti.
Preparare la richiesta per configurare il backup
Dopo aver impostato le autorizzazioni pertinenti sul vault e sul disco, e configurato il vault e i criteri, preparare la richiesta per configurare il backup. Di seguito è riportato il corpo della richiesta per configurare il backup per un disco di Azure. L'ID di Azure Resource Manager (ID ARM) del disco di Azure e i relativi dettagli sono indicati nella datasourceinfo sezione e le informazioni sui criteri sono presenti nella sezione in policyinfo cui il gruppo di risorse snapshot viene fornito come uno dei parametri dei criteri.
{
"backupInstance": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Compute/",
"objectType": "Datasource",
"resourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/RG-DiskBackup/providers/Microsoft.Compute/disks/msdiskbackup",
"resourceLocation": "westUS",
"resourceName": "msdiskbackup",
"resourceType": "Microsoft.Compute/disks",
"resourceUri": ""
},
"policyInfo": {
"policyId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupPolicies/DiskBackup-Policy",
"policyParameters": {
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/snapshot-rg"
}
]
}
},
"objectType": "BackupInstance"
}
}
Convalidare la richiesta per configurare il backup
Per verificare se la richiesta per configurare il backup avrà esito positivo, usare la convalida per l'API di backup. È possibile usare la risposta per eseguire i prerequisiti necessari e quindi inviare la configurazione per la richiesta di backup.
La convalida per la richiesta di backup è un'operazione POST e l'URI contiene {subscriptionId}parametri , {vaultName}, {vaultresourceGroupName} .
POST https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{vaultresourceGroupname}/providers/Microsoft.DataProtection/backupVaults/{backupVaultName}/validateForBackup?api-version=2021-01-01
Ad esempio, questa API indica che:
POST https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/validateForBackup?api-version=2021-01-01
Il corpo della richiesta preparato in precedenza verrà usato per fornire i dettagli del disco di Azure da proteggere.
Corpo della richiesta di esempio
{
"backupInstance": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Compute/disks",
"objectType": "Datasource",
"resourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/RG-DiskBackup/providers/Microsoft.Compute/disks/msdiskbackup",
"resourceLocation": "westUS",
"resourceName": "msdiskbackup",
"resourceType": "Microsoft.Compute/disks",
"resourceUri": ""
},
"policyInfo": {
"policyId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupPolicies/DiskBackup-Policy",
"policyParameters": {
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/snapshot-rg"
}
]
}
},
"objectType": "BackupInstance"
}
}
Risposte per la convalida della richiesta di backup
La convalida della richiesta di backup è un' operazione asincrona. Ciò significa che quest'operazione crea un'altra operazione che deve essere tracciata separatamente.
L'operazione restituisce due risposte: 202 (Accepted) quando viene creata un'altra operazione e 200 (OK) quando tale operazione viene completata.
| Nome | Tipo | Descrizione |
|---|---|---|
| 202 - Accettato | L'operazione verrà completata in modo asincrono | |
| 200 - OK | OperationJobExtendedInfo | Accettato |
| Altri codici di stato | CloudError | Risposta di errore che descrive il motivo per cui l'operazione non è riuscita. |
Risposte di esempio per convalidare la richiesta di backup
Risposta con errore
Se il disco specificato è già protetto, restituirà la risposta HTTP 400 (Richiesta non valida) indicando che il disco specificato è protetto in un insieme di credenziali di backup insieme ai dettagli.
HTTP/1.1 400 BadRequest
Content-Length: 1012
Content-Type: application/json
Expires: -1
Pragma: no-cache
X-Content-Type-Options: nosniff
x-ms-request-id:
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-writes: 1199
x-ms-correlation-request-id: 0c99ff0f-6c26-4ec7-899f-205435e89894
x-ms-routing-request-id: CENTRALUSEUAP:20210830T142949Z:0be72802-02ad-485d-b91f-4aadd92c059c
Cache-Control: no-cache
Date: Mon, 30 Aug 2021 14:29:49 GMT
X-Powered-By: ASP.NET
{
"error": {
"additionalInfo": [
{
"type": "UserFacingError",
"info": {
"message": "Datasource is already protected under the Backup vault /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault.",
"recommendedAction": [
"Delete the backup instance SharedDataDisk from the Backup vault /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault to re-protect the datasource in any other vault."
],
"details": null,
"code": "UserErrorDppDatasourceAlreadyProtected",
"target": "",
"innerError": null,
"isRetryable": false,
"isUserError": false,
"properties": {
"ActivityId": "0c99ff0f-6c26-4ec7-899f-205435e89894"
}
}
}
],
"code": "UserErrorDppDatasourceAlreadyProtected",
"message": "Datasource is already protected under the Backup vault /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault.",
"target": null,
"details": null
}
}
Tenere traccia della risposta
Se l'origine dati non è protetta, l'API procede per ulteriori convalide e crea un'operazione di rilevamento.
HTTP/1.1 202 Accepted
Content-Length: 0
Expires: -1
Pragma: no-cache
Retry-After: 10
Azure-AsyncOperation: https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzM2NDdhZDNjLTFiNGEtNDU4YS05MGJkLTQ4NThiYjRhMWFkYg==?api-version=2021-01-01
X-Content-Type-Options: nosniff
x-ms-request-id:
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-writes: 1197
x-ms-correlation-request-id: 3e7cacb3-65cd-4b3c-8145-71fe90d57327
x-ms-routing-request-id: CENTRALUSEUAP:20210707T124850Z:105f2105-6db1-44bf-8a34-45972a8ba861
Cache-Control: no-cache
Date: Wed, 07 Jul 2021 12:48:50 GMT
Location: https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationResults/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzM2NDdhZDNjLTFiNGEtNDU4YS05MGJkLTQ4NThiYjRhMWFkYg==?api-version=2021-01-01
X-Powered-By: ASP.NET
Tenere traccia dell'operazione risultante usando l'intestazione Azure-AsyncOperation con un semplice comando GET .
GET https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzM2NDdhZDNjLTFiNGEtNDU4YS05MGJkLTQ4NThiYjRhMWFkYg==?api-version=2021-01-01
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzM2NDdhZDNjLTFiNGEtNDU4YS05MGJkLTQ4NThiYjRhMWFkYg==",
"name": "ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzM2NDdhZDNjLTFiNGEtNDU4YS05MGJkLTQ4NThiYjRhMWFkYg==",
"status": "Inprogress",
"startTime": "2021-07-07T12:48:50.3432229Z",
"endTime": "0001-01-01T00:00:00"
}
Al termine, restituirà 200 (OK) e il corpo della risposta elencherà altri requisiti da soddisfare, come le autorizzazioni.
GET https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzM2NDdhZDNjLTFiNGEtNDU4YS05MGJkLTQ4NThiYjRhMWFkYg==?api-version=2021-01-01
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzM2NDdhZDNjLTFiNGEtNDU4YS05MGJkLTQ4NThiYjRhMWFkYg==",
"name": "ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzM2NDdhZDNjLTFiNGEtNDU4YS05MGJkLTQ4NThiYjRhMWFkYg==",
"status": "Failed",
"error": {
"additionalInfo": [
{
"type": "UserFacingError",
"info": {
"message": "Appropriate permissions to perform the operation is missing.",
"recommendedAction": [
"Grant appropriate permissions to perform this operation as mentioned at https://aka.ms/UserErrorMissingRequiredPermissions and retry the operation."
],
"code": "UserErrorMissingRequiredPermissions",
"target": "",
"innerError": {
"code": "UserErrorMissingRequiredPermissions",
"additionalInfo": {
"DetailedNonLocalisedMessage": "Validate for Protection failed. Exception Message: The client '00001111-aaaa-2222-bbbb-3333cccc4444' with object id 'aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb' does not have authorization to perform action 'Microsoft.Authorization/roleAssignments/read' over scope '/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/RG-DiskBackup/providers/Microsoft.Compute/disks/msdiskbackup/providers/Microsoft.Authorization' or the scope is invalid. If access was recently granted, please refresh your credentials."
}
},
"isRetryable": false,
"isUserError": false,
"properties": {
"ActivityId": "3e7cacb3-65cd-4b3c-8145-71fe90d57327"
}
}
}
],
"code": "UserErrorMissingRequiredPermissions",
"message": "Appropriate permissions to perform the operation is missing."
},
"startTime": "2021-07-07T12:48:50.3432229Z",
"endTime": "2021-07-07T12:49:22Z"
}
Se si concedono tutte le autorizzazioni, inviare di nuovo la richiesta di convalida, tenere traccia dell'operazione risultante e restituire la risposta di esito positivo come 200 (OK) se vengono soddisfatte tutte le condizioni.
GET https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzlhMjk2YWM2LWRjNDMtNGRjZS1iZTU2LTRkZDNiMDhjZDlkOA==?api-version=2021-01-01
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzlhMjk2YWM2LWRjNDMtNGRjZS1iZTU2LTRkZDNiMDhjZDlkOA==",
"name": "ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzlhMjk2YWM2LWRjNDMtNGRjZS1iZTU2LTRkZDNiMDhjZDlkOA==",
"status": "Succeeded",
"startTime": "2021-07-07T13:03:54.8627251Z",
"endTime": "2021-07-07T13:04:06Z"
}
Configurare la richiesta di backup
Dopo aver convalidato la richiesta, è possibile inviare lo stesso all'API di creazione dell'istanza di backup. Un'istanza di Backup rappresenta un elemento protetto con il servizio di protezione dei dati di Azure Backup all'interno della cassetta di backup. In questo caso, il disco di Azure è l'istanza di backup ed è possibile usare lo stesso corpo della richiesta, convalidato in precedenza, con aggiunte secondarie.
Usare un nome univoco per l'istanza di backup. Si consiglia quindi di usare sia il nome della risorsa che un identificatore univoco. Ad esempio, nell'operazione seguente si userà msdiskbackup-2dc6eb5b-d008-4d68-9e49-7132d99da0ed e contrassegnarlo come nome dell'istanza di backup.
Per creare o aggiornare l'istanza di backup, usare l'operazione PUT seguente.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/{BkpvaultName}/backupInstances/{UniqueBackupInstanceName}?api-version=2021-01-01
Ad esempio, questa API indica che:
PUT https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupInstances/msdiskbackup-2dc6eb5b-d008-4d68-9e49-7132d99da0ed?api-version=2021-01-01
Creare la richiesta per configurare il backup
Per creare un'istanza di backup, di seguito sono riportati i componenti del corpo della richiesta:
| Nome | Tipo | Descrizione |
|---|---|---|
| proprietà | BackupInstance | Proprietà di BackupInstanceResource |
Richiesta di esempio per configurare il backup
Verrà usato lo stesso corpo della richiesta usato per convalidare la richiesta di backup con un nome univoco come indicato in precedenza.
{
"name": "msdiskbackup-2dc6eb5b-d008-4d68-9e49-7132d99da0ed",
"type": "Microsoft.DataProtection/backupvaults/backupInstances",
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Compute/disks",
"objectType": "Datasource",
"resourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/RG-DiskBackup/providers/Microsoft.Compute/disks/msdiskbackup",
"resourceLocation": "westUS",
"resourceName": "msdiskbackup",
"resourceType": "Microsoft.Compute/disks",
"resourceUri": ""
},
"policyInfo": {
"policyId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupPolicies/DiskBackup-Policy",
"policyParameters": {
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/snapshot-rg"
}
]
}
},
"objectType": "BackupInstance"
}
}
Risposte per configurare la richiesta di backup
La richiesta di creazione dell'istanza di backup è un'operazione asincrona. Ciò significa che quest'operazione crea un'altra operazione che deve essere tracciata separatamente.
Restituisce due risposte: 201 (Creato) quando viene creata l'istanza di backup e la protezione viene configurata e quindi 200 (OK) al termine di tale configurazione.
| Nome | Tipo | Descrizione |
|---|---|---|
| 201 Creato | Istanza di backup | L'istanza di backup viene creata e la protezione è in fase di configurazione |
| 200 - OK | Istanza di backup | La protezione è configurata |
| Altri codici di stato | CloudError | Risposta di errore che descrive il motivo per cui l'operazione non è riuscita. |
Risposte di esempio per configurare la richiesta di backup
Dopo aver inviato la richiesta PUT per creare un'istanza di backup, la risposta iniziale è 201 (Creata) con l'intestazione Azure-asyncOperation. Si noti che il corpo della richiesta contiene tutte le proprietà dell'istanza di backup.
HTTP/1.1 201 Created
Content-Length: 1149
Content-Type: application/json
Expires: -1
Pragma: no-cache
Retry-After: 15
Azure-AsyncOperation: https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzI1NWUwNmFlLTI5MjUtNDBkNy1iMjMxLTM0ZWZlMDA3NjdkYQ==?api-version=2021-01-01
X-Content-Type-Options: nosniff
x-ms-request-id:
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-writes: 1199
x-ms-correlation-request-id: 5d9ccf1b-7ac1-456d-8ae3-36c93c0d2427
x-ms-routing-request-id: CENTRALUSEUAP:20210707T170219Z:9e897266-5d86-4d13-b298-6561c60cf043
Cache-Control: no-cache
Date: Wed, 07 Jul 2021 17:02:18 GMT
Server: Microsoft-IIS/10.0
X-Powered-By: ASP.NET
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupInstances/msdiskbackup-2dc6eb5b-d008-4d68-9e49-7132d99da0ed",
"name": "msdiskbackup-2dc6eb5b-d008-4d68-9e49-7132d99da0ed",
"type": "Microsoft.DataProtection/backupVaults/backupInstances",
"properties": {
"friendlyName": "msdiskbackup",
"dataSourceInfo": {
"datasourceType": "Microsoft.Compute/disks",
"objectType": "Datasource",
"resourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/RG-DiskBackup/providers/Microsoft.Compute/disks/msdiskbackup",
"resourceLocation": "westUS",
"resourceName": "msdiskbackup",
"resourceType": "Microsoft.Compute/disks",
"resourceUri": ""
},
"policyInfo": {
"policyId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupPolicies/DiskBackup-Policy",
"policyParameters": {
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/snapshot-rg"
}
]
},
"protectionStatus": {
"status": "ConfiguringProtection"
},
"currentProtectionState": "ConfiguringProtection",
"provisioningState": "Provisioning",
"objectType": "BackupInstance"
}
}
Tenere quindi traccia dell'operazione risultante usando l'intestazione Azure-AsyncOperation con un semplice comando GET.
GET https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzI1NWUwNmFlLTI5MjUtNDBkNy1iMjMxLTM0ZWZlMDA3NjdkYQ==?api-version=2021-01-01
Al termine dell'operazione, viene restituita la risposta 200 (OK) con il messaggio di esito positivo nel corpo della risposta.
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzI1NWUwNmFlLTI5MjUtNDBkNy1iMjMxLTM0ZWZlMDA3NjdkYQ==",
"name": "ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzI1NWUwNmFlLTI5MjUtNDBkNy1iMjMxLTM0ZWZlMDA3NjdkYQ==",
"status": "Succeeded",
"startTime": "2021-07-07T17:02:19.0611871Z",
"endTime": "2021-07-07T17:02:20Z"
}
Arrestare la protezione ed eliminare i dati
Per rimuovere la protezione in un disco di Azure ed eliminare anche i dati di backup, eseguire un'operazione di eliminazione.
L'arresto della protezione e l'eliminazione dei dati sono operazioni DELETE.
DELETE https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}?api-version=2021-01-01
Ad esempio, questa API indica che:
DELETE "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupInstances/msdiskbackup-2dc6eb5b-d008-4d68-9e49-7132d99da0ed?api-version=2021-01-01"
Risposte per la protezione dall'eliminazione
L'operazione DELETE applicata alla protezione è un'operazione asincrona. Ciò significa che quest'operazione crea un'altra operazione che deve essere tracciata separatamente.
L'operazione restituisce due risposte: 202 (Accettata) quando viene creata un'altra operazione e 200 (OK) quando tale operazione viene completata.
| Nome | Tipo | Descrizione |
|---|---|---|
| 200 - OK | Stato della richiesta di eliminazione | |
| 202 - Accettato | Accettato |
Risposte di esempio per la protezione dell'eliminazione
Dopo aver inviato la richiesta DELETE , la risposta iniziale sarà 202 (accettata) con un'intestazione Azure-asyncOperation.
HTTP/1.1 202 Accepted
Content-Length: 0
Expires: -1
Pragma: no-cache
Retry-After: 30
Azure-AsyncOperation: https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzE1ZjM4YjQ5LWZhMGQtNDMxOC1iYjQ5LTExMDJjNjUzNjM5Zg==?api-version=2021-01-01
X-Content-Type-Options: nosniff
x-ms-request-id:
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-deletes: 14999
x-ms-correlation-request-id: fee7a361-b1b3-496d-b398-60fed030d5a7
x-ms-routing-request-id: CENTRALUSEUAP:20210708T071330Z:5c3a9f3e-53aa-4d5d-bf9a-20de5601b090
Cache-Control: no-cache
Date: Thu, 08 Jul 2021 07:13:29 GMT
Location: https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationResults/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzE1ZjM4YjQ5LWZhMGQtNDMxOC1iYjQ5LTExMDJjNjUzNjM5Zg==?api-version=2021-01-01
X-Powered-By: ASP.NET
Tenere traccia dell'intestazione Azure-AsyncOperation con una semplice richiesta GET. Dopo che la richiesta avrà esito positivo, restituirà 200 (OK) con una risposta di stato di esito positivo.
GET "https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzE1ZjM4YjQ5LWZhMGQtNDMxOC1iYjQ5LTExMDJjNjUzNjM5Zg==?api-version=2021-01-01"
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzE1ZjM4YjQ5LWZhMGQtNDMxOC1iYjQ5LTExMDJjNjUzNjM5Zg==",
"name": "ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzE1ZjM4YjQ5LWZhMGQtNDMxOC1iYjQ5LTExMDJjNjUzNjM5Zg==",
"status": "Succeeded",
"startTime": "2021-07-08T07:13:30.23815Z",
"endTime": "2021-07-08T07:13:46Z"
}
Passaggi successivi
Ripristinare il Disco Gestito utilizzando il portale di Azure, Azure PowerShell, Azure CLI, e REST API.
Per altre informazioni sulle API REST di Backup di Azure,vedere gli articoli seguenti: