このドキュメントでは、診断ツールを使用して仮想マシン(VM)インスタンスの情報を収集する方法について説明します。サポートに問い合わせる前に、ツールで収集した情報を基本的なトラブルシューティングに活用してください。
ツールは次の処理を行います。
指定した VM からのみ情報を収集します。
情報はプロジェクトにのみ保存されます。
情報を Cloud Storage バケットに 10 日間保存します。デフォルトで Cloud Storage バケットにアクセスできるのは自分だけです。
収集した情報を Google サポートと共有する前に、次のことを行ってください。
機密情報または個人を特定できる情報(PII)に関して確認します。
情報を削除またはマスキングします。
VM から収集された診断情報
この診断ツールは次の情報を収集します。
ディスク:
- ディスク、パーティション、ボリュームに関する Windows Management Instrumentation(WMI)オブジェクト情報
イベント:
- Windows イベント(アプリケーション イベントとシステム イベントを含む)
ネットワーク:
プログラム:
- プロセス、スケジュール設定されたタスク、サービス、Google Kubernetes Engine(GKE)に関する WMI オブジェクト情報
システム:
- ユーザーに関する WMI オブジェクト情報、このスクリプトを使用したリモート デスクトップ プロトコル(RDP)の設定、および bcdedit、driverquery、msinfo32、pnputil、systeminfo、メモリダンプのログからの出力
Compute Engine がこれらの情報を収集する方法については、公開リポジトリをご覧ください。
制限事項
- 診断情報は、Windows Server に基づいて作成された VM からのみ収集できます。
始める前に
-
Compute Engine は、
v20190714
以降の Windows Server イメージの公開バージョンに診断ツールをデフォルトでインストールします。Windows Server イメージのバージョンがv20190714
よりも前の場合、またはカスタム イメージを使用している場合は、googet install google-compute-engine-diagnostics
コマンドを使用してツールをインストールします。 -
まだ設定していない場合は、認証を設定します。認証とは、Google Cloud サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のように Compute Engine に対する認証を行います。
このページのサンプルをどのように使うかに応じて、タブを選択してください。
コンソール
Google Cloud コンソールを使用して Google Cloud サービスと API にアクセスする場合、認証を設定する必要はありません。
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- デフォルトのリージョンとゾーンを設定します。
REST
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
-
VM からの診断情報の収集
診断ツールを VM から直接実行するか、Google Cloud CLI を使用してリモートから実行します。Windows ベースの VM の場合、診断ツールは C:\Program Files\Google\Compute Engine\diagnostics
ディレクトリにあります。
このタスクに必要な権限
このタスクを行うには、次の権限が必要です。
-
プロジェクトに対する
roles/iam.serviceAccountTokenCreator
gcloud
プロジェクトに対する
iam.serviceAccountTokenCreator
ロールを付与します。gcloud projects add-iam-policy-binding PROJECT_ID \ --member user:EMAIL \ --role roles/iam.serviceAccountTokenCreator
以下を置き換えます。
PROJECT_ID
: プロジェクト IDEMAIL
:iam.serviceAccountTokenCreator
ロールを付与するメールアドレス。
診断情報をオブジェクトとして Cloud Storage バケットにエクスポートします。
gcloud compute diagnose export-logs VM_NAME \ [--collect-process-traces]
オプションの
--collect-process-traces
フラグは、実行中のシステムの 10 分間のトレース(CPU、ディスク、ファイル、ネットワーク アクティビティを含む)を収集するかどうかを指定します。Windows ベースの VM では、Windows パフォーマンス レコーダーが使用されます。以下を置き換えます。
VM_NAME
: 診断情報を収集する VM の名前
ログのエクスポート処理が完了するまで数分かかる場合があります。ステータスを表示するには、
gcloud compute instances get-serial-port-output
コマンドを使用します。Compute Engine は、診断情報を含むバケットの名前を
diagnostic_logs_project_PROJECT_NUMBER
という形式で設定します。バケットを表示またはダウンロードするには、gsutil tool
を使用するか、Google Cloud コンソールの [Cloud Storage] ページを使用します。
次のステップ
VM からスクリーンショットをキャプチャする方法を学習する。
Windows インスタンスのトラブルシューティングの方法を学習する。
RDP のトラブルシューティングの方法を学習する。