Fazer backup de uma VM do Azure usando o Backup do Azure via API REST

Este artigo descreve como gerenciar backups para uma VM do Azure usando o Backup do Azure via API REST. Configure a proteção pela primeira vez para uma VM do Azure desprotegida anteriormente, acione um backup sob demanda para uma VM do Azure protegida e modifique as propriedades de backup de uma VM de backup por meio da API REST, conforme explicado aqui. Para proteger uma VM do Azure usando o portal do Azure, consulte este artigo.

Saiba como criar vault e criar tutoriais de API REST de política para criar novos cofres e políticas.

Vamos supor que você queira proteger uma VM testVM em um grupo testRG de recursos para um cofre testVaultdos Serviços de Recuperação, presente dentro do grupo testVaultRGde recursos, com a política padrão (chamada DefaultPolicy).

Configurar o backup para uma VM do Azure desprotegida usando a API REST

Descubra VMs do Azure desprotegidas

Primeiro, o cofre deve ser capaz de identificar a VM do Azure. Isso é acionado usando a operação de atualização. É uma operação POST assíncrona que garante que o cofre obtenha a lista mais recente de todas as VMs desprotegidas na assinatura atual e as 'armazene em cache'. Quando a VM estiver 'armazenada em cache', os serviços de recuperação poderão acessar a VM e protegê-la.

POST https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{vaultresourceGroupname}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/refreshContainers?api-version=2016-12-01

O URI POST tem {subscriptionId}, {vaultName}, {vaultresourceGroupName}, {fabricName} parâmetros. O {fabricName} é "Azure". De acordo com o nosso exemplo, {vaultName} é "testVault" e {vaultresourceGroupName} é "testVaultRG". Como todos os parâmetros necessários são fornecidos no URI, não há necessidade de um corpo de solicitação separado.

POST https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/refreshContainers?api-version=2016-12-01

Respostas à operação de atualização

A operação 'refresh' é uma operação assíncrona. Isso significa que essa operação cria outra operação que precisa ser rastreada separadamente.

Ele retorna duas respostas: 202 (Aceito) quando outra operação é criada e 200 (OK) quando essa operação é concluída.

Nome Tipo Description
204 Sem Conteúdo OK com Nenhum conteúdo devolvido
202 Aceito Aceite

Exemplo de respostas à operação de atualização:

Uma vez que a solicitação POST é enviada, uma resposta 202 (Aceito) é retornada.

HTTP/1.1 202 Accepted
Pragma: no-cache
Retry-After: 60
X-Content-Type-Options: nosniff
x-ms-request-id: 43cf550d-e463-421c-8922-37e4766db27d
x-ms-client-request-id: 4910609f-bb9b-4c23-8527-eb6fa2d3253f; 4910609f-bb9b-4c23-8527-eb6fa2d3253f
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-writes: 1199
x-ms-correlation-request-id: 43cf550d-e463-421c-8922-37e4766db27d
x-ms-routing-request-id: SOUTHINDIA:20180521T105701Z:43cf550d-e463-421c-8922-37e4766db27d
Cache-Control: no-cache
Date: Mon, 21 May 2018 10:57:00 GMT
Location: https://management.azure.com/subscriptions//00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/microsoft.recoveryservices/vaults/testVault/backupFabrics/Azure/operationResults/aad204aa-a5cf-4be2-a7db-a224819e5890?api-version=2019-05-13
X-Powered-By: ASP.NET

Acompanhe a operação resultante usando o cabeçalho "Location" com um simples comando GET

GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/microsoft.recoveryservices/vaults/testVault/backupFabrics/Azure/operationResults/aad204aa-a5cf-4be2-a7db-a224819e5890?api-version=2019-05-13

Depois que todas as VMs do Azure forem descobertas, o comando GET retornará uma resposta 204 (Sem Conteúdo). O cofre agora pode descobrir qualquer VM dentro da assinatura.

