你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

创建容量预留

适用于:✔️ Linux VM ✔️ Windows VM ✔️ 统一规模集 ✔️ 灵活规模集

产能预留始终作为产能预留组的一部分创建。 如果合适的组尚不存在,则第一步是创建一个组,然后创建预留。 成功创建预留后,它们立即可供虚拟机 (VM) 使用。 只要不删除预留,就会预留该容量供你使用。

格式标准的产能预留组请求应始终成功,因为它不预留任何产能。 它仅作为预留的容器。 但是,如果没有 VM 系列所需的配额,或者 Azure 没有足够的产能来满足请求,则产能预留请求可能会失败。 要么请求更多配额,要么尝试使用不同的 VM 大小、位置或区域组合。

产能预留创建完全成功,或者完全失败。 对于预留 10 个实例的请求,仅当可以分配全部 10 个实例时才会返回成功。 否则,产能预留的创建将失败。

注意事项

产能预留必须满足以下规则:

  • location 参数必须与父产能预留组的 location 属性匹配。 不匹配会导致错误。
  • VM 大小必须在目标区域中可用, 否则,预留创建将失败。
  • 订阅必须具有可用的配额,该配额等于或大于为 VM 系列和整个区域预留的 VM 数量。 如果需要,请请求更多配额
    • 如果需要满足现有配额限制,可以分阶段执行单个 VM。 创建数量较少的产能预留,然后重新分配该数量的 VM。 此方法会释放配额以增加预留的数量并添加更多 VM。 或者,如果订阅使用相同系列中的不同 VM 大小,请为第一个大小预留并重新部署 VM。 然后,向组中添加另一个大小的预留,并将新大小的 VM 重新部署到预留组。 重复此过程,直到它完成。
    • 对于规模集,需要可用的配额,除非规模集或你删除了它的 VM 实例,预留了产能,并且使用预留产能添加了规模集实例。 如果使用蓝绿部署更新了规模集,请预留产能,然后在下次更新时将新的规模集部署到预留产能。
  • 对于特定的 VM 大小,每个产能预留组只能正好有一个预留。 例如,你只能为 VM 大小 Standard_D2s_v3 创建一个产能预留。 如果尝试在同一产能预留组中为 Standard_D2s_v3 创建第二个预留,则会导致错误。 但是,可以为其他 VM 大小(例如 Standard_D4s_v3Standard_D8s_v3)在同一组中创建另一个预留。
  • 对于支持可用性区域的产能预留组,每种预留类型都是由 VM 大小和可用性区域的组合定义的。 例如,支持 Zone 1Standard_D2s_v3 的一个产能预留、Zone 2Standard_D2s_v3 的另一个产能预留以及 Zone 3Standard_D2s_v3 的第三个产能预留。

检查可用于区域中产能预留的 VM 大小

在创建产能预留之前,可以检查可用于特定区域的预留的 VM 大小。

  1. 打开 Azure 门户
  2. 在搜索栏中,输入“产能预留组”。
  3. 从选项中选择“产能预留组”。
  4. 选择创建
  5. 在“基本”选项卡上,创建一个产能预留组
    1. 选择一个“订阅” 。
    2. 选择或创建资源组。
    3. 为该组命名。
    4. 选择区域。
    5. (可选)选择“可用性区域”或允许 Azure 为你选择。
  6. 选择下一步
  7. 在“VM 大小”上,选择“查看所有大小”,检查哪些 VM 大小可用于产能预留。

创建容量预留

  1. 创建产能预留组。

    若要创建产能预留组,请在 Microsoft.Compute 提供程序上构造以下 PUT 请求:

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

    在请求正文中,添加以下参数:

    { 
      "location":"eastus"
    } 
    

    创建此组以包含美国东部位置的预留。

    以下示例中的组仅支持 Azure 区域预留,因为在创建时没有指定可用性区域。 若要创建可用性区域组,请在请求正文中传递一个额外的参数 zone

    { 
      "location":"eastus",
      "zones": ["1", "2", "3"] 
    } 
    
  2. 创建产能预留。

    若要创建预留,请在 Microsoft.Compute 提供程序上构造以下 PUT 请求:

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

    在请求正文中,添加以下参数:

    { 
      "location": "eastus", 
      "sku": { 
        "name": "Standard_D2s_v3", 
        "capacity": 5 
      }, 
     "tags": { 
            "environment": "testing" 
    } 
    

    前述请求会在美国东部位置为五个 D2s_v3 VM 大小创建一个预留。

查看你的产能预留

成功创建产能预留后,它立即可供 VM 使用。

GET  
https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/CapacityReservationGroups/{CapacityReservationGroupName}/capacityReservations/{capacityReservationName}?api-version=2021-04-01
{ 
    "name": "<CapacityReservationName>", 
    "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{CapacityReservationGroupName}/capacityReservations/{CapacityReservationName}", 
    "type": "Microsoft.Compute/capacityReservationGroups/capacityReservations", 
    "location": "eastus", 
    "tags": { 
        "environment": "testing" 
    }, 
    "sku": { 
        "name": "Standard_D2s_v3", 
        "capacity": 5 
    }, 
    "properties": { 
        "reservationId": "<reservationId>", 
         "provisioningTime": "<provisioningTime>", 
         "provisioningState": "Updating" 
    } 
} 

下一步