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


このドキュメントでは、プレースメント ポリシーを表示する方法について説明します。具体的には、特定のプロジェクトで使用可能なプレースメント ポリシーを表示する方法、またはこれらのポリシーの一つの構成の詳細を表示する方法について説明します。

始める前に

必要なロール

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

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

必要な権限

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

  • プレースメント ポリシーのリストを表示するには: プロジェクトに対する compute.resourcePolicies.list
  • プレースメント ポリシーの詳細を表示するには: プロジェクトに対する compute.resourcePolicies.get

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

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

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

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

gcloud CLI と Compute Engine API を使用して、指定したプロジェクト内のすべてのプレースメント ポリシーのリストを表示できます。

gcloud

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

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

PROJECT_ID は、プレースメント ポリシーのリストを表示するプロジェクトのプロジェクト ID に置き換えます。このフラグを省略すると、その値は現在のプロジェクトのプロジェクト ID に設定されます。

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

NAME: policy-1
DESCRIPTION:
REGION: https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1
CREATION_TIMESTAMP: 2023-07-15T02:10:51.958-08:00

NAME: policy-2
DESCRIPTION:
REGION: https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1
CREATION_TIMESTAMP: 2023-07-15T02:11:16.826-08:00

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

API

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

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": "637231102400797797",
      "creationTimestamp": "2023-07-28T04:12:11.072-07:00",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/resourcePolicies/policy-1",
      "region": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1",
      "name": "policy-1",
      "groupPlacementPolicy": {
        "collocation": "COLLOCATED"
      },
      "status": "READY"
    },
    {
      "kind": "compute#resourcePolicy",
      "id": "1228789480840827204",
      "creationTimestamp": "2023-07-15T02:10:51.958-08:00",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/resourcePolicies/policy-2",
      "region": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1",
      "name": "policy-2",
      "groupPlacementPolicy": {
        "availabilityDomainCount": 2
      },
      "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 CLI と Compute Engine API を使用して、指定したプロジェクトのプレースメント ポリシーの詳細を表示できます。

gcloud

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

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

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

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

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

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

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

creationTimestamp: '2023-07-15T02:10:51.958-08:00'
groupPlacementPolicy:
  availabilityDomainCount: 2
id: '1228789480840827204'
kind: compute#resourcePolicy
name: pp2
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-policy
status: READY

API

プレースメント ポリシーの詳細を表示するには、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": "637231102400797797",
  "creationTimestamp": "2023-07-28T04:12:11.072-07:00",
  "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/resourcePolicies/example-policy",
  "region": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1",
  "name": "policy-1",
  "groupPlacementPolicy": {
      "availabilityDomainCount": 2
  },
  "status": "READY"
}

次のステップ