Criar políticas de backup dos Serviços de Recuperação do Azure usando a API REST
Este artigo descreve como criar políticas para o backup da VM do Azure, do banco de dados SQL na VM do Azure, do banco de dados SAP HANA na VM do Azure e do compartilhamento de arquivos do Azure.
Saiba mais sobre como criar ou modificar uma política de backup para um cofre dos Serviços de Recuperação do Azure usando a API REST.
Criar ou atualizar uma política
Para criar ou atualizar uma política de Backup do Azure, use a seguinte operação PUT .
PUT https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}?api-version=2019-05-13
Os {policyName}
e {vaultName}
são fornecidos no URI. Informações adicionais são fornecidas no corpo do pedido.
Criar o corpo da solicitação
Se você quiser criar uma política para o backup de VM do Azure, o corpo da solicitação precisa ter os seguintes componentes:
Nome | Obrigatório | Type | Description |
---|---|---|---|
propriedades | True | ProtectionPolicy:AzureIaaSVMProtectionPolicy | Propriedades ProtectionPolicyResource |
etiquetas | Object | Etiquetas de recursos |
Para obter a lista completa de definições no corpo da solicitação, consulte o artigo da API REST da política de backup.
Exemplo de corpo da solicitação
Esta seção fornece o corpo da solicitação de exemplo para criar políticas para o backup da VM do Azure, do banco de dados SQL na VM do Azure, do banco de dados SAP HANA na VM do Azure e do compartilhamento de arquivos do Azure.
Escolha uma fonte de dados:
O corpo da solicitação a seguir define uma política de backup padrão para backups de VM do Azure.
Esta política:
- Faz um backup semanal todas as segundas, quartas, quintas-feiras às 10h00, horário padrão do Pacífico.
- Retém os backups feitos todas as segundas, quartas, quintas-feiras por uma semana.
- Retém os backups feitos todas as primeiras quartas-feiras e terceiras quintas-feiras de um mês por dois meses (substitui as condições de retenção anteriores, se houver).
- Retém os backups feitos na quarta segunda-feira e na quarta quinta-feira de fevereiro e novembro por quatro anos (substitui as condições de retenção anteriores, se houver).
{
"properties": {
"backupManagementType": "AzureIaasVM",
"timeZone": "Pacific Standard Time",
"schedulePolicy": {
"schedulePolicyType": "SimpleSchedulePolicy",
"scheduleRunFrequency": "Weekly",
"scheduleRunTimes": [
"2018-01-24T10:00:00Z"
],
"scheduleRunDays": [
"Monday",
"Wednesday",
"Thursday"
]
},
"retentionPolicy": {
"retentionPolicyType": "LongTermRetentionPolicy",
"weeklySchedule": {
"daysOfTheWeek": [
"Monday",
"Wednesday",
"Thursday"
],
"retentionTimes": [
"2018-01-24T10:00:00Z"
],
"retentionDuration": {
"count": 1,
"durationType": "Weeks"
}
},
"monthlySchedule": {
"retentionScheduleFormatType": "Weekly",
"retentionScheduleWeekly": {
"daysOfTheWeek": [
"Wednesday",
"Thursday"
],
"weeksOfTheMonth": [
"First",
"Third"
]
},
"retentionTimes": [
"2018-01-24T10:00:00Z"
],
"retentionDuration": {
"count": 2,
"durationType": "Months"
}
},
"yearlySchedule": {
"retentionScheduleFormatType": "Weekly",
"monthsOfYear": [
"February",
"November"
],
"retentionScheduleWeekly": {
"daysOfTheWeek": [
"Monday",
"Thursday"
],
"weeksOfTheMonth": [
"Fourth"
]
},
"retentionTimes": [
"2018-01-24T10:00:00Z"
],
"retentionDuration": {
"count": 4,
"durationType": "Years"
}
}
}
}
}
O corpo da solicitação a seguir define uma política de backup aprimorada para backups de VM do Azure criando vários backups por dia.
Esta política:
- Faz um backup a cada 4 horas a partir das 15:30 UTC todos os dias
- Retém instantâneo de recuperação instantânea por 7 dias
- Retém os backups diários por 180 dias
- Retém os backups feitos no domingo de cada semana por 12 semanas
- Retém os backups feitos no primeiro domingo de cada mês por 12 meses
{
"properties": {
"backupManagementType": "AzureIaasVM",
"policyType": "V2",
"instantRPDetails": {},
"schedulePolicy": {
"schedulePolicyType": "SimpleSchedulePolicyV2",
"scheduleRunFrequency": "Hourly",
"hourlySchedule": {
"interval": 4,
"scheduleWindowStartTime": "2023-02-06T15:30:00Z",
"scheduleWindowDuration": 24
}
},
"retentionPolicy": {
"retentionPolicyType": "LongTermRetentionPolicy",
"dailySchedule": {
"retentionTimes": [
"2023-02-06T15:30:00Z"
],
"retentionDuration": {
"count": 180,
"durationType": "Days"
}
},
"weeklySchedule": {
"daysOfTheWeek": [
"Sunday"
],
"retentionTimes": [
"2023-02-06T15:30:00Z"
],
"retentionDuration": {
"count": 12,
"durationType": "Weeks"
}
},
"monthlySchedule": {
"retentionScheduleFormatType": "Weekly",
"retentionScheduleWeekly": {
"daysOfTheWeek": [
"Sunday"
],
"weeksOfTheMonth": [
"First"
]
},
"retentionTimes": [
"2023-02-06T15:30:00Z"
],
"retentionDuration": {
"count": 12,
"durationType": "Months"
}
}
},
"tieringPolicy": {
"ArchivedRP": {
"tieringMode": "DoNotTier",
"duration": 0,
"durationType": "Invalid"
}
},
"instantRpRetentionRangeInDays": 7,
"timeZone": "UTC",
"protectedItemsCount": 0
}
}
Importante
Os formatos de hora para agendamento e retenção suportam apenas DateTime. Eles não suportam apenas o formato Time.
Respostas
A criação/atualização da política de backup é 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. Em seguida, 200 (OK) quando essa operação for concluída.
Nome | Tipo | Description |
---|---|---|
200 OK | Política de proteçãoRecurso | OK |
202 Aceito | Aceite |
Exemplos de respostas
Depois de enviar a solicitação PUT para criação ou atualização de política, 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/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupPolicies/testPolicy1/operations/00000000-0000-0000-0000-000000000000?api-version=2016-06-01
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/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupPolicies/testPolicy1/operationResults/00000000-0000-0000-0000-000000000000?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/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupPolicies/testPolicy1/operationResults/00000000-0000-0000-0000-000000000000?api-version=2019-05-13
Quando a operação for concluída, ela retornará 200 (OK) com o conteúdo da política no corpo da resposta.
{
"id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/testVault/backupPolicies/testPolicy1",
"name": "testPolicy1",
"type": "Microsoft.RecoveryServices/vaults/backupPolicies",
"properties": {
"backupManagementType": "AzureIaasVM",
"schedulePolicy": {
"schedulePolicyType": "SimpleSchedulePolicy",
"scheduleRunFrequency": "Weekly",
"scheduleRunDays": [
"Monday",
"Wednesday",
"Thursday"
],
"scheduleRunTimes": [
"2018-01-24T10:00:00Z"
],
"scheduleWeeklyFrequency": 0
},
"retentionPolicy": {
"retentionPolicyType": "LongTermRetentionPolicy",
"weeklySchedule": {
"daysOfTheWeek": [
"Monday",
"Wednesday",
"Thursday"
],
"retentionTimes": [
"2018-01-24T10:00:00Z"
],
"retentionDuration": {
"count": 1,
"durationType": "Weeks"
}
},
"monthlySchedule": {
"retentionScheduleFormatType": "Weekly",
"retentionScheduleWeekly": {
"daysOfTheWeek": [
"Wednesday",
"Thursday"
],
"weeksOfTheMonth": [
"First",
"Third"
]
},
"retentionTimes": [
"2018-01-24T10:00:00Z"
],
"retentionDuration": {
"count": 2,
"durationType": "Months"
}
},
"yearlySchedule": {
"retentionScheduleFormatType": "Weekly",
"monthsOfYear": [
"February",
"November"
],
"retentionScheduleWeekly": {
"daysOfTheWeek": [
"Monday",
"Thursday"
],
"weeksOfTheMonth": [
"Fourth"
]
},
"retentionTimes": [
"2018-01-24T10:00:00Z"
],
"retentionDuration": {
"count": 4,
"durationType": "Years"
}
}
},
"timeZone": "Pacific Standard Time",
"protectedItemsCount": 0
}
}
Se uma política já estiver sendo usada para proteger um item, qualquer atualização na política resultará na modificação da proteção para todos esses itens associados.
Próximos passos
Habilite a proteção para uma VM do Azure desprotegida.
Para obter mais informações sobre as APIs REST do Backup do Azure, consulte os seguintes documentos: