Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo descreve como restaurar e criar um novo Azure Disks pelo Backup do Azure usando a API REST. Você também pode restaurar o Managed Disk usando o portal do Azure, o Azure PowerShell e a CLI do Azure.
O Backup de Disco do Azure oferece uma solução turnkey que fornece gerenciamento de ciclo de vida por instantâneos para o discos gerenciados ao automatizar a criação periódica de instantâneos e retê-los pela duração configurada usando a política de backup. É possível gerenciar os instantâneos de disco com custo zero de infraestrutura e sem a necessidade de script personalizado ou qualquer sobrecarga no gerenciamento. É uma solução de backup consistente por falha, que faz o backup pontual de um disco gerenciado usando instantâneos incrementais com suporte para vários backups por dia. Também é uma solução sem agente e não afeta o desempenho do aplicativo em produção. E compatível com backup e restauração de sistemas operacionais e de discos de dados (incluindo discos compartilhados), independentemente de estarem ou não conectados a uma máquina virtual do Azure em execução.
Observação
- Atualmente, não há suporte para a opção OLR (Recuperação na Localização Original) para restauração pela substituição do disco de origem existente (do qual os backups foram feitos).
- Você pode fazer a restauração com base em um ponto de recuperação para criar um novo disco no mesmo grupo de recursos do disco de origem ou em qualquer outro grupo de recursos. Isso é conhecido como ALR (Recuperação de Alternate-Location).
Pré-requisitos
No exemplo, faremos referência a um cofre de backup existente TestBkpVault, no grupo de recursos testBkpVaultRG, em que um Disco do Azure tem o nome msdiskbackup-2dc6eb5b-d008-4d68-9e49-7132d99da0ed.
Configurar permissões
O Cofre de Backup usa a Identidade Gerenciada para acessar outros recursos do Azure. Para restaurar com base no backup, a identidade gerenciada do cofre de Backup exige um conjunto de permissões no grupo de recursos em que o disco será restaurado.
O cofre do Backup usa uma identidade gerenciada atribuída ao sistema, que é restrita a uma por recurso e está vinculada ao ciclo de vida dele. Para conceder permissões à identidade gerenciada, use o RBAC do Azure (controle de acesso baseado em função do Azure). A identidade gerenciada é uma entidade de serviço específica que só pode ser usada com recursos do Azure. Saiba mais sobre as Identidades Gerenciadas.
Atribua as permissões relevantes para a identidade gerenciada atribuída pelo sistema do cofre no grupo de recursos de destino em que os discos serão restaurados/criados. Saiba mais.
Buscar a lista de pontos de recuperação
Para listar todos os pontos de recuperação disponíveis para uma instância de backup, use a API listar pontos de recuperação.
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}/recoveryPoints?api-version=2021-01-01
Por exemplo, essa API é convertida em:
GET https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupInstances/msdiskbackup-2dc6eb5b-d008-4d68-9e49-7132d99da0ed/recoveryPoints?api-version=2021-01-01
Respostas para a lista de pontos de recuperação
Após você enviar a solicitação GET, isso retornará a resposta 200 (OK) e a lista de todos os pontos de recuperação discretos com todos os detalhes relevantes.
| Nome | Tipo | Descrição |
|---|---|---|
| 200 OK | AzureBackupRecoveryPointResourceList | OKEY |
| Outros códigos de status | CloudError | A resposta de erro descreve o motivo da falha na operação. |
Exemplo de resposta para a lista de pontos de recuperação
HTTP/1.1 200 OK
Content-Length: 7550
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-reads: 11999
x-ms-correlation-request-id: f01e2448-bdc5-4971-aee4-2edd1945c719
x-ms-routing-request-id: CENTRALUSEUAP:20210830T173435Z:0063423e-8b5e-493e-bb2e-74b7c7947c6c
Cache-Control: no-cache
Date: Mon, 30 Aug 2021 17:34:34 GMT
Server: Microsoft-IIS/10.0
X-Powered-By: ASP.NET
{
"value": [
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupInstances/msdiskbackup-2dc6eb5b-d008-4d68-9e49-7132d99da0ed/recoveryPoints/a3d02fc3ab8a4c3a8cc26688c26d3356",
"name": "a3d02fc3ab8a4c3a8cc26688c26d3356",
"type": "Microsoft.DataProtection/backupVaults/backupInstances/recoveryPoints",
"properties": {
"objectType": "AzureBackupDiscreteRecoveryPoint",
"recoveryPointId": "a3d02fc3ab8a4c3a8cc26688c26d3356",
"recoveryPointTime": "2021-08-30T10:02:11.6354913Z",
"recoveryPointType": "Incremental",
"friendlyName": "119ac243-a789-4a41-be24-0461bceb3888",
"recoveryPointDataStoresDetails": [
{
"id": "13e7c1fe-005d-4b80-8532-c58d937132bb",
"type": "OperationalStore",
"creationTime": "2021-08-30T10:02:11.6354913Z",
"expiryTime": "2021-09-06T10:02:11.6354913Z",
"metaData": null,
"visible": true,
"state": "COMMITTED",
"rehydrationExpiryTime": null,
"rehydrationStatus": null
}
],
"retentionTagName": "Default",
"retentionTagVersion": "637607428336647408",
"policyName": "DiskBackupPolicy-03",
"policyVersion": null
}
},
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupInstances/msdiskbackup-2dc6eb5b-d008-4d68-9e49-7132d99da0ed/recoveryPoints/8f76ebc4c54847c09455d5785a150ce2",
"name": "8f76ebc4c54847c09455d5785a150ce2",
"type": "Microsoft.DataProtection/backupVaults/backupInstances/recoveryPoints",
"properties": {
"objectType": "AzureBackupDiscreteRecoveryPoint",
"recoveryPointId": "8f76ebc4c54847c09455d5785a150ce2",
"recoveryPointTime": "2021-08-29T10:01:50.7749008Z",
"recoveryPointType": "Incremental",
"friendlyName": "1ac5aa6b-3583-464f-9604-7490c04c2b22",
"recoveryPointDataStoresDetails": [
{
"id": "13e7c1fe-005d-4b80-8532-c58d937132bb",
"type": "OperationalStore",
"creationTime": "2021-08-29T10:01:50.7749008Z",
"expiryTime": "2021-09-05T10:01:50.7749008Z",
"metaData": null,
"visible": true,
"state": "COMMITTED",
"rehydrationExpiryTime": null,
"rehydrationStatus": null
}
],
"retentionTagName": "Default",
"retentionTagVersion": "637607428336647408",
"policyName": "DiskBackupPolicy-03",
"policyVersion": null
}
},
.
.
.
.
}
Selecione os pontos de recuperação relevantes na lista acima e prossiga para preparar a solicitação de restauração. Escolheremos o ponto de recuperação chamado a3d02fc3ab8a4c3a8cc26688c26d3356 na lista acima para restaurar.
Preparar a solicitação de restauração
Construa a ID do ARM (Azure Resource Manager) do novo disco a ser criado usando o grupo de recursos de destino (ao qual as permissões foram atribuídas conforme detalhado acima) e o nome do disco necessário.
Por exemplo, vamos usar um disco chamado APITestDisk2, em um grupo de recursos targetrg, presente na mesma região que o disco de backup, mas em outra assinatura.
Construir o corpo da solicitação de restauração
O corpo da solicitação a seguir contém a ID do ponto de recuperação e os detalhes do destino da restauração.
{
"recoveryPointId": "a3d02fc3ab8a4c3a8cc26688c26d3356",
"restoreRequestObject": {
"objectType": "AzureBackupRecoveryPointBasedRestoreRequest",
"sourceDataStoreType": "OperationalStore",
"restoreTargetInfo": {
"objectType": "restoreTargetInfo",
"recoveryOption": "FailIfExists",
"dataSourceInfo": {
"objectType": "Datasource",
"resourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/targetrg/providers/Microsoft.Compute/disks/APITestDisk2",
"resourceName": "APITestDisk2",
"resourceType": "Microsoft.Compute/disks",
"resourceLocation": "westUS",
"resourceUri": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/targetrg/providers/Microsoft.Compute/disks/APITestDisk2",
"datasourceType": "Microsoft.Compute/disks"
},
"restoreLocation": "westUS"
}
}
}
Validar solicitações de restauração
Depois que o corpo da solicitação estiver preparado, valide-o usando a API de validação para restauração. Assim como no caso da API de validação para backup, esta é uma operação POST.
POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}/validateRestore?api-version=2021-01-01
Por exemplo, essa API é convertida em:
POST "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupInstances/msdiskbackup-2dc6eb5b-d008-4d68-9e49-7132d99da0ed/validateRestore?api-version=2021-01-01"
Saiba mais sobre o corpo da solicitação dessa API POST.
Corpo da solicitação para validar a solicitação de restauração
Construímos uma seção do mesmo na seção acima. Agora, adicionaremos o tipo de objeto e o usaremos para disparar uma operação de validação.
{
"objectType": "ValidateRestoreRequestObject",
"recoveryPointId": "a3d02fc3ab8a4c3a8cc26688c26d3356",
"restoreRequestObject": {
"objectType": "AzureBackupRecoveryPointBasedRestoreRequest",
"sourceDataStoreType": "OperationalStore",
"restoreTargetInfo": {
"objectType": "restoreTargetInfo",
"recoveryOption": "FailIfExists",
"dataSourceInfo": {
"objectType": "Datasource",
"resourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/targetrg/providers/Microsoft.Compute/disks/APITestDisk2",
"resourceName": "APITestDisk2",
"resourceType": "Microsoft.Compute/disks",
"resourceLocation": "westUS",
"resourceUri": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/targetrg/providers/Microsoft.Compute/disks/APITestDisk2",
"datasourceType": "Microsoft.Compute/disks"
},
"restoreLocation": "westUS"
}
}
}
Resposta a solicitações de validação de uma restauração
A solicitação de validação de restauração é uma operação assíncrona. Sendo assim, ela cria outra operação que precisa ser rastreada separadamente.
Ela retorna duas respostas: 202 (Aceito) quando outra operação é criada e 200 (OK) quando a operação é concluída.
| Nome | Tipo | Descrição |
|---|---|---|
| 200 OK | Status da solicitação de validação | |
| 202 Aceito | Aceito |
Exemplo de resposta para a solicitação para validar uma restauração
Quando a operação POST for enviada, ela retornará a resposta inicial como 202 (Aceito) com um cabeçalho Azure-asyncOperation.
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/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzVlNzMxZDBiLTQ3MDQtNDkzNS1hYmNjLWY4YWEzY2UzNTk1ZQ==?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: bae60c92-669d-45a4-aed9-8392cca7cc8d
x-ms-routing-request-id: CENTRALUSEUAP:20210708T205935Z:f51db7a4-9826-4084-aa3b-ae640dc78af6
Cache-Control: no-cache
Date: Thu, 08 Jul 2021 20:59:35 GMT
Location: https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationResults/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzVlNzMxZDBiLTQ3MDQtNDkzNS1hYmNjLWY4YWEzY2UzNTk1ZQ==?api-version=2021-01-01
X-Powered-By: ASP.NET
Acompanhe o cabeçalho Azure-AsyncOperation com uma simples solicitação GET. Quando a solicitação for bem-sucedida, ela retornará 200 (OK) com uma resposta de status de êxito.
GET https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzVlNzMxZDBiLTQ3MDQtNDkzNS1hYmNjLWY4YWEzY2UzNTk1ZQ==?api-version=2021-01-01
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzVlNzMxZDBiLTQ3MDQtNDkzNS1hYmNjLWY4YWEzY2UzNTk1ZQ==",
"name": "ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzVlNzMxZDBiLTQ3MDQtNDkzNS1hYmNjLWY4YWEzY2UzNTk1ZQ==",
"status": "Succeeded",
"startTime": "2021-07-08T20:59:35.0060264Z",
"endTime": "2021-07-08T20:59:57Z"
}
Dispara as solicitações de restauração
A operação de gatilho de restauração é uma API POST. Saiba mais sobre a operação de disparo de restauração.
POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}/restore?api-version=2021-01-01
Por exemplo, a API é convertida em:
POST "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupInstances/msdiskbackup-2dc6eb5b-d008-4d68-9e49-7132d99da0ed/restore?api-version=2021-01-01"
Criar um corpo da solicitação para operações de restauração
Após as solicitações serem validadas, use o mesmo corpo da solicitação para disparar a solicitação de restauração com pequenas alterações.
Exemplo de corpo da solicitação para restauração
A única alteração do corpo da solicitação para validar uma restauração é a remoção do objeto restoreRequest no início e a alteração do tipo de objeto.
{
"objectType": "AzureBackupRecoveryPointBasedRestoreRequest",
"recoveryPointId": "a3d02fc3ab8a4c3a8cc26688c26d3356",
"sourceDataStoreType": "OperationalStore",
"restoreTargetInfo": {
"datasourceInfo": {
"resourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/targetrg/providers/Microsoft.Compute/disks/APITestDisk2",
"resourceUri": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/targetrg/providers/Microsoft.Compute/disks/APITestDisk2",
"datasourceType": "Microsoft.Compute/disks",
"resourceName": "APITestDisk2",
"resourceType": "Microsoft.Compute/disks",
"resourceLocation": "westUS",
"objectType": "Datasource"
},
"restoreLocation": "westUS",
"recoveryOption": "FailIfExists",
"objectType": "RestoreTargetInfo"
}
}
Resposta para disparar solicitações de restauração
O disparo de uma solicitação de restauração é uma operação assíncrona. Sendo assim, ela cria outra operação que precisa ser rastreada separadamente.
Ela retorna duas respostas: 202 (Aceito) quando outra operação é criada e 200 (OK) quando a operação é concluída.
| Nome | Tipo | Descrição |
|---|---|---|
| 200 OK | Status da solicitação de restauração | |
| 202 Aceito | Aceito |
Resposta de exemplo para disparar solicitações de restauração
Quando a operação POST for enviada, ela retornará a resposta inicial como 202 (Aceito) com um cabeçalho 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/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExO2Q1NDIzY2VjLTczYjYtNDY5ZC1hYmRjLTc1N2Q0ZTJmOGM5OQ==?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: 8661209c-5b6a-44fe-b676-4e2b9c296593
x-ms-routing-request-id: CENTRALUSEUAP:20210708T204652Z:69e3fa4b-c5d9-4601-9410-598006ada187
Cache-Control: no-cache
Date: Thu, 08 Jul 2021 20:46:52 GMT
Location: https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationResults/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExO2Q1NDIzY2VjLTczYjYtNDY5ZC1hYmRjLTc1N2Q0ZTJmOGM5OQ==?api-version=2021-01-01
X-Powered-By: ASP.NET
Acompanhe o cabeçalho Azure-AsyncOperation com uma simples solicitação GET. Quando a solicitação é bem-sucedida, ela retorna 200 (OK) com uma ID de trabalho que deve ser acompanhada para a conclusão da solicitação de restauração.
GET https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExO2Q1NDIzY2VjLTczYjYtNDY5ZC1hYmRjLTc1N2Q0ZTJmOGM5OQ==?api-version=2021-01-01
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExO2Q1NDIzY2VjLTczYjYtNDY5ZC1hYmRjLTc1N2Q0ZTJmOGM5OQ==",
"name": "ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExO2Q1NDIzY2VjLTczYjYtNDY5ZC1hYmRjLTc1N2Q0ZTJmOGM5OQ==",
"status": "Succeeded",
"startTime": "2021-07-08T20:46:52.4110868Z",
"endTime": "2021-07-08T20:46:56Z",
"properties": {
"jobId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupJobs/c4bd49a1-0645-4eec-b207-feb818962852",
"objectType": "OperationJobExtendedInfo"
}
}
Acompanhar o trabalho de restauração
Disparar solicitações de restauração disparou o trabalho de restauração. Para acompanhar a ID do Trabalho resultante, use a API GET Jobs.
Use o comando GET simples para acompanhar a JobId presente na resposta de disparo de restauração acima.
GET /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupJobs/c4bd49a1-0645-4eec-b207-feb818962852?api-version=2021-01-01
{
"properties": {
"activityID": "2881cc22-f527-4af4-9b34-46c6c7b72076-Ibz",
"subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"backupInstanceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupInstances/msdiskbackup-2dc6eb5b-d008-4d68-9e49-7132d99da0ed",
"policyId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupPolicies/DiskBackup-Policy",
"dataSourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/RG-DiskBackup/providers/Microsoft.Compute/disks/msdiskbackup",
"vaultName": "testBkpVault",
"backupInstanceFriendlyName": "msdiskbackup",
"policyName": "DiskBackup-Policy",
"sourceResourceGroup": "RG-DiskBackup",
"dataSourceSetName": null,
"dataSourceName": "msdiskbackup",
"sourceDataStoreName": null,
"destinationDataStoreName": null,
"progressEnabled": false,
"etag": "W/\"datetime'2021-08-26T07%3A18%3A16.157629Z'\"",
"sourceSubscriptionID": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"dataSourceLocation": "westUS",
"startTime": "2021-08-26T07:12:09.940517Z",
"endTime": "2021-08-26T07:18:15.6815066Z",
"dataSourceType": "Microsoft.Compute/disks",
"operationCategory": "Restore",
"operation": "Restore",
"status": "Completed",
"restoreType": null,
"isUserTriggered": true,
"rehydrationPriority": null,
"supportedActions": [
""
],
"duration": "PT6M5.7409896S",
"progressUrl": null,
"errorDetails": null,
"extendedInfo": {
"backupInstanceState": null,
"dataTransferredInBytes": null,
"targetRecoverPoint": null,
"sourceRecoverPoint": {
"recoveryPointID": "3a512290ec6b43d6b9a644869f4a3b38",
"recoveryPointTime": "2021-08-25T09:03:11.6889015Z"
},
"recoveryDestination": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/targetrg/providers/Microsoft.Compute/disks/APITestDisk2",
"subTasks": [
{
"taskId": 1,
"taskName": "Trigger Restore",
"taskStatus": "Completed",
"taskProgress": null,
"additionalDetails": null
}
],
"additionalDetails": null
}
},
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupJobs/3bc62c80-913f-47fa-b829-b7df476682be",
"name": "3bc62c80-913f-47fa-b829-b7df476682be",
"type": "Microsoft.DataProtection/BackupVaults/backupJobs"
}
O status do trabalho acima indica que o trabalho de restauração foi concluído e que os discos foram recuperados para a assinatura e o grupo de recursos de destino especificados.
Próxima etapa
Visão geral do backup de Disco do Azure
Para obter mais informações sobre as APIs REST do Backup do Azure, confira os seguintes artigos: