このドキュメントでは、複数のマシンタイプを指定できるインスタンスの柔軟性を備えたマネージド インスタンス グループ(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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Google Cloud コンソールの [インスタンス グループ] ページに移動します。
[インスタンス グループを作成] をクリックします。
[名前] フィールドに、MIG の名前を入力します。
[インスタンス テンプレート] リストで、MIG に使用するインスタンス テンプレートを選択します。
[インスタンス数] を指定して [インスタンスの選択] を追加する前に、次の操作を行う必要があります。
次のように場所を設定します。
さらにスクロールして [ロケーション] セクションに移動し、[複数のゾーン] を選択します。
[リージョン] プルダウンと [ゾーン] プルダウンで、MIG に VM を作成するリージョンとゾーンを選択します。リージョン インスタンス テンプレートを選択した場合、そのテンプレートのリージョンがデフォルトで選択されます。
[ターゲット分配形態] フィールドで、[バランス] または [任意のシングルゾーン] を選択します。
表示されたダイアログで、[インスタンスの再分配を無効化] をクリックします。
自動スケーリングの構成を削除します。
[自動スケーリング] セクションの [自動スケーリング モード] プルダウンで、[自動スケーリングの構成を削除] をクリックします。
表示されたダイアログで [追加] をクリックします。
[インスタンス数] フィールドまでスクロールします。
[インスタンス数] フィールドに、グループに含める VM の数を指定します。
[インスタンスの選択] セクションで、[インスタンスの選択を追加] をクリックします。
[インスタンスの選択] ウィンドウが開きます。
[インスタンスの選択の追加] をクリックします。
[新しいインスタンスの選択] セクションで、次の操作を行います。
[名前] フィールドに、インスタンスの選択の名前を入力します。
[マシンタイプ] セクションで [マシンタイプを追加] をクリックし、インスタンスの選択に追加するマシンタイプを選択して、[完了] をクリックします。
インスタンスの選択に追加するマシンタイプごとに、この手順を繰り返します。
マシンタイプをインスタンスの選択に追加したら、[完了] をクリックします。
[インスタンスの選択] ウィンドウで、[完了] をクリックします。
他のフィールドはデフォルト設定のままにするか、必要に応じて変更します。
[作成] をクリックします。
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
)。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 を作成する。
- インスタンスの柔軟性を削除する。
Terraform
ローカル開発環境でこのページの Terraform サンプルを使用するには、gcloud CLI をインストールして初期化し、ユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定します。
詳細については Set up authentication for a local development environment をご覧ください。
REST
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
詳細については、 Google Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。
複数のマシンタイプを含む MIG を作成する
コンソール
gcloud
複数のマシンタイプを含むリージョン MIG を作成するには、次のように
instance-groups managed create
コマンドを使用します。gcloud 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
フラグを指定します。次のように置き換えます。
Terraform
MIG 内の各 VM に必要な VM プロパティを指定するインスタンス テンプレートをまだ作成していない場合は、インスタンス テンプレートを作成します。
複数のマシンタイプを含むリージョン MIG を作成するには、
google_compute_region_instance_group_manager
リソースを使用します。Terraform 構成を適用または削除する方法については、基本的な Terraform コマンドをご覧ください。
REST
複数のマシンタイプを含むリージョン MIG を作成するには、
regionInstanceGroupManagers.insert
メソッドにPOST
リクエストを送信します。POST https://compute.googleapis.com/compute/v1/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
フィールドを含めます。次のように置き換えます。
次のステップ
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-03-27 UTC。
-