プレースメント ポリシーを表示する


このドキュメントでは、プレースメント ポリシーを表示する方法について説明します。

プレースメント ポリシーを表示すると、プロジェクト内の既存のプレースメント ポリシーをすべて確認する、または特定のプレースメント ポリシーの構成の詳細を確認する際に有効です。

始める前に

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

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

    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 を使用して認証するをご覧ください。

必要なロール

プレースメント ポリシーを表示するために必要な権限を取得するには、プロジェクトに対する Compute インスタンス管理者(v1)roles/compute.instanceAdmin.v1)の IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

この事前定義ロールには、プレースメント ポリシーの表示に必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

プレースメント ポリシーを表示するには、次の権限が必要です。

  • プレースメント ポリシーのリストを表示する場合: compute.resourcePolicies.list on the project
  • プレースメント ポリシーの詳細を表示する場合: compute.resourcePolicies.get on the project

カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。

プレースメント ポリシーを表示する

プロジェクトで利用可能なプレースメント ポリシーを表示するには、このドキュメントで説明する次のいずれかの方法を選択します。

プレースメント ポリシーのリストを表示する

プロジェクト内のすべてのプレースメント ポリシーのリストを表示するには、次のいずれかの方法を選択します。

gcloud

プレースメント ポリシーのリストを表示するには、gcloud compute resource-policies list コマンドを使用し、--filter フラグを groupPlacementPolicy:* に設定します。

gcloud compute resource-policies list \
    --filter="groupPlacementPolicy:*"

出力は次のようになります。

NAME: example-compact-policy
DESCRIPTION:
REGION: https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1
CREATION_TIMESTAMP: 2024-05-09T02:09:24.588-07:00

NAME: example-spread-policy
DESCRIPTION:
REGION: https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1
CREATION_TIMESTAMP: 2024-05-09T02:08:13.404-07:00

フィルタ式を使用して Compute Engine リソースのリストを絞り込む方法については、gcloud topic filters コマンドをご覧ください。

REST

特定のリージョンに配置されているプレースメント ポリシーのリストを表示するには、resourcePolicies.list メソッドGET リクエストを行います。リクエスト URL に filter クエリ パラメータを含め、groupPlacementPolicy%3A* に設定します。

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies?filter=groupPlacementPolicy%3A*

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

  • PROJECT_ID: プレースメント ポリシーのリストを表示するプロジェクトの ID。

  • REGION: 1 つ以上のプレースメント ポリシーが配置されているリージョン。

出力は次のようになります。

{
  "kind": "compute#resourcePolicyList",
  "id": "projects/example-project/regions/us-central1/resourcePolicies",
  "items": [
    {
      "kind": "compute#resourcePolicy",
      "id": "5587673659722509355",
      "creationTimestamp": "2024-05-09T02:09:24.588-07:00",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/resourcePolicies/example-compact-policy",
      "region": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1",
      "name": "example-compact-policy",
      "groupPlacementPolicy": {
        "collocation": "COLLOCATED"
      },
      "status": "READY"
    },
    {
      "kind": "compute#resourcePolicy",
      "id": "5970772604948130963",
      "creationTimestamp": "2024-05-09T02:08:13.404-07:00",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/resourcePolicies/example-spread-policy",
      "region": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1",
      "name": "example-spread-policy",
      "groupPlacementPolicy": {
        "availabilityDomainCount": 5
      },
      "status": "READY"
    }
  ],
  "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/resourcePolicies",
  "etag": "-L7XCupTQ5V9__TOJ8G5RDcR2cY=/g_xt0udkOM_tU7jSL0z9I2Sivis="
}

URL エンコードを使用しているリソース ポリシーのリストを絞り込むフィルタ式を使用する場合について詳しくは、filterクエリ パラメータをご覧ください。

プレースメント ポリシーの詳細を表示する

プレースメント ポリシーの詳細を表示するには、次のいずれかの方法を選択します。

gcloud

プレースメント ポリシーの詳細を表示するには、gcloud compute resource-policies describe コマンドを使用します。

gcloud compute resource-policies describe POLICY_NAME \
    --region=REGION

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

  • POLICY_NAME: 既存のプレースメント ポリシーの名前。

  • REGION: プレースメント ポリシーが存在するリージョン。

出力は次のようになります。

  • コンパクト プレースメント ポリシーの詳細を表示する場合:

    creationTimestamp: '2024-05-09T02:09:24.588-07:00'
    groupPlacementPolicy:
      collocation: COLLOCATED
    id: '5587673659722509355'
    kind: compute#resourcePolicy
    name: example-compact-policy
    region: https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1
    selfLink: https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/resourcePolicies/example-compact-policy
    status: READY
    
  • スプレッド プレースメント ポリシーの詳細を表示する場合:

    creationTimestamp: '2024-05-09T02:08:13.404-07:00'
    groupPlacementPolicy:
      availabilityDomainCount: 5
    id: '5970772604948130963'
    kind: compute#resourcePolicy
    name: example-spread-policy
    region: https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1
    selfLink: https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/resourcePolicies/example-spread-policy
    status: READY
    

REST

プレースメント ポリシーの詳細を表示するには、resourcePolicies.get メソッドGET リクエストを行います。

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME

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

  • PROJECT_ID: 詳細を表示するプレースメント ポリシーがあるプロジェクトの ID。

  • REGION: プレースメント ポリシーが配置されているリージョン。

  • POLICY_NAME: 既存のプレースメント ポリシーの名前。

出力は次のようになります。

  • コンパクト プレースメント ポリシーの詳細を表示する場合:

    {
      "kind": "compute#resourcePolicy",
      "id": "5587673659722509355",
      "creationTimestamp": "2024-05-09T02:09:24.588-07:00",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/resourcePolicies/example-compact-policy",
      "region": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1",
      "name": "example-compact-policy",
      "groupPlacementPolicy": {
        "collocation": "COLLOCATED"
      },
      "status": "READY"
    }
    
  • スプレッド プレースメント ポリシーの詳細を表示する場合:

    {
      "kind": "compute#resourcePolicy",
      "id": "5970772604948130963",
      "creationTimestamp": "2024-05-09T02:08:13.404-07:00",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/resourcePolicies/example-spread-policy",
      "region": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1",
      "name": "example-spread-policy",
      "groupPlacementPolicy": {
        "availabilityDomainCount": 5
      },
      "status": "READY"
    }
    

次のステップ