Share via


容量予約を作成する

適用対象: ✔️ Linux VM ✔️ Windows VM ✔️ フレキシブル スケール セット ✔️ 均一スケール セット

容量予約は、常に容量予約グループの一部として作成されます。 最初の手順は、グループを作成してから (適切なグループがまだない場合) 予約を作成することです。 正常に作成されると、仮想マシンで予約をすぐに使用できるようになります。 容量は、予約が削除されていない限り、使用するために予約されています。

適切な形式の容量予約グループの要求は、容量が予約されないため、常に成功します。 予約のコンテナーとして機能するだけです。 ただし、VM シリーズに必要なクォータがない場合、または Azure に要求を満たすための十分な容量がない場合、容量予約の要求は失敗することがあります。 さらにクォータを要求するか、別の VM サイズ、場所、またはゾーンの組み合わせを試してください。

容量予約の作成は、完全に成功するか、失敗するかです。 10 個のインスタンスを予約する要求の場合は、10 個すべてが割り当てられた場合にのみ成功が返されます。 それ以外の場合、容量予約の作成は失敗します。

考慮事項

容量予約は、次の規則を満たしている必要があります。

  • location パラメーターは、親の容量予約グループの location プロパティと一致している必要があります。 一致していない場合は、エラーになります。
  • ターゲット リージョンで VM サイズが使用可能である必要があります。 それ以外の場合、予約の作成は失敗します。
  • サブスクリプションには、VM シリーズとそのリージョン全体に予約されている VM の数量以上の使用可能なクォータがある必要があります。 必要な場合は、さらにクォータを要求します。
    • 既存のクォータ制限を満たすために、必要に応じて VM を 1 つずつ段階的に行うことができます。 より少ない数量で容量予約を作成し、その数量の仮想マシンを再割り当てします。 これによりクォータが解放され、予約済みの数量が増え、さらに仮想マシンが追加されます。 または、同じシリーズの異なる VM サイズを使うサブスクリプションの場合は、最初のサイズ用に VM を予約して再デプロイします。 次に、別のサイズの予約をグループに追加し、新しいサイズの VM を予約グループに再デプロイします。 完了するまで繰り返します。
    • スケール セットの場合、スケール セットまたはその VM インスタンスを削除して、容量が予約され、予約容量を使ってスケール セット インスタンスが追加されない限り、使用可能なクォータが必要です。 スケール セットがブルー グリーン デプロイを使って更新される場合は、容量を予約し、次の更新時に予約容量に新しいスケール セットをデプロイします。
  • 各容量予約グループでは、特定の VM サイズに対して 1 つの予約のみを持つことができます。 たとえば、VM サイズ Standard_D2s_v3 に対して作成できる容量予約は 1 つだけです。 同じ容量予約グループの Standard_D2s_v3 に 2 つ目の予約を作成しようとすると、エラーが発生します。 ただし、Standard_D4s_v3Standard_D8s_v3 などの他の VM サイズの場合は、同じグループに別の予約を作成できます。
  • ゾーンをサポートする容量予約グループの場合、各予約の種類は、VM サイズゾーンの組み合わせによって定義されます。 たとえば、Zone 1Standard_D2s_v3 の 1 つの容量予約、Zone 2Standard_D2s_v3 の別の容量予約、および Zone 3Standard_D2s_v3 の 3 番目の容量予約がサポートされます。

リージョンの容量予約で使用可能な VM サイズの確認

容量予約を作成する前に、予約に使用できる VM サイズを特定のリージョンで確認できます。

  1. Azure portal を開きます。
  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"
    } 
    

    このグループは、米国東部の場所の予約を含めるために作成されます。

    次の例では、作成時にゾーンが指定されなかったため、グループではリージョンの予約のみがサポートされます。 ゾーンのグループを作成するには、要求本文に追加のパラメーター 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 サイズの 5 つ分の予約が作成されます。

容量予約を確認する

正常に作成されると、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" 
    } 
} 

次のステップ