HTTP/1.1 204 NoContent
Pragma: no-cache
X-Content-Type-Options: nosniff
x-ms-request-id: cf6cd73b-9189-4942-a61d-878fcf76b1c1
x-ms-client-request-id: 25bb6345-f9fc-4406-be1a-dc6db0eefafe; 25bb6345-f9fc-4406-be1a-dc6db0eefafe
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-reads: 14997
x-ms-correlation-request-id: cf6cd73b-9189-4942-a61d-878fcf76b1c1
x-ms-routing-request-id: SOUTHINDIA:20180521T105825Z:cf6cd73b-9189-4942-a61d-878fcf76b1c1
Cache-Control: no-cache
Date: Mon, 21 May 2018 10:58:25 GMT
X-Powered-By: ASP.NET

Selecionando a VM do Azure relevante

Você pode confirmar que o "cache" é feito listando todos os itens protegíveis na assinatura e localize a VM desejada na resposta. A resposta dessa operação também fornece informações sobre como os Serviços de Recuperação identificam uma VM. Quando estiver familiarizado com o padrão, pode ignorar este passo e prosseguir diretamente para ativar a proteção.

Esta operação é uma operação GET .

GET https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{vaultresourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectableItems?api-version=2016-12-01&$filter=backupManagementType eq 'AzureIaasVM'

O GET URI tem todos os parâmetros necessários. Não é necessário nenhum corpo de solicitação adicional.

Respostas para começar a operação

Nome Tipo Description
200 OK WorkloadProtectableItemResourceList OK

Exemplos de respostas para obter a operação:

Depois que a solicitação GET for enviada, a resposta 200 (OK) será retornada.

HTTP/1.1 200 OK
Pragma: no-cache
X-Content-Type-Options: nosniff
x-ms-request-id: 7c2cf56a-e6be-4345-96df-c27ed849fe36
x-ms-client-request-id: 40c8601a-c217-4c68-87da-01db8dac93dd; 40c8601a-c217-4c68-87da-01db8dac93dd
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-reads: 14979
x-ms-correlation-request-id: 7c2cf56a-e6be-4345-96df-c27ed849fe36
x-ms-routing-request-id: SOUTHINDIA:20180521T071408Z:7c2cf56a-e6be-4345-96df-c27ed849fe36
Cache-Control: no-cache
Date: Mon, 21 May 2018 07:14:08 GMT
Server: Microsoft-IIS/8.0
X-Powered-By: ASP.NET

{
  "value": [
    {
      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/microsoft.recoveryservices/vaults/testVault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;testRG;testVM/protectableItems/vm;iaasvmcontainerv2;testRG;testVM",
      "name": "iaasvmcontainerv2;testRG;testVM",
      "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectableItems",
      "properties": {
        "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testVM",
        "virtualMachineVersion": "Compute",
        "resourceGroup": "testRG",
        "backupManagementType": "AzureIaasVM",
        "protectableItemType": "Microsoft.Compute/virtualMachines",
        "friendlyName": "testVM",
        "protectionState": "NotProtected"
      }
    },……………..

Gorjeta

O número de valores em uma resposta GET é limitado a 200 para uma 'página'. Use o campo 'nextLink' para obter o URL para o próximo conjunto de respostas.

A resposta contém a lista de todas as VMs do Azure desprotegidas e cada uma {value} contém todas as informações exigidas pelo Serviço de Recuperação do Azure para configurar o backup. Para configurar o backup, anote o {name} campo e o {virtualMachineId} campo na {properties} seção. Construa duas variáveis a partir desses valores de campo, conforme mencionado abaixo.

  • containerName = "iaasvmcontainer;" +{name}
  • protectedItemName = "vm;" + {name}
  • {virtualMachineId} é usado posteriormente no corpo da solicitação

No exemplo, os valores acima se traduzem em:

  • containerName = "iaasvmcontainer; iaasvmcontainerv2; testeRG; testVM"
  • protectedItemName = "vm;iaasvmcontainerv2; testeRG; testVM"

Habilitar a proteção para a VM do Azure

Depois que a VM relevante for "armazenada em cache" e "identificada", selecione a política a ser protegida. Para saber mais sobre as políticas existentes no cofre, consulte listar API de política. Em seguida, selecione a política relevante referindo-se ao nome da política. Para criar políticas, consulte o tutorial Criar política. "DefaultPolicy" é selecionado no exemplo abaixo.

Habilitar a proteção é uma operação PUT assíncrona que cria um "item protegido".

https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{vaultresourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}?api-version=2019-05-13

Os {containerName} e {protectedItemName} são como construídos acima. O {fabricName} é "Azure". Para o nosso exemplo, isto traduz-se em:

PUT https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;testRG;testVM/protectedItems/vm;iaasvmcontainerv2;testRG;testVM?api-version=2019-05-13

Criar o corpo da solicitação

Para criar um item protegido, a seguir estão os componentes do corpo da solicitação.

Nome Tipo Description
propriedades AzureIaaSVMProtectedItem Propriedades do recurso ProtectedItem

Para obter a lista completa de definições do corpo da solicitação e outros detalhes, consulte Criar documento da API REST do item protegido.

Exemplo de corpo da solicitação:

O corpo da solicitação a seguir define as propriedades necessárias para criar um item protegido.

{
  "properties": {
    "protectedItemType": "Microsoft.Compute/virtualMachines",
    "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testVM",
    "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/microsoft.recoveryservices/vaults/testVault/backupPolicies/DefaultPolicy"
  }
}

O {sourceResourceId} é o {virtualMachineId} mencionado acima a partir da resposta da lista de itens protegíveis. Respostas para criar operação de item protegido @01011011

Respostas para criar operação de item protegido

A criação de um item protegido é uma operação assíncrona. Isso significa que essa operação cria outra operação que precisa ser rastreada separadamente.

Ele retorna duas respostas: 202 (Aceito) quando outra operação é criada e 200 (OK) quando essa operação é concluída.

Nome Tipo Description
200 OK ProtectedItemResource OK
202 Aceito Aceite

Exemplos de respostas para criar uma operação de item protegido:

Depois de enviar a solicitação PUT para criação ou atualização de item protegido, a resposta inicial é 202 (Aceito) com um cabeçalho de local ou Azure-async-header.

HTTP/1.1 202 Accepted
Pragma: no-cache
Retry-After: 60
Azure-AsyncOperation: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/microsoft.recoveryservices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;testRG;testVM/protectedItems/vm;testRG;testVM/operationsStatus/a0866047-6fc7-4ac3-ba38-fb0ae8aa550f?api-version=2019-05-13
X-Content-Type-Options: nosniff
x-ms-request-id: db785be0-bb20-4598-bc9f-70c9428b170b
x-ms-client-request-id: e1f94eef-9b2d-45c4-85b8-151e12b07d03; e1f94eef-9b2d-45c4-85b8-151e12b07d03
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-writes: 1199
x-ms-correlation-request-id: db785be0-bb20-4598-bc9f-70c9428b170b
x-ms-routing-request-id: SOUTHINDIA:20180521T073907Z:db785be0-bb20-4598-bc9f-70c9428b170b
Cache-Control: no-cache
Date: Mon, 21 May 2018 07:39:06 GMT
Location: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/microsoft.recoveryservices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;testRG;testVM/protectedItems/vm;testRG;testVM/operationResults/a0866047-6fc7-4ac3-ba38-fb0ae8aa550f?api-version=2019-05-13
X-Powered-By: ASP.NET

Em seguida, acompanhe a operação resultante usando o cabeçalho location ou o cabeçalho Azure-AsyncOperation com um comando GET simples.

GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/microsoft.recoveryservices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;testRG;testVM/protectedItems/vm;testRG;testVM/operationsStatus/a0866047-6fc7-4ac3-ba38-fb0ae8aa550f?api-version=2019-05-13

Quando a operação for concluída, ela retornará 200 (OK) com o conteúdo do item protegido no corpo da resposta.

{
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/microsoft.recoveryservices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;testRG;testVM/protectedItems/vm;testRG;testVM",
  "name": "VM;testRG;testVM",
  "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems",
  "properties": {
    "friendlyName": "testVM",
    "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testVM",
    "protectionStatus": "Healthy",
    "protectionState": "IRPending",
    "healthStatus": "Passed",
    "lastBackupStatus": "",
    "lastBackupTime": "2001-01-01T00:00:00Z",
    "protectedItemDataId": "17592691116891",
    "extendedInfo": {
      "recoveryPointCount": 0,
      "policyInconsistent": false
    },
    "protectedItemType": "Microsoft.Compute/virtualMachines",
    "backupManagementType": "AzureIaasVM",
    "workloadType": "VM",
    "containerName": "iaasvmcontainerv2;testRG;testVM",
    "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testVM",
    "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/microsoft.recoveryservices/vaults/testVault/backupPolicies/DefaultPolicy",
    "policyName": "DefaultPolicy"
  }
}

Isso confirma que a proteção está habilitada para a VM e o primeiro backup será acionado de acordo com o agendamento da política.

Excluindo discos no backup de VM do Azure

O Backup do Azure também fornece uma maneira de fazer backup seletivo de um subconjunto de discos na VM do Azure. Mais detalhes são fornecidos aqui. Se você quiser fazer backup seletivamente de alguns discos durante a habilitação da proteção, o trecho de código a seguir deve ser o corpo da solicitação durante a habilitação da proteção.

{
"properties": {
    "protectedItemType": "Microsoft.Compute/virtualMachines",
    "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testVM",
    "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/microsoft.recoveryservices/vaults/testVault/backupPolicies/DefaultPolicy",
    "extendedProperties":  {
      "diskExclusionProperties":{
          "diskLunList":[0,1],
          "isInclusionList":true
        }
    }
}
}

No corpo da solicitação acima, a lista de discos para backup é fornecida na seção de propriedades estendidas.

Property valor
diskLunList A lista de LUNs de disco é uma lista de LUNs de discos de dados. O backup do disco do sistema operacional é sempre feito e não precisa ser mencionado.
IsInclusionList Deve ser verdadeiro para os LUNs a serem incluídos durante o backup. Se for falso, os LUNs acima mencionados serão excluídos.

Assim, se o requisito é fazer backup apenas do disco do sistema operacional, então todos os discos de dados devem ser excluídos. Uma maneira mais fácil é dizer que nenhum disco de dados deve ser incluído. Portanto, a lista de LUNs do disco estará vazia e a IsInclusionList será true. Da mesma forma, pense em qual é a maneira mais fácil de selecionar um subconjunto: alguns discos devem ser sempre excluídos ou alguns discos devem sempre ser incluídos. Escolha a lista de LUNs e o valor da variável booleana de acordo.

Acionar um backup sob demanda para uma VM do Azure protegida

Depois que uma VM do Azure é configurada para backup, os backups acontecem de acordo com a agenda da política. Você pode aguardar o primeiro backup agendado ou acionar um backup sob demanda a qualquer momento. A retenção para backups sob demanda é separada da retenção da política de backup e pode ser especificada para uma data e hora específica. Se não for especificado, presume-se que seja de 30 dias a partir do dia do acionamento do backup sob demanda.

Acionar um backup sob demanda é uma operação POST .

POST https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/backup?api-version=2016-12-01

Os {containerName} e {protectedItemName} são como construídos acima. O {fabricName} é "Azure". Para o nosso exemplo, isto traduz-se em:

POST https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;testRG;testVM/protectedItems/vm;iaasvmcontainerv2;testRG;testVM/backup?api-version=2016-12-01

Criar o corpo da solicitação para backup sob demanda

Para acionar um backup sob demanda, a seguir estão os componentes do corpo da solicitação.

Nome Tipo Description
propriedades IaaSVMBackupRequest BackupRequestResource propriedades

Para obter a lista completa de definições do corpo da solicitação e outros detalhes, consulte o documento da API REST de backups de gatilho para itens protegidos.

Exemplo de corpo de solicitação para backup sob demanda

O corpo da solicitação a seguir define as propriedades necessárias para disparar um backup para um item protegido. Se a retenção não for especificada, ela será retida por 30 dias a partir do momento do acionamento da tarefa de backup.

{
   "properties": {
    "objectType": "IaasVMBackupRequest",
    "recoveryPointExpiryTimeInUTC": "2018-12-01T02:16:20.3156909Z"
  }
}

Respostas para backup sob demanda

Acionar um backup sob demanda é uma operação assíncrona. Isso significa que essa operação cria outra operação que precisa ser rastreada separadamente.

Ele retorna duas respostas: 202 (Aceito) quando outra operação é criada e 200 (OK) quando essa operação é concluída.

Nome Tipo Description
202 Aceito Aceite

Exemplos de respostas para backup sob demanda

Depois de enviar a solicitação POST para um backup sob demanda, a resposta inicial é 202 (Aceito) com um cabeçalho de local ou Azure-async-header.

HTTP/1.1 202 Accepted
Pragma: no-cache
Retry-After: 60
Azure-AsyncOperation: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/microsoft.recoveryservices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;testVaultRG;testVM/protectedItems/vm;testRG;testVM/operationsStatus/b8daecaa-f8f5-44ed-9f18-491a9e9ba01f?api-version=2019-05-13
X-Content-Type-Options: nosniff
x-ms-request-id: 7885ca75-c7c6-43fb-a38c-c0cc437d8810
x-ms-client-request-id: 7df8e874-1d66-4f81-8e91-da2fe054811d; 7df8e874-1d66-4f81-8e91-da2fe054811d
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-writes: 1199
x-ms-correlation-request-id: 7885ca75-c7c6-43fb-a38c-c0cc437d8810
x-ms-routing-request-id: SOUTHINDIA:20180521T083541Z:7885ca75-c7c6-43fb-a38c-c0cc437d8810
Cache-Control: no-cache
Date: Mon, 21 May 2018 08:35:41 GMT
Location: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/microsoft.recoveryservices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;testVaultRG;testVM/protectedItems/vm;testRG;testVM/operationResults/b8daecaa-f8f5-44ed-9f18-491a9e9ba01f?api-version=2019-05-13
X-Powered-By: ASP.NET

Em seguida, acompanhe a operação resultante usando o cabeçalho location ou o cabeçalho Azure-AsyncOperation com um comando GET simples.

GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/microsoft.recoveryservices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;testRG;testVM/protectedItems/vm;testRG;testVM/operationsStatus/a0866047-6fc7-4ac3-ba38-fb0ae8aa550f?api-version=2019-05-13

Quando a operação for concluída, ela retornará 200 (OK) com a ID do trabalho de backup resultante no corpo da resposta.

HTTP/1.1 200 OK
Pragma: no-cache
X-Content-Type-Options: nosniff
x-ms-request-id: a8b13524-2c95-445f-b107-920806f385c1
x-ms-client-request-id: 5a63209d-3708-4e69-a75f-9499f4c8977c; 5a63209d-3708-4e69-a75f-9499f4c8977c
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-reads: 14995
x-ms-correlation-request-id: a8b13524-2c95-445f-b107-920806f385c1
x-ms-routing-request-id: SOUTHINDIA:20180521T083723Z:a8b13524-2c95-445f-b107-920806f385c1
Cache-Control: no-cache
Date: Mon, 21 May 2018 08:37:22 GMT
Server: Microsoft-IIS/8.0
X-Powered-By: ASP.NET

{
  "id": "00000000-0000-0000-0000-000000000000",
  "name": "00000000-0000-0000-0000-000000000000",
  "status": "Succeeded",
  "startTime": "2018-05-21T08:35:40.9488967Z",
  "endTime": "2018-05-21T08:35:40.9488967Z",
  "properties": {
    "objectType": "OperationStatusJobExtendedInfo",
    "jobId": "7ddead57-bcb9-4269-ac31-6a1b57588700"
  }
}

Como o trabalho de backup é uma operação de longa execução, ele precisa ser rastreado conforme explicado nos trabalhos de monitor usando o documento da API REST.

Modificar a configuração de backup para uma VM do Azure protegida

Alterar a política de proteção

Para alterar a política com a qual a VM está protegida, você pode usar o mesmo formato que habilitar a proteção). Basta fornecer o novo ID da política no corpo da solicitação e enviar a solicitação. Por exemplo: Para alterar a política de testVM de 'DefaultPolicy' para 'ProdPolicy', forneça o ID 'ProdPolicy' no corpo da solicitação.

{
  "properties": {
    "protectedItemType": "Microsoft.Compute/virtualMachines",
    "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testVM",
    "policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/microsoft.recoveryservices/vaults/testVault/backupPolicies/ProdPolicy"
  }
}

A resposta seguirá o mesmo formato mencionado para permitir a proteção

Excluindo discos durante a proteção de VM do Azure

Se já tiver sido feito backup da VM do Azure, você poderá especificar a lista de discos para backup ou exclusão alterando a política de proteção. Basta preparar a solicitação no mesmo formato de exclusão de discos durante a ativação da proteção

Importante

O corpo da solicitação acima é sempre a cópia final dos discos de dados a serem excluídos ou incluídos. Isso não adiciona à configuração anterior. Por exemplo: Se você primeiro atualizar a proteção como "excluir disco de dados 1" e, em seguida, repetir com "excluir disco de dados 2", somente o disco de dados 2 será excluído nos backups subsequentes e o disco de dados 1 será incluído. Esta é sempre a lista final que será incluída/excluída nos backups subsequentes.

Para obter a lista atual de discos excluídos ou incluídos, obtenha as informações do item protegido conforme mencionado aqui. A resposta fornecerá a lista de LUNs de disco de dados e indicará se eles estão incluídos ou excluídos.

Pare a proteção, mas mantenha os dados existentes

Para remover a proteção em uma VM protegida, mas manter os dados já armazenados em backup, remova a política no corpo da solicitação e envie a solicitação. Depois que a associação com a política é removida, os backups não são mais acionados e nenhum novo ponto de recuperação é criado.

{
  "properties": {
    "protectedItemType": "Microsoft.Compute/virtualMachines",
    "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testVM",
    "policyId": ""
  }
}

A resposta seguirá o mesmo formato mencionado para acionar um backup sob demanda. O trabalho resultante deve ser rastreado conforme explicado nos trabalhos de monitor usando o documento da API REST.

Interromper a proteção e excluir dados

Para remover a proteção em uma VM protegida e excluir os dados de backup também, execute uma operação de exclusão, conforme detalhado aqui.

Interromper a proteção e excluir dados é uma operação DELETE .

DELETE https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}?api-version=2019-05-13

Os {containerName} e {protectedItemName} são como construídos acima. {fabricName} é "Azure". Para o nosso exemplo, isto traduz-se em:

DELETE https://management.azure.com//Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testVaultRG/providers/Microsoft.RecoveryServices/vaults/testVault/backupFabrics/Azure/protectionContainers/iaasvmcontainer;iaasvmcontainerv2;testRG;testVM/protectedItems/vm;iaasvmcontainerv2;testRG;testVM?api-version=2019-05-13

Respostas para proteção contra exclusão

A proteção DELETE é uma operação assíncrona. Isso significa que essa operação cria outra operação que precisa ser rastreada separadamente.

Ele retorna duas respostas: 202 (Accepted) quando outra operação é criada e 204 (NoContent) quando essa operação é concluída.

Nome Tipo Description
204 NãoConteúdo NãoConteúdo
202 Aceito Aceite

Importante

Para proteger contra cenários de exclusão acidental, há um recurso de exclusão suave disponível para o cofre dos Serviços de Recuperação. Se o estado de exclusão suave do cofre estiver definido como habilitado, a operação de exclusão não excluirá imediatamente os dados. Será conservado durante 14 dias e depois permanentemente purgado. O armazenamento não será cobrado por esse período de 14 dias. Para desfazer a operação de exclusão, consulte a seção desfazer-excluir.

Desfazer a exclusão

Desfazer a exclusão acidental é semelhante a criar o item de backup. Depois de desfazer a exclusão, o item é retido, mas nenhum backup futuro é acionado.

Desfazer exclusão é uma operação PUT que é muito semelhante a alterar a política e/ou habilitar a proteção. Basta fornecer a intenção de desfazer a exclusão com a variável isRehydrate no corpo da solicitação e enviar a solicitação. Por exemplo: Para desfazer a exclusão para testVM, o seguinte corpo de solicitação deve ser usado.

{
  "properties": {
    "protectedItemType": "Microsoft.Compute/virtualMachines",
    "protectionState": "ProtectionStopped",
    "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachines/testVM",
    "isRehydrate": true
  }
}

A resposta seguirá o mesmo formato mencionado para acionar um backup sob demanda. O trabalho resultante deve ser rastreado conforme explicado nos trabalhos de monitor usando o documento da API REST.

Próximos passos

Restaure dados de um backup de máquina virtual do Azure.

Para obter mais informações sobre as APIs REST do Backup do Azure, consulte os seguintes documentos: