MIG のインスタンスの柔軟性について


マネージド インスタンス グループ(MIG)のインスタンスの柔軟性により、単一のマシンタイプに制限されることなく、グループ内の仮想マシン(VM)インスタンスに複数のマシンタイプを指定できます。マシンタイプを使用できない場合、MIG は現在のリソースの可用性に基づいて、リストから互換性のある別のタイプを自動的に選択できます。この柔軟性は、特に、さまざまなマシンタイプで動作でき、大規模な容量や需要の高いハードウェアを必要とするアプリケーションで、リソースの取得可能性を向上させるうえで役立ちます。

このドキュメントでは、MIG でのインスタンスの柔軟性の仕組みと制限事項について説明します。インスタンスの柔軟性を使用するように MIG を構成する方法については、インスタンスの柔軟性を追加するをご覧ください。

インスタンスの柔軟性

MIG は、選択したインスタンス テンプレートに基づいてすべての VM を作成します。インスタンス テンプレートでは、各 VM に使用するマシンタイプを指定します。インスタンスの柔軟性を使用すると、アプリケーションと互換性のあるすべてのマシンタイプを一覧取得できます。

次の図は、単一のマシンタイプを使用する MIG と、インスタンスの柔軟性を使用する MIG を比較しています。画像に示すように、単一のマシンタイプを使用する MIG では、インスタンス テンプレートに基づいて同一の VM が作成されます。一方、インスタンスの柔軟性のある MIG では、マシンタイプとサイズが異なる VM を作成できます。

単一のマシンタイプを使用する MIG とインスタンスの柔軟性を使用する MIG の比較

インスタンスの柔軟性の仕組み

デフォルトでは、MIG はインスタンス テンプレートの単一のマシンタイプを使用してすべての VM を作成します。MIG で複数のマシンタイプを設定するには、インスタンスの柔軟性ポリシー(instanceFlexibilityPolicy)でインスタンスの選択(instanceSelections)を構成します。

ワークロードが複数の異なるマシンタイプで動作できる場合は、アプリケーションと互換性のあるすべてのマシンタイプのリストを 1 つの instanceSelection に構成します。

  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "instance-selection-1": {
        "machineTypes": ["c3-standard-8","n2-standard-8","c2-standard-8"]
      }
    }
  }
  

インスタンス選択内のマシンタイプは同じ優先度になります。MIG でマシンタイプを特定の順序で選択する場合は、複数インスタンスの選択を構成し、それぞれにマシンタイプのリストとランクを指定して優先度を定義できます。ランクの値が小さいほど、優先度が高くなります。MIG は、優先度の高いマシンタイプを使用して VM の作成を試みます。これらの優先マシンタイプを使用できない場合、MIG は優先度の低いマシンタイプを使用します。

  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "most-preferred": {
        "rank": 1,
        "machineTypes": ["c3-standard-16","n2-standard-16","c2-standard-16"]
      },
      "least-preferred": {
        "rank": 2,
        "machineTypes": ["c3-standard-8","n2-standard-8","c2-standard-8"]
      }
    }
  }
  

ハードウェアの可用性は時間とともに変化します。また、予約を使用しない限り、特定のハードウェアが確実に利用できるわけではありません。アプリケーションは、リストされているマシンタイプのいずれかで実行できる状態である必要があります。

MIG がマシンタイプを選択する方法

複数のマシンタイプを構成すると、MIG は現在のリソースの可用性に応じてマシンタイプを選択し、未使用の予約を優先します。ランクを構成した場合、MIG はまず優先順位を考慮します。MIG は、ランク付けされたインスタンスの中でリソースの可用性を確認し、予約を行います。

リソースの可用性はゾーンによって異なるため、MIG のリージョン内のゾーンもマシンタイプの選択に影響する可能性があります。詳細については、次のセクション(MIG がゾーンを選択する方法)をご覧ください。

MIG がゾーンを選択する方法

インスタンスの柔軟性は、ターゲット分配形態が BALANCED または ANY_SINGLE_ZONE のリージョン MIG で構成できます。インスタンスの柔軟性により、リージョン MIG が VM を作成するときに、次のように選択したターゲット分配形態に応じてゾーンが選択されます。

  • BALANCED: MIG は、ゾーン間で VM をできるだけ均等に分散させるために、使用可能なリソースのあるゾーンを選択します。選択したゾーン内で、MIG はランク(構成されている場合)と使用可能な予約に基づいてマシンタイプの優先度を設定します。

  • ANY_SINGLE_ZONE: MIG は、ランクに基づいてマシンタイプが最も多く、未使用の予約からほとんどの VM を作成できるゾーンを選択します(構成されている場合)。

ターゲット分配形態の仕組みの詳細については、リージョン MIG のターゲット分配形態をご覧ください。

インスタンスの柔軟性と予約

インスタンスの柔軟性は予約で使用できます。MIG は、インスタンス テンプレートで設定した reservationAffinity フィールドに基づいて予約を使用します。

インスタンス選択に複数のマシンタイプが含まれている場合、MIG は未使用の予約があるマシンタイプを最初に選択します。MIG がマシンタイプを選択する順序を変更するには、複数のインスタンス選択を構成し、ランクを使用して優先度を指定します。MIG は、まず優先順位に従い、次にインスタンス選択内の予約を検討します。

予約の詳細については、予約の種類を選択するをご覧ください。

インスタンスの柔軟性と Spot VM

インスタンスの柔軟性のある MIG が Spot VM を使用している場合、MIG は、ワークロードの中断を最小限に抑えるため、観測されたプリエンプション レートが最も低いマシンタイプを自動的に選択します。この動作をオーバーライドするには、複数のインスタンス選択を構成し、ランクを使用して優先度を指定します。MIG は、まず優先順位に従い、次にインスタンス選択内の Spot VM の信頼性を考慮します。

Spot VM の詳細については、マネージド インスタンス グループ内の Spot VM をご覧ください。

インスタンスの柔軟性と VM の修復

デフォルトでは、MIG 内の VM に障害が発生した場合、MIG はマシンタイプを含む同じ構成を使用して VM を再作成し、VM を修復します。インスタンスの柔軟性を構成し、障害が発生した VM の元のマシンタイプが一時的に使用できない場合、MIG は指定されたインスタンスの選択に基づいて別のマシンタイプを選択します。

修復の詳細については、高可用性のための VM の修復についてをご覧ください。

ユースケース

以降のセクションでは、MIG でのインスタンスの柔軟性のユースケースについて説明します。

費用の最適化

MIG のインスタンスの柔軟性設定を次のように構成すると、MIG はインフラストラクチャに最も費用対効果の高いインスタンスを自動的にプロビジョニングできます。

  • マシンタイプ: ワークロードに最適な費用対効果を提供するマシンタイプを選択します。各マシンタイプの使用可能なサイズをすべて指定する必要はありません。ニーズに最も適した費用対効果の高いサイズのみを指定します。

  • ランク: 費用に関する優先度に従ってインスタンスの選択にランクを割り当てます。最も優先されるのは、最も費用が低いマシンタイプです。これにより、可用性に基づいて最も低コストのマシンタイプを取得できます。

  • ロケーション: MIG の作成時に、すべてのゾーンと BALANCED ターゲット分配形態を選択します。これにより、最も低コストのマシンタイプを、それらが利用可能なゾーンで取得できる可能性が高まります。

インスタンスの柔軟性設定に基づいて、MIG は、費用条件とリクエストされた合計容量を満たすように、使用可能なマシンタイプの最適な組み合わせを自動的にプロビジョニングします。これにより、特定の時点で可能な限り低い費用が保証されます。

取得可能性を改善する

MIG のインスタンスの柔軟性を構成して、取得可能性を高めることができます。そのためには、同じランク内でアプリケーションと互換性のあるマシンタイプをできるだけ多く選択します。MIG の作成時にすべてのゾーンを選択し、リソースが使用可能なゾーンを優先する BALANCED ターゲット分配形態を使用すると、リソースを取得できる可能性をさらに高めることができます。選択したマシンタイプと BALANCED シェイプに基づいて、MIG は最も利用可能な容量を見つけます。

Spot VM を取得する可能性を最大化し、プリエンプションの可能性を減らすには、同じランク内で幅広いマシンタイプを含めることをおすすめします。これにより、MIG が使用可能な容量を検索する範囲が広がり、スポット プロビジョニング モデルで可能な限り最良の結果が得られます。

パフォーマンスの最大化

パフォーマンスを最大化するように MIG インスタンスの柔軟性を構成できます。そのためには、ワークロードに最適なマシン ファミリーとサイズを選択します。次に、各ファミリー内で最も優先度の高いサイズを使用して、パフォーマンスに基づいてマシンタイプを高い順にランク付けします。ランキングとマシンタイプに基づいて、MIG は使用可能なすべてのリソースから最もパフォーマンスの高いマシンを選択します。

制限事項

インスタンスの柔軟性には次の制限があります。

次のステップ