將 VM 關聯至容量保留群組

適用於: ✔️ Windows 虛擬機器 ✔️ Linux 虛擬機器

容量保留群組可以與新的或現有的虛擬機器搭配使用。 若要深入了解容量保留,請參閱概觀文章

建立新 VM 關聯

若要將新的 VM 關聯至容量保留群組,必須明確參考群組做為虛擬機器的屬性。 此參考可保護群組中的相符保留,以供所需的應用程式與工作負載使用。

若要將 capacityReservationGroup 屬性新增至 VM,請對 Microsoft.Compute 提供者建構下列 PUT 要求:

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{VirtualMachineName}?api-version=2021-04-01

在要求本文中包含 capacityReservationGroup 屬性:

{ 
  "location": "eastus", 
  "properties": { 
    "hardwareProfile": { 
      "vmSize": "Standard_D2s_v3" 
    }, 
    … 
   "capacityReservation":{ 
    "capacityReservationGroup":{ 
        "id":"subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/CapacityReservationGroups/{CapacityReservationGroupName}" 
    } 
    "storageProfile": { 
    … 
    }, 
    "osProfile": { 
    … 
    }, 
    "networkProfile": { 
     …     
    } 
  } 
} 

建立現有 VM 的關聯

針對容量保留的初始版本,必須將虛擬機器配置給容量保留。

  • 如果尚未完成,請遵循指引來建立容量保留群組和容量保留。 或是遞增現有容量保留的數量,這樣才會有未使用的保留容量。
  • 解除配置 VM。
  • 更新 VM 上的容量保留群組屬性。
  • 重新啟動 VM。
  1. 解除配置 VM。

    PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourcegroupname}/providers/Microsoft.Compute/virtualMachines/{VirtualMachineName}/deallocate?api-version=2021-04-01
    
  2. capacityReservationGroup 屬性新增至 VM。 對 Microsoft.Compute 提供者建構下列 PUT 要求:

    PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{VirtualMachineName}?api-version=2021-04-01
    

    在要求本文中包含 capacityReservationGroup 屬性:

    {
    "location": "eastus",
    "properties": {
        "capacityReservation": {
            "capacityReservationGroup": {
                "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}"
            }
        }
    }
    }
    

檢視 VM 與執行個體檢視的關聯

設定 capacityReservationGroup 屬性之後,現在 VM 與群組之間就會有關聯。 Azure 會自動在群組中尋找相符的容量保留,並取用保留位置。 容量保留的 [執行個體檢視] 會反映 virtualMachinesAllocated 屬性中的新 VM:

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/CapacityReservationGroups/{capacityReservationGroupName}?$expand=instanceView&api-version=2021-04-01 
{
   "name":"{CapacityReservationGroupName}",
   "id":"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{CapacityReservationGroupName}",
   "type":"Microsoft.Compute/capacityReservationGroups",
   "location":"eastus",
   "properties":{
      "capacityReservations":[
         {
            "id":"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/ {CapacityReservationGroupName}/capacityReservations/{CapacityReservationName}"
         }
      ],
      "virtualMachinesAssociated":[
         {
            "id":"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{myVM}"
         }
      ],
      "instanceView":{
         "capacityReservations":[
            {
               "name":"{CapacityReservationName}",
               "utilizationInfo":{
                  "virtualMachinesAllocated":[
                     {
                        "id":"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{myVM}"
                     }
                  ]
               },
               "statuses":[
                  {
                     "code":"ProvisioningState/succeeded",
                     "level":"Info",
                     "displayStatus":"Provisioning succeeded",
                     "time":"2021-05-25T15:12:10.4165243+00:00"
                  }
               ]
            }
         ]
      }
   }
} 

下一步