Создание политик резервного копирования служб восстановления Azure с помощью REST API
В этой статье описывается создание политик для резервного копирования виртуальной машины Azure, базы данных SQL в виртуальной машине Azure, базы данных SAP HANA в виртуальной машине Azure и общей папке Azure.
Дополнительные сведения о создании или изменении политики резервного копирования для хранилища служб восстановления Azure с помощью REST API.
Создание или обновление политики
Чтобы создать или обновить политику Azure Backup, используйте следующую операцию PUT .
PUT https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}?api-version=2019-05-13
{policyName}
и {vaultName}
предоставляются в URI. Дополнительные сведения предоставляются в тексте запроса.
Создание текста запроса
Если вы хотите создать политику резервного копирования виртуальных машин Azure, текст запроса должен иметь следующие компоненты:
имени | Обязательно | Type | Описание |
---|---|---|---|
свойства | Истина | ProtectionPolicy:AzureIaaSVMProtectionPolicy | Свойства ProtectionPolicyResource |
tags | Object | Теги ресурсов |
Полный список определений в тексте запроса см . в статье REST API политики резервного копирования.
Примеры текста запроса
В этом разделе приведен пример текста запроса для создания политик для резервного копирования виртуальной машины Azure, базы данных SQL в виртуальной машине Azure, базы данных SAP HANA в виртуальной машине Azure и общей папке Azure.
Выберите источник данных:
Следующий текст запроса определяет стандартную политику резервного копирования для резервных копий виртуальных машин Azure.
Эта политика выполняет следующие действия.
- создает еженедельную резервную копию каждый понедельник, среду и четверг в 10:00 по Тихоокеанскому времени США (зима);
- хранит резервные копии, создающиеся каждый понедельник, среду и четверг, в течение одной недели;
- хранит резервные копии, создающиеся каждую первую среду и третий четверг месяца в течение двух месяцев (предыдущие условия хранения перезаписываются, если они есть);
- хранит резервные копии, создающиеся в четвертый понедельник и четвертый четверг февраля и ноября в течение четырех лет (предыдущие условия хранения перезаписываются, если они есть).
{
"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"
}
}
}
}
}
Следующий текст запроса определяет расширенную политику резервного копирования для резервных копий виртуальных машин Azure, создавая несколько резервных копий в день.
Эта политика выполняет следующие действия.
- Выполняет резервное копирование каждые 4 часа с 3:30 вечера UTC каждый день
- Сохраняет моментальный снимок мгновенного восстановления в течение 7 дней
- Сохраняет ежедневные резервные копии в течение 180 дней
- Сохраняет резервные копии, сделанные в воскресенье каждую неделю в течение 12 недель
- Сохраняет резервные копии, сделанные в первое воскресенье каждого месяца в течение 12 месяцев
{
"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
}
}
Внимание
Форматы времени для расписания и хранения поддерживают только DateTime. Они не поддерживают только формат времени.
Отклики
Создание и обновление политики резервного копирования является асинхронной операцией. Это означает, что такая операция создает другую операцию, которая должна отслеживаться отдельно.
Она возвращает два ответа: 202 (принято) при создания другой операции, а затем — 200 (ОК) после завершения операции.
Имя. | Тип | Описание |
---|---|---|
200 OK | ProtectionPolicyResource | ОК |
202 — принято | Акцептировано |
Примеры ответов
После отправки запроса PUT для создания или обновления политики будет получен первоначальный ответ 202 (принято) с заголовком расположения или асинхронным заголовком Azure.
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
Затем отследите итоговую операцию, используя заголовок location или Azure-AsyncOperation с помощью простой команды GET.
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
После завершения операции он возвращает код 200 (ОК) с содержимым политики в тексте ответа.
{
"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
}
}
Если политика уже используется для защиты элемента, любое обновление в политике приведет к изменению защиты всех связанных элементов.
Следующие шаги
Включите защиту для незащищенной виртуальной машины Azure.
Дополнительные сведения о REST API Azure Backup с использованием API REST см. в следующих документах:
- Recovery Services (Службы восстановления)
- Начало работы с Azure REST API