このドキュメントでは、マネージド インスタンス グループ(MIG)からワークロード ポリシーを置き換え、削除、消去する方法について説明します。これらのアクションは、次のようなシナリオで役立ちます。
ワークロード ポリシーを置き換える: MIG 内の Compute Engine インスタンスの配置方法を変更したり、ワークロードの要件により適した別のワークロード ポリシーに切り替えたりできます。
ワークロード ポリシーを削除する: ワークロードで特定のプレースメント ルールが不要になった場合は、そのルールの使用を停止し、MIG をデフォルトのコンピューティング インスタンスのプレースメント動作に戻すことができます。
ワークロード ポリシーを削除する: 不要になったワークロード ポリシーを完全に削除できます。
ワークロード ポリシーの作成方法については、MIG 用のワークロード ポリシーを作成するをご覧ください。
制限事項
ワークロード ポリシーを MIG から置換または削除できるのは、MIG にコンピューティング インスタンスがない場合のみです。
始める前に
-
まだ設定していない場合は、認証を設定します。認証では、 Cloud de Confiance by S3NS サービスと API にアクセスするための ID が確認されます。ローカル開発環境からコードまたはサンプルを実行するには、次のいずれかのオプションを選択して Compute Engine に対する認証を行います。
このページのサンプルをどのように使うかに応じて、タブを選択してください。
gcloud
-
Google Cloud CLI をインストールし、 フェデレーション ID を使用して gcloud CLI にログインします。ログイン後、次のコマンドを実行して Google Cloud CLI を初期化します。
gcloud init
-
- デフォルトのリージョンとゾーンを設定します。
REST
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
Google Cloud CLI をインストールし、 フェデレーション ID を使用して gcloud CLI にログインします。
詳細については、 Cloud de Confiance 認証ドキュメントの REST を使用して認証するをご覧ください。
必要なロール
ワークロード ポリシーの置換、削除、または消去に必要な権限を取得するには、プロジェクトに対する Compute インスタンス管理者(v1) (roles/compute.instanceAdmin.v1)の IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。
この事前定義ロールには、ワークロード ポリシーの置換、削除、消去に必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
ワークロード ポリシーを置換、削除、または消去するには、次の権限が必要です。
-
MIG のワークロード ポリシーを置換または削除する: プロジェクトに対する
compute.instances.update -
ワークロード ポリシーを削除する: プロジェクトに対する
compute.resourcePolicies.delete
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
MIG のワークロード ポリシーを置き換える
MIG のワークロード ポリシーを別の既存のワークロード ポリシーに置き換えるには、次のいずれかのオプションを選択します。
gcloud
MIG のサイズを
0に手動で設定します。MIG のワークロード ポリシーを置き換えるには、
--workload-policyフラグを指定してgcloud compute instance-groups managed updateコマンドを使用します。MIG のタイプに基づいて、次のいずれかのフラグを指定します。ゾーン MIG のワークロード ポリシーを置き換えるには、
--zoneフラグを追加します。gcloud compute instance-groups managed update MIG_NAME \ --workload-policy=WORKLOAD_POLICY \ --zone=ZONEリージョン MIG のワークロード ポリシーを置き換えるには、
--regionフラグを含めます。gcloud compute instance-groups managed update MIG_NAME \ --workload-policy=WORKLOAD_POLICY \ --region=REGION
次のように置き換えます。
MIG_NAME: MIG の名前。WORKLOAD_POLICY: MIG に適用するワークロード ポリシーの名前。ZONE: ゾーン MIG が存在するゾーン。REGION: リージョン MIG とワークロード ポリシーが存在するリージョン。
REST
MIG のサイズを
0に手動で設定します。MIG のワークロード ポリシーを置き換えるには、次のいずれかのメソッドに
PATCHリクエストを送信します。ゾーン MIG でワークロード ポリシーを置き換えるには、
compute.instanceGroupManagers.patchメソッドにPATCHリクエストを送信します。PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME { "workloadPolicy": "projects/PROJECT_ID/regions/REGION/resourcePolicies/WORKLOAD_POLICY" }リージョン MIG のワークロード ポリシーを置き換えるには、
compute.regionInstanceGroupManagers.patchメソッドにPATCHリクエストを送信します。PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME { "workloadPolicy": "projects/PROJECT_ID/regions/REGION/resourcePolicies/WORKLOAD_POLICY" }
次のように置き換えます。
PROJECT_ID: MIG とワークロード ポリシーが存在するプロジェクトの ID。ZONE: ゾーン MIG が存在するゾーン。REGION: リージョン MIG とワークロード ポリシーが存在するリージョン。MIG_NAME: MIG の名前。WORKLOAD_POLICY: MIG に適用するワークロード ポリシーの名前。
MIG からワークロード ポリシーを削除する
MIG からワークロード ポリシーを削除するには、次のいずれかのオプションを選択します。
gcloud
MIG のサイズを
0に手動で設定します。MIG からワークロード ポリシーを削除するには、
--remove-workload-policyフラグを指定してgcloud compute instance-groups managed updateコマンドを使用します。MIG のタイプに基づいて、次のいずれかのフラグを指定します。ゾーン MIG からワークロード ポリシーを削除するには、
--zoneフラグを指定します。gcloud compute instance-groups managed update MIG_NAME \ --remove-workload-policy=WORKLOAD_POLICY \ --zone=ZONEリージョン MIG からワークロード ポリシーを削除するには、
--regionフラグを含めます。gcloud compute instance-groups managed update MIG_NAME \ --remove-workload-policy=WORKLOAD_POLICY \ --region=REGION
次のように置き換えます。
MIG_NAME: MIG の名前。WORKLOAD_POLICY: MIG に適用されるワークロード ポリシーの名前。ZONE: ゾーン MIG が存在するゾーン。REGION: リージョン MIG が存在するリージョン。
REST
MIG のサイズを
0に手動で設定します。MIG からワークロード ポリシーを削除するには、次のいずれかのメソッドに
PATCHリクエストを送信します。ゾーン MIG からワークロード ポリシーを削除するには、
compute.instanceGroupManagers.patchメソッドにリクエストを送信します。PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME { "workloadPolicy": "" }リージョン MIG からワークロード ポリシーを削除するには、
compute.regionInstanceGroupManagers.patchメソッドにリクエストを送信します。PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME { "workloadPolicy": "" }
次のように置き換えます。
PROJECT_ID: MIG とワークロード ポリシーが存在するプロジェクトの ID。ZONE: ゾーン MIG が存在するゾーン。REGION: リージョン MIG とワークロード ポリシーが存在するリージョン。MIG_NAME: MIG の名前。
ワークロード ポリシーを削除する
MIG に適用されているワークロード ポリシーは削除できません。ポリシーを削除する前に、MIG からポリシーを削除する必要があります。
ワークロード ポリシーを削除するには、次のいずれかのオプションを選択します。
gcloud
ワークロード ポリシーを削除するには、gcloud compute resource-policies delete コマンドを使用します。
gcloud compute resource-policies delete WORKLOAD_POLICY \
--region=REGION
次のように置き換えます。
WORKLOAD_POLICY: 既存のワークロード ポリシーの名前。REGION: ワークロード ポリシーが存在するリージョン。
REST
ワークロード ポリシーを削除するには、resourcePolicies.delete メソッドに DELETE リクエストを送信します。
DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME
次のように置き換えます。
PROJECT_ID: ワークロード ポリシーが存在するプロジェクトの ID。REGION: ワークロード ポリシーが存在するリージョン。POLICY_NAME: 既存のワークロード ポリシーの名前。
次のステップ
ワークロード ポリシーを表示する方法を学習する。
MIG 用のワークロード ポリシーを作成する方法を確認する。