分享方式:


透過 REST API 使用 Azure 備份來備份 Azure VM

本文將說明如何透過 REST API,使用 Azure 備份來管理 Azure VM 的備份。 第一次為先前未受保護的 Azure VM 設定保護、針對受保護的 Azure VM 觸發隨選備份,以及透過 REST API 修改已備份 VM 的備份屬性,如此處所述。 若要使用 Azure 入口網站 保護 Azure VM,請參閱這篇文章

瞭解如何 建立保存庫建立 原則 REST API 教學課程,以建立新的保存庫和原則。

假設您想要將資源群組底下的 VM testVM 保護至復原服務保存庫,此保存庫testVault存在於資源群組testVaultRG內,並具有默認原則(名為 DefaultPolicy)。testRG

使用 REST API 為未受保護的 Azure VM 設定備份

探索未受保護的 Azure VM

首先,保存庫應該能夠識別 Azure VM。 這會使用重新整理作業 \(英文\) 來觸發。 此為非同步的 POST 作業,用以確保保存庫會取得目前訂閱中所有受保護 VM 的最新清單,並進行「快取」。 一旦「快取」VM 之後,復原服務將能存取該 VM 並保護它。

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

POST URI 具有 {subscriptionId}{vaultName}{vaultresourceGroupName}{fabricName} 參數。 {fabricName} 為 "Azure"。 根據我們的範例,{vaultName} 為 "testVault" 而 {vaultresourceGroupName} 為 "testVaultRG"。 由於 URI 中已指定所有必要參數,因此不需要個別的要求本文。

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

重新整理作業的回應

「重新整理」作業為非同步作業。 這表示此作業會建立另一項需要個別追蹤的作業。

其會傳回兩個回應:在建立另一項作業時傳回 202 (已接受),並在該作業完成時傳回 200 (確定)。

名稱 類型​​ 描述
204 無內容 確定,但不傳回任何內容
202 已接受 已接受

重新整理作業的範例回應:

一旦提交 POST 要求之後,就會傳回 202 (已接受) 回應。

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

使用 "Location" 標頭搭配簡單的 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

探索過所有 Azure VM 之後,GET 命令就會傳回 204 (沒有內容) 回應。 保存庫現在能夠探索訂用帳戶內的任何 VM。

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

選取相關的 Azure VM

您可以藉由在訂用帳戶下方列出所有可保護的項目 \(英文\) 來確認「快取」已完成,並在回應中找出所需的 VM。 這項作業的回應也會為您提供復原服務如何識別 VM 的相關資訊。 熟悉模式之後,您可以略過此步驟,並直接繼續 啟用保護

這項作業為 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'

GET URI 具備所有必要參數。 不需任何額外的要求本文。

取得作業的回應

名稱 類型​​ 描述
200 OK WorkloadProtectableItemResourceList 確定

取得作業的範例回應:

提交 GET 要求之後,會傳回 200 (OK) 回應。

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"
      }
    },……………..

提示

GET 回應中針對「頁面」的值數字僅限於 200。 使用 'nextLink' 欄位來取得下一組回應的 URL。

回應包含所有未受保護的 Azure VM 清單,每個 {value} 均包含 Azure 復原服務設定備份所需的所有資訊。 若要設定備份,請注意 {properties} 區段中的 {name} 欄位與 {virtualMachineId} 欄位。 從這些欄位值建構兩個變數,如下所述。

  • containerName = "iaasvmcontainer;"+{name}
  • protectedItemName = "vm;"+ {name}
  • {virtualMachineId} 稍後會在要求本文中使用

在此範例中,上述值會轉譯為:

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

啟用 Azure VM 的保護

在「快取」並「識別出」相關的 VM 之後,選取要保護的原則。 若要深入了解保存庫中的現有原則,請參閱清單原則 API \(英文\)。 然後藉由參考原則名稱來選取相關的原則 \(英文\)。 若要建立原則,請參閱建立原則教學課程。 下列範例中已選取 "DefaultPolicy"。

啟用保護是建立「受保護的項目」的非同步 PUT 作業。

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

{containerName}{protectedItemName} 如上述所建構的。 {fabricName} 為 "Azure"。 針對我們的範例,這會轉譯為:

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

建立要求本文

若要建立受保護的項目,以下是要求本文的元件。

名稱 類型​​ 描述
內容 AzureIaaSVMProtectedItem ProtectedItem 資源屬性

如需要求本文的完整定義清單及其他詳細資訊,請參閱建立受保護的項目 REST API 文件 \(英文\)。

範例要求本文

下列要求本文會定義建立受保護的項目所需的屬性。

{
  "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"
  }
}

{sourceResourceId} 是上述來自清單可保護項目之回應{virtualMachineId}。 建立受保護專案作業 @01011011的响应

建立受保護項目作業的回應

受保護項目的建立是非同步作業。 這表示此作業會建立另一項需要個別追蹤的作業。

其會傳回兩個回應:在建立另一項作業時傳回 202 (已接受),並在該作業完成時傳回 200 (確定)。

名稱 類型​​ 描述
200 OK ProtectedItemResource 確定
202 已接受 已接受

建立受保護專案作業的範例回應:

一旦提交 PUT 要求以建立或更新受保護的項目之後,初始回應會是 202 (已接受) 並具備位置標頭或 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

然後,使用位置標頭或 Azure-AsyncOperation 標頭搭配簡單的 GET 命令,來追蹤所產生的作業。

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

當作業完成時,它會在回應本文中傳回 200 (確定) 以及受保護的項目內容。

{
  "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"
  }
}

如此可確定針對 VM 啟用該保護,並根據原則排程觸發第一個備份。

排除 Azure VM 備份中的磁碟

Azure 備份 也提供一種方式,選擇性地備份 Azure VM 中的磁碟子集。 詳細資料請參閱此處。 如果您想要在啟用保護期間選擇性地備份少數磁碟,下列代碼段應該是 啟用保護期間的要求本文。

{
"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
        }
    }
}
}

在上述要求主體中,[擴充屬性] 區段中提供的磁碟清單將會是備份範圍。

屬性
diskLunList 磁碟 LUN 清單是「資料磁碟 LUN」的清單。 作業系統磁碟一律會進行備份,而且不需要提及
IsInclusionList 應設為 true,才會在備份期間包含 LUN。 如果為 false,則會排除上述 LUN。

因此,如果需求是只備份 OS 磁碟, 則應該排除所有數據 磁碟。 簡而言之,不應包含任何資料磁碟。 因此磁碟 LUN 清單會空白,而 IsInclusionList 會是 true。 同樣地,您也可以考慮更簡單的子集選取方法:一律排除幾個磁碟,或一律包含一些磁碟。 選擇對應的 LUN 清單和布林值變數值。

針對受保護的 Azure VM 觸發隨選備份

Azure VM 備份設定完成後,就會按照原則排程進行備份。 您可以等候第一個排定的備份,或隨時觸發隨選備份。 隨選備份的保留期與備份原則的保留期不同,且可指定為特定的日期時間。 如果未指定,即會假設為從觸發隨選備份當日起算的 30 天。

觸發隨選備份為 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

{containerName}{protectedItemName}上述所建構的。 {fabricName} 為 "Azure"。 針對我們的範例,這會轉譯為:

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

建立隨選備份的要求本文

若要觸發隨選備份,以下是要求本文的元件。

名稱 類型​​ 描述
內容 IaaSVMBackupRequest BackupRequestResource 屬性

如需要求本文的完整定義清單及其他詳細資訊,請參閱觸發受保護項目的備份 REST API 文件 \(英文\)。

隨選備份的範例要求本文

下列要求本文會定義觸發受保護項目之備份所需的屬性。 如果未指定保留期,將會保留 30 天 (從觸發備份作業當日起算)。

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

隨選備份的回應

觸發隨選備份為非同步作業。 這表示此作業會建立另一項需要個別追蹤的作業。

其會傳回兩個回應:在建立另一項作業時傳回 202 (已接受),並在該作業完成時傳回 200 (確定)。

名稱 類型​​ 描述
202 已接受 已接受

隨選備份的範例回應

一旦提交 POST 要求以進行隨選備份之後,初始回應會是 202 (已接受) 並具備位置標頭或 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

然後,使用位置標頭或 Azure-AsyncOperation 標頭搭配簡單的 GET 命令,來追蹤所產生的作業。

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

當作業完成之後,它會在回應本文中傳回 200 (確定) 以及結果備份作業的識別碼。

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"
  }
}

由於備份作業是長時間執行的作業,因此需要加以追蹤,如使用 REST API 監視作業文件所述。

修改受保護 Azure VM 的備份設定

變更保護原則

若要變更 VM 受到保護的原則,您可以使用與啟用保護相同的格式。 只在要求本文中提供新的原則識別碼並提交要求。 例如:若要將 testVM 的原則從 'DefaultPolicy' 變更為 'ProdPolicy',請在要求本文中提供 'ProdPolicy' 識別碼。

{
  "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"
  }
}

回應將遵循與針對啟用保護所述相同的格式。

在 Azure VM 保護期間排除磁碟

如果 Azure VM 已經備份,您可以藉由變更保護原則來指定要備份或排除的磁碟清單。 您只需要準備與在啟用保護期間排除磁碟相同格式的要求即可

重要

上述要求本文一律是要排除或納入的資料磁碟最終複本。 這不會新增至先前的設定。 例如:如果您第一次將保護更新為「排除資料磁碟 1」,然後再次更新為「排除資料磁碟 2」,則在後續的備份中「只會排除資料磁碟 2」,並包含資料磁碟 1。 此清單一律是將在後續備份中包含/排除的最終清單。

若要取得已排除或包含的目前磁碟清單,請從此處取得受保護的項目資訊。 回應會提供數據磁碟 LUN 的清單,並指出是否包含或排除它們。

停止保護,但保留現有資料

若要在受保護的 VM 上移除保護,但保留已經備份的資料,請在要求本文中移除原則並提交要求。 移除與原則的關聯之後,就不會再觸發備份,而且不會建立任何新的復原點。

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

回應將遵循與針對觸發隨選備份所述相同的格式。 您應該追蹤結果作業,如使用 REST API 監視作業文件所述。

停止保護並刪除資料

若要在受保護的 VM 上移除保護,同時也要刪除備份資料,請執行刪除作業,如此處所詳述。

停止保護並刪除資料為 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

{containerName}{protectedItemName}上述所建構的。 {fabricName} 是 "Azure"。 針對我們的範例,這會轉譯為:

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

對刪除保護的回應

DELETE 作業為非同步作業。 這表示此作業會建立另一項需要個別追蹤的作業。

它會傳回兩個回應:建立另一個作業時為 202(已接受),並在該作業完成時傳回 204 (NoContent)。

名稱 類型​​ 描述
204 NoContent NoContent
202 已接受 已接受

重要

為了防止意外刪除的情況,復原服務保存庫提供虛刪除功能。 如果保存庫的虛刪除狀態設定為已啟用,則刪除作業將不會立即刪除資料。 刪除的資料會保留 14 天,接著再永久清除。 您不需支付這 14 天期間的儲存體費用。 若要復原刪除操作,請參閱復原刪除一節

復原刪除

復原意外刪除類似於建立備份項目。 復原刪除之後,會保留專案,但不會觸發未來的備份。

復原刪除是 PUT 作業,非常類似於變更原則及/或啟用保護。 您只需在要求主體中使用變數 isRehydrate 提出復原刪除的意圖,然後提交要求即可。 例如:若要復原 testVM 的刪除,則應使用下列要求主體。

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

回應將遵循與針對觸發隨選備份所述相同的格式。 您應該追蹤結果作業,如使用 REST API 監視作業文件所述。

下一步

從 Azure 虛擬機器備份還原資料

如需 Azure 備份 REST API 的詳細資訊,請參閱下列文件: