使用Azure计算 REST API 为同一区域或跨区域 VM 创建应用程序一致性或崩溃一致性还原点。
API 参考: 还原点 | 还原点集合 | PowerShell
先决条件
创建 VM 还原点
以下部分概述了使用Azure计算 REST API 创建 VM 还原点所需的步骤。
可以在 还原点、 PowerShell 和 还原点集合 API 文档中找到详细信息。
步骤 1:创建 VM 还原点集合
还原点集合是保存 VM 的所有还原点的父资源。
调用 还原点集合 - 创建或更新 API:
PUT https://management.chinacloudapi.cn/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{collectionName}?api-version=2021-03-01
请求正文:
{
"location": "<region>",
"properties": {
"source": {
"id": "<VM Arm Id>"
},
"instantAccess": true
}
}
- 将
location设置为本地区域集合的 VM 所在区域,或将其设置为跨区域集合的目标区域(并在source.id中包含源还原点集合的 ARM 资源 ID)。 - 若要启用即时访问(预览版),可选择将
"instantAccess": true添加到properties中。 这适用于在集合中创建的所有还原点。 需要 API 版本 2025-04-01 或更高版本。 这仅适用于将 Premium SSD v2 和/或 Ultra 磁盘用作 数据 磁盘的虚拟机。
步骤 2:创建 VM 还原点
在步骤 1 中创建的集合中,调用 还原点 — 创建 API:
PUT https://management.chinacloudapi.cn/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{collectionName}/restorePoints/{restorePointName}?api-version=2021-03-01
请求正文:
{
"name": "<restorePointName>",
"properties": {
"instantAccessDurationMinutes": 120,
"provisioningState": "Succeeded",
}
}
注意: instantAccessDurationMinutes 是一个可选参数。 默认值为 300 (5 小时)。 可以设置为较低的值,但不大于 300。 这适用于将来的还原点,不适用于已创建的现有还原点。
密钥请求正文属性:
| 属性 | Description |
|---|---|
consistencyMode |
为与应用程序保持一致而省略(默认) 将其设置为 CrashConsistent 以创建崩溃一致性还原点。 |
excludeDisks |
Optional. 要从还原点中排除的磁盘标识符数组,以减少存储成本。 |
instantAccessDurationMinutes |
Optional. (仅限即时访问) 即时访问的持续时间(以分钟为单位)。 有效范围:60-300。 默认值:300 分钟(5 小时)。 |
步骤 3:跟踪 VM 还原点创建的状态
本地还原点 在几秒钟内完成。 检查还原点上的 provisioningState:其状态会从 Creating 变为 Succeeded(或 Failed)。
跨区域还原点是一项长时间运行的操作。 使用 $expand=instanceView 轮询 还原点 — 获取 API,以检查各磁盘的复制进度(completionPercent)。 仅当所有磁盘还原点完成复制后,还原点才可用。
GET https://management.chinacloudapi.cn/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{collectionName}/restorePoints/{restorePointName}?$expand=instanceView&api-version=2021-03-01
快照访问状态: 如果集合已启用即时访问,则与 instanceView 相同的 GET 响应包括 snapshotAccessState 每个磁盘还原点。 状态 InstantAccess 或 AvailableWithInstantAccess 表示还原点已准备好快速还原磁盘。
步骤 4:禁用 InstantAccess
使用以下 REST API 调用在 VM 上禁用 IA。
PATCH https://management.chinacloudapi.cn/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/restorePointCollections/{restorePointCollectionName}?api-version=2025-04-01
请求正文:
{
"location": "<region>",
"properties": {
"source": {
"id": "<VM Arm Id>"
},
"instantAccess": false
}
}
后续步骤
- 详细了解 如何管理还原点。
- 使用 Azure 门户、CLI或 PowerShell 创建还原点。
- 了解更多关于 Azure 中虚拟机的备份和还原选项。