VM の拡張機能の詳細とステータスを表示する

読み取り専用の拡張機能状態の list メソッドと get メソッドを使用すると、各マシンに接続することなく、各 VM インスタンスにインストールされている拡張機能のランタイム ステータスを表示できます。拡張機能ポリシーを使用すると、1 つの VM に異なるポリシーによって複数の拡張機能がインストールされることがあります。extension-state メソッドを使用すると、インストールされている各拡張機能の最終的な有効な構成と管理ポリシーを確認できます。また、予期しない拡張機能がインストールされた場合や、インスタンスで拡張機能が失敗した場合のトラブルシューティングに役立ちます。

拡張機能の詳細とステータス情報について

VM 拡張機能を VM にインストールするには、組織、フォルダ、プロジェクトのいずれかのレベルでグローバルまたはゾーンの拡張機能ポリシーを作成します。1 つのポリシーで 1 つの VM に複数の拡張機能をインストールできます。また、リソース階層全体で複数のポリシーを同じ VM に適用できます。

読み取り専用の extension-state メソッドを使用すると、VM 上のすべての拡張機能の状態を一覧表示して、インストールされているすべての拡張機能の最終的な有効な構成とランタイム ステータスを確認できます。返される情報には、各拡張機能のアクティブなバージョン、適用状態、健全性ステータス、管理ポリシーの識別子が表示されます。

VM 拡張機能とバージョンを表示する

Google Cloud CLI または Compute Engine API を使用して、インストールされている VM 拡張機能の詳細を表示できます。このドキュメントでは、gcloud の使用方法について説明します。Compute Engine API を使用して拡張機能の状態を表示する方法については、インスタンスの MV 拡張機能の状態を表示するをご覧ください。

拡張機能の詳細を表示するために必要な IAM 権限

プロジェクト、フォルダ、または組織レベルから、インストールされている拡張機能とそのバージョンに関する情報を表示するために必要なロールを確認するには、次のいずれかのレベルを選択します。

プロジェクト

プロジェクト レベルでゾーンまたはグローバル VM 拡張機能ポリシーを表示するために必要な権限を取得するには、プロジェクトに対する Compute VM 拡張機能ポリシー閲覧者(roles/compute.vmExtensionPolicyViewer)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。

この事前定義ロールには、プロジェクト レベルでゾーンまたはグローバル VM 拡張機能ポリシーを表示するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

プロジェクト レベルでゾーンまたはグローバル VM 拡張機能ポリシーを表示するには、次の権限が必要です。

  • インスタンス上の特定の VM 拡張機能の説明を取得する: compute.vmExtensions.get
  • インスタンス上のすべての VM 拡張機能を一覧表示する: compute.vmExtensions.list

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

フォルダ

フォルダレベルの拡張機能ポリシーはプレビュー版で利用できます。

フォルダレベルでゾーンまたはグローバル VM 拡張機能ポリシーを表示するために必要な権限を取得するには、フォルダに対するフォルダレベルの Compute VM 拡張機能ポリシー閲覧者(roles/compute.folderVmExtensionPolicyViewer)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。

この事前定義ロールには、フォルダレベルでゾーンまたはグローバル VM 拡張機能ポリシーを表示するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

フォルダレベルでゾーンまたはグローバル VM 拡張機能ポリシーを表示するには、次の権限が必要です。

  • インスタンス上の特定の VM 拡張機能の説明を取得する: compute.folderVmExtensions.get
  • インスタンス上のすべての VM 拡張機能を一覧表示する: compute.folderVmExtensions.list

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

組織

組織レベルの拡張機能ポリシーはプレビュー版で利用できます。

組織レベルでゾーンまたはグローバル VM 拡張機能ポリシーを表示するために必要な権限を取得するには、組織に対する組織レベルの Compute VM 拡張機能ポリシー閲覧者(roles/compute.orgVmExtensionPolicyViewer)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。

この事前定義ロールには、組織レベルでゾーンまたはグローバル VM 拡張機能ポリシーを表示するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

組織レベルでゾーンまたはグローバル VM 拡張機能ポリシーを表示するには、次の権限が必要です。

  • インスタンス上の特定の VM 拡張機能の説明を取得する: compute.orgVmExtensions.get
  • インスタンス上のすべての VM 拡張機能を一覧表示する: compute.orgVmExtensions.list

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

Compute Engine の IAM ロールと権限の詳細については、Compute Engine のロールと権限をご覧ください。

VM 拡張機能とバージョンを一覧表示する

プロジェクト、フォルダ、または組織内のゾーン間またはグローバルで VM Extension Manager によって管理されている VM 拡張機能とバージョンを一覧表示するには、次のいずれかのオプションを選択します。

ゾーン

gcloud preview compute zone-vm-extension-policies extensions list コマンドを使用して、プロジェクト、フォルダ、または組織内のゾーン内の VM 拡張機能を一覧表示します。

プロジェクト レベル

gcloud preview compute zone-vm-extension-policies extensions list \
  --project=PROJECT_ID \
  --zone=ZONE

コマンドの次の変数を置き換えます。

  • PROJECT_ID: プロジェクトの ID。
  • ZONE: ターゲット ゾーン(例: us-central1-f)。
フォルダレベルと組織レベル

フォルダレベルまたは組織レベルで上記のタスクを実行するには、次のいずれかの変更を加えて同じコマンドを使用します。

  • フォルダレベルの情報の場合は、--project=PROJECT_ID オプションを --folder=folders/FOLDER_ID に置き換えます。ここで、FOLDER_ID はフォルダの数値 ID です。
  • 組織レベルの情報の場合は、--project=PROJECT_ID オプションを --organization=organizations/ORGANIZATION_ID に置き換えます。ここで、ORGANIZATION_ID は組織の数値 ID です。

グローバル

gcloud preview compute global-vm-extension-policies extensions list コマンドを使用して、プロジェクト、フォルダ、または組織内のすべてのゾーンの VM 拡張機能を一覧表示します。

プロジェクト レベル

gcloud preview compute global-vm-extension-policies extensions list \
  --project=PROJECT_ID

コマンドの次の変数を置き換えます。

  • PROJECT_ID: プロジェクトの ID。
フォルダレベルと組織レベル

フォルダレベルまたは組織レベルで上記のタスクを実行するには、次のいずれかの変更を加えて同じコマンドを使用します。

  • フォルダレベルの情報の場合は、--project=PROJECT_ID オプションを --folder=folders/FOLDER_ID に置き換えます。ここで、FOLDER_ID はフォルダの数値 ID です。
  • 組織レベルの情報の場合は、--project=PROJECT_ID オプションを --organization=organizations/ORGANIZATION_ID に置き換えます。ここで、ORGANIZATION_ID は組織の数値 ID です。

特定の VM 拡張機能に関する情報を表示する

プロジェクト、フォルダ、または組織内の単一ゾーンまたはグローバルで特定の VM 拡張機能の詳細を表示するには、次のいずれかのオプションを選択します。

ゾーン

gcloud preview compute zone-vm-extension-policies extensions describe コマンドを使用して、プロジェクト、フォルダ、または組織内のゾーンにある特定の VM 拡張機能の詳細を表示します。

プロジェクト レベル

gcloud preview compute zone-vm-extension-policies extensions describe EXTENSION_NAME \
  --project=PROJECT_ID \
  --zone=ZONE

コマンドの次の変数を置き換えます。

  • EXTENSION_NAME: VM Extension Manager のサポートされている拡張機能のいずれか(例: ops-agent)。
  • PROJECT_ID: プロジェクトの ID。
  • ZONE: ターゲット ゾーン(例: us-central1-f)。
フォルダレベルと組織レベル

フォルダレベルまたは組織レベルで上記のタスクを実行するには、次のいずれかの変更を加えて同じコマンドを使用します。

  • フォルダレベルの情報の場合は、--project=PROJECT_ID オプションを --folder=folders/FOLDER_ID に置き換えます。ここで、FOLDER_ID はフォルダの数値 ID です。
  • 組織レベルの情報の場合は、--project=PROJECT_ID オプションを --organization=organizations/ORGANIZATION_ID に置き換えます。ここで、ORGANIZATION_ID は組織の数値 ID です。

グローバル

gcloud preview compute global-vm-extension-policies extensions describe コマンドを使用して、プロジェクト、フォルダ、または組織内のすべてのゾーンにわたる特定の VM 拡張機能の詳細を表示します。

プロジェクト レベル

gcloud preview compute global-vm-extension-policies extensions describe EXTENSION_NAME \
  --project=PROJECT_ID

コマンドの次の変数を置き換えます。

フォルダレベルと組織レベル

フォルダレベルまたは組織レベルで上記のタスクを実行するには、次のいずれかの変更を加えて同じコマンドを使用します。

  • フォルダレベルの情報の場合は、--project=PROJECT_ID オプションを --folder=folders/FOLDER_ID に置き換えます。ここで、FOLDER_ID はフォルダの数値 ID です。
  • 組織レベルの情報の場合は、--project=PROJECT_ID オプションを --organization=organizations/ORGANIZATION_ID に置き換えます。ここで、ORGANIZATION_ID は組織の数値 ID です。

インスタンスの VM 拡張機能の状態を表示する

拡張機能ポリシーにより、1 つの VM に複数の拡張機能がインストールされる場合があります。有効な構成、ランタイム ステータス、その他の情報など、各拡張機能のステータスを確認するには、特定の VM の拡張機能の状態を調べます。

extension-state メソッドは、VM Extension Manager ポリシーによってインストールされ、管理されている Ops エージェント インスタンスに関する情報のみを返します。一部の VM で、他の方法でインストールされたエージェントが実行されている場合、それらのエージェントについて報告する拡張機能情報はありません。

Google Cloud CLI または Compute Engine API を使用して、VM にインストールされている拡張機能の状態を表示できます。このドキュメントでは、gcloud の使用方法について説明します。Compute Engine API を使用して拡張機能の状態を表示する方法については、インスタンスの MV 拡張機能の状態を表示するをご覧ください。

拡張機能の状態を表示するために必要な IAM 権限

インスタンスの VM 拡張機能の状態を表示するために必要な権限を取得するには、プロジェクトに対する Compute 閲覧者(roles/compute.viewer)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。

この事前定義ロールには、インスタンスの VM 拡張機能の状態を表示するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

インスタンスの VM 拡張機能の状態を表示するには、次の権限が必要です。

  • インスタンス上のすべての VM 拡張機能の状態を一覧表示する: compute.instances.listVmExtensionStates
  • インスタンス上の特定の VM 拡張機能の状態を取得する: compute.instances.getVmExtensionState

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

VM インスタンスにインストールされている拡張機能を一覧表示する

gcloud を使用して、インスタンスにインストールされているすべての VM 拡張機能を一覧表示し、現在の状態を表示するには、gcloud beta compute instances list-vm-extension-states コマンドを実行します。

gcloud beta compute instances list-vm-extension-states INSTANCE_NAME \
    --project=PROJECT_ID \
    --zone=ZONE

コマンドの次の変数を置き換えます。

  • INSTANCE_NAME: VM インスタンスの名前。
  • PROJECT_ID: プロジェクトの ID。
  • ZONE: インスタンスが配置されているゾーン(例: us-central1-f)。

このコマンドは、インストールされている各拡張機能の名前、適用状態、ヘルス ステータスを返します。拡張機能の状態を表示したときに返される値については、VM 拡張機能の状態フィールドを解釈するをご覧ください。

Compute Engine API の使用に関する情報など、VM の拡張機能の状態に関する情報を表示する方法については、インスタンスの MV 拡張機能の状態を表示するをご覧ください。

インスタンス上の特定の VM 拡張機能の状態を表示する

gcloud を使用して VM にインストールされている特定の VM 拡張機能のステータス情報を取得するには、gcloud beta compute instances get-vm-extension-state コマンドを実行します。

gcloud beta compute instances get-vm-extension-state INSTANCE_NAME \
    --project=PROJECT_ID \
    --zone=ZONE \
    --extension-name=EXTENSION_NAME

コマンドの次の変数を置き換えます。

  • INSTANCE_NAME: VM インスタンスの名前。
  • PROJECT_ID: プロジェクトの ID。
  • ZONE: インスタンスが配置されているゾーン(例: us-central1-f)。
  • EXTENSION_NAME: VM Extension Manager のサポートされている拡張機能のいずれか(例: ops-agent)。

このコマンドは、拡張機能の名前、アクティブなバージョン、健全性情報、適用情報、管理ポリシーの ID を返します。拡張機能の状態を表示したときに返される値については、VM 拡張機能の状態フィールドを解釈するをご覧ください。

Compute Engine API の使用に関する情報など、VM の拡張機能の状態に関する情報を表示する方法については、インスタンスの MV 拡張機能の状態を表示するをご覧ください。

次のステップ