複数のマシンタイプを含む MIG を作成する


このドキュメントでは、MIG に複数のマシンタイプを指定できるインスタンスの柔軟性を備えたマネージド インスタンス グループ(MIG)を作成する方法について説明します。

インスタンスの柔軟性は、特に、さまざまなマシンタイプで動作でき、大規模な容量や需要の高いハードウェアを必要とするアプリケーションで、リソースの取得可能性を向上させるうえで役立ちます。詳細については、インスタンスの柔軟性についてをご覧ください。

MIG を作成するための基本的なシナリオもご覧ください。

始める前に

  • インスタンス テンプレートを作成します。マネージド インスタンス グループを作成するために必要です。
  • まだ設定していない場合は、認証を設定します。認証とは、Google Cloud のサービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のいずれかのオプションを選択して Compute Engine に対する認証を行います。

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

      このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      詳細については、Google Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。

複数のマシンタイプを含む MIG を作成する

コンソール

  1. Google Cloud コンソールの [インスタンス グループ] ページに移動します。

    [インスタンス グループ] に移動

  2. [インスタンス グループを作成] をクリックします。

  3. [名前] フィールドに、MIG の名前を入力します。

  4. [インスタンス テンプレート] リストで、MIG に使用するインスタンス テンプレートを選択します。

  5. [インスタンス数] を指定して [インスタンスの選択] を追加する前に、次の操作を行う必要があります。

    1. 次のように場所を設定します。

      1. さらにスクロールして [ロケーション] セクションまで移動し、[複数のゾーン] を選択します。

      2. [リージョン] プルダウンと [ゾーン] プルダウンで、MIG に VM を作成するリージョンとゾーンを選択します。リージョン インスタンス テンプレートを選択した場合、そのテンプレートのリージョンがデフォルトで選択されます。

      3. [ターゲット分配形態] フィールドで、[バランス] または [任意のシングルゾーン] を選択します。

      4. 表示されたダイアログで、[インスタンスの再分配を無効にする] をクリックします。

    2. 自動スケーリングの構成を削除します。

      1. [自動スケーリング] セクションの [自動スケーリング モード] プルダウンで、[自動スケーリングの構成を削除] をクリックします。

      2. 表示されたダイアログで [削除] をクリックします。

    3. [インスタンス数] フィールドまでスクロールします。

  6. [インスタンス数] フィールドに、グループに含める VM の数を指定します。

  7. [インスタンスの選択] セクションで、[インスタンスの選択を追加] をクリックします。

    [インスタンスの選択] ウィンドウが開きます。

    1. [インスタンス選択を追加] をクリックします。

    2. [新しいインスタンスの選択] セクションで、次の操作を行います。

      1. [名前] フィールドに、インスタンス選択の名前を入力します。

      2. [マシンタイプ] セクションで [マシンタイプを追加] をクリックし、インスタンスの選択で追加するマシンタイプを選択して、[完了] をクリックします。

        インスタンス選択に追加するマシンタイプごとに、この手順を繰り返します。

      3. マシンタイプをインスタンスの選択に追加したら、[完了] をクリックします。

  8. [インスタンスの選択] ウィンドウで、[完了] をクリックします。

  9. 他のフィールドはデフォルト設定のままにするか、必要に応じて変更します。

  10. [作成] をクリックします。

gcloud

複数のマシンタイプを含むリージョン MIG を作成するには、次のように ベータ版の instance-groups managed create コマンドを使用します。

gcloud beta compute instance-groups managed create INSTANCE_GROUP_NAME \
    --region REGION \
    --size TARGET_SIZE \
    --template INSTANCE_TEMPLATE \
    --target-distribution-shape SHAPE \
    --instance-redistribution-type none \
    --instance-selection-machine-types MACHINE_TYPE,MACHINE_TYPE,...

ゾーン MIG はインスタンスの柔軟性をサポートしていません。ただし、単一ゾーンに MIG を作成する場合は、ターゲット分配形態を any-single-zone に設定します。さらに、特定のゾーンが必要な場合は、any-single-zone 分散シェイプを使用し、--zones ZONE フラグを指定します。

次のように置き換えます。

  • INSTANCE_GROUP_NAME: MIG の名前。
  • REGION: MIG を作成するリージョン。
  • TARGET_SIZE: MIG で作成および維持する VM の数。
  • INSTANCE_TEMPLATE: インスタンス テンプレートの名前。
  • SHAPE: ターゲット分配形態。値は balanced または any-single-zone です。他のターゲット分配形態はサポートされていません。
  • MACHINE_TYPE: MIG で構成するマシンタイプ(例: n1-standard-16,n2-standard-16,e2-standard-16)。

REST

複数のマシンタイプを含むリージョン MIG を作成するには、ベータ版の regionInstanceGroupManagers.insert メソッドPOST リクエストを送信します。

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers

{
  "name": "INSTANCE_GROUP_NAME",
  "targetSize": TARGET_SIZE,
  "instanceTemplate": "INSTANCE_TEMPLATE_URL",
  "distributionPolicy": {
    "targetShape": "SHAPE"
  },
  "updatePolicy": {
    "instanceRedistributionType": "NONE"
  },
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "INSTANCE_SELECTION": {
        "machineTypes": [
          "MACHINE_TYPE_1",
          "MACHINE_TYPE_2",
          ...
        ]
      }
    }
  }
}

ゾーン MIG はインスタンスの柔軟性をサポートしていません。ただし、単一ゾーンに MIG を作成する場合は、ターゲット分配形態を ANY_SINGLE_ZONE に設定します。さらに、特定のゾーンが必要な場合は、ANY_SINGLE_ZONE 分散シェイプを使用して、リクエストに distributionPolicy.zones[].zone フィールドを含めます。

次のように置き換えます。

  • PROJECT_ID: 実際のプロジェクト ID
  • REGION: MIG を作成するリージョン。
  • INSTANCE_GROUP_NAME: MIG の名前。
  • TARGET_SIZE: MIG で作成および維持する VM の数。
  • INSTANCE_TEMPLATE_URL: インスタンス テンプレートの URL。
  • SHAPE: ターゲット分配形態。値は BALANCED または ANY_SINGLE_ZONE です。他のターゲット分配形態はサポートされていません。
  • INSTANCE_SELECTION: マシンタイプのリストの名前。
  • MACHINE_TYPE: MIG で構成するマシンタイプ(例: "n1-standard-16","n2-standard-16","e2-standard-16")。

一部のマシンタイプを優先してインスタンスの柔軟性を構成する場合は、ランクを使用できます。詳細については、複数のマシンタイプと設定を使用して MIG を作成するをご覧ください。

次のステップ