ヘルス ステータスをモニタリングする
Vertex AI Workbench インスタンスには、ノートブックの状態をモニタリングする方法がいくつか用意されています。このページでは、それぞれの方法について説明します。
ヘルス ステータスをモニタリングする方法
Vertex AI Workbench インスタンスの状態は、いくつかの方法でモニタリングできます。このページでは、次の方法について説明します。
準備
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
ゲスト属性を使用してシステムの状態を報告する
ゲスト属性を使用すると、次のコアサービスのシステム状態を報告できます。
- Docker サービス
- Docker リバース プロキシ エージェント
- Jupyter サービス
- Jupyter API
ゲスト属性は、Vertex AI Workbench インスタンスで実行中にアプリケーションから書き込み可能なカスタム メタデータです。ゲスト属性の詳細については、VM メタデータについてをご覧ください。
インスタンスがゲスト属性を使用してシステムの状態を報告する方法
notebooks-collection-agent
サービスは、Python プロセスをバックグラウンドで実行します。ここでは、Vertex AI Workbench インスタンスのコアサービスのステータスを確認し、問題が検出されない場合は 1
として、または障害が検出された場合は -1
としてゲスト属性を更新します。
notebooks-collection-agent
サービスを使用して、Vertex AI Workbench インスタンスの状態を報告するには、Vertex AI Workbench インスタンスを作成するときに、次のゲスト属性を有効にする必要があります。
enable-guest-attributes=TRUE
: Vertex AI Workbench インスタンスでゲスト属性を有効にします。デフォルトでは、この属性はすべての新しいインスタンスで有効になります。report-event-health=TRUE
: ゲスト属性にシステムのヘルスチェックの結果が記録されます。
notebooks-collection-agent
サービスには、インスタンスのゲスト属性を書き込むための特別な権限は必要ありません。
システム状態のゲスト属性を有効にして Vertex AI Workbench インスタンスを作成する
システム状態のゲスト属性を使用して、Vertex AI Workbench インスタンスの状態に関するレポートを作成するには、Vertex AI Workbench インスタンスを作成するときに [システムのヘルスレポートを有効にする] チェックボックスをオンにする必要があります。
システムのヘルスレポートを有効にするには、Google Cloud コンソールを使用します。
Google Cloud コンソールで、[インスタンス] ページに移動します。
[
新規作成] をクリックします。[新しいインスタンス] ダイアログで、[詳細オプション] をクリックします。
[インスタンスを作成] ダイアログの [詳細] セクションで、新しいインスタンスについて次の情報を入力します。
- ノートブック名: 新しいインスタンスの名前を入力します。
- リージョンとゾーン: 新しいインスタンスのリージョンとゾーンを選択します。最適なネットワーク パフォーマンスを得るには、地理的に最も近いリージョンを選択してください。
[システムの状態] セクションの [レポート] で、[システムの状態を報告] を選択します。
インスタンス作成ダイアログの残りの部分を入力して、[作成] をクリックします。
ゲスト属性を使用してシステムの状態をモニタリングする
関連するゲスト属性が有効になっている Vertex AI Workbench インスタンスの場合、Google Cloud コンソール、Compute Engine コマンドを使用する Google Cloud CLI、または Vertex AI Workbench コマンドを使用する Google Cloud CLI を使用して、システム状態のゲスト属性の値を取得できます。
コンソール
Google Cloud コンソールで、[インスタンス] ページに移動します。
システムの健全性ステータスを表示するインスタンス名をクリックします。
[インスタンスの詳細] ページで、[健全性] タブをクリックします。インスタンスとそのコアサービスのステータスを確認します。
Compute Engine での gcloud
gcloud compute instances get-guest-attributes INSTANCE_NAME \
--zone ZONE
次のように置き換えます。
INSTANCE_NAME
: インスタンスの名前ZONE
: インスタンスが配置されているゾーン
コアサービスが正常な状態であれば、次のような結果になります。値 1
は、障害が検出されなかったことを意味します。
NAMESPACE KEY VALUE
notebooks docker_proxy_agent_status 1
notebooks docker_status 1
notebooks jupyterlab_api_status 1
notebooks jupyterlab_status 1
notebooks system-health 1
notebooks updated 2023-06-20 17:00:00.12345
4 つのコアサービスのいずれかで障害が発生した場合、system-health はシステム障害を表す -1
値を返します。ほとんどの場合、システム障害は JupyterLab にアクセスできないことを意味します。
障害がある場合、次のような結果になります。
NAMESPACE KEY VALUE
notebooks docker_proxy_agent_status -1
notebooks docker_status -1
notebooks jupyterlab_api_status 1
notebooks jupyterlab_status 1
notebooks system-health -1
notebooks updated 2023-06-20 17:00:00.12345
カスタム指標を Monitoring に報告する
Vertex AI Workbench インスタンスを使用すると、システムのステータスと JupyterLab の指標を収集し、Cloud Monitoring に報告できます。これらのカスタム指標は、Vertex AI Workbench インスタンスに Monitoring をインストールするときに報告される標準指標とは異なります。
Monitoring に報告されるカスタム指標は次のとおりです。
以下の Vertex AI Workbench コアサービスのシステム状態:
- Docker サービス
- Docker リバース プロキシ エージェント
- Jupyter サービス
- Jupyter API
次の JupyterLab 指標:
- カーネルの数
- ターミナルの数
- 接続の数
- セッションの数
- 最大メモリ
- ハイメモリ
- 現在のメモリ
インスタンスが Monitoring にカスタム指標を報告する方法
Monitoring にカスタム指標を報告するには、Vertex AI Workbench インスタンスの作成中に report-notebook-metrics
メタデータ設定を有効にする必要があります。
また、Vertex AI Workbench インスタンスのサービス アカウントに、モニタリング指標の書き込み(roles/monitoring.metricWriter
)権限が付与されていることを確認する必要もあります。詳細については、プロジェクト、フォルダ、組織へのアクセスの管理をご覧ください。
Monitoring にカスタム指標を報告する Vertex AI Workbench インスタンスを作成する
Monitoring にカスタム指標を報告するには、Vertex AI Workbench インスタンスを作成するときに、[Cloud Monitoring にカスタム指標を報告する] チェックボックスをオンにする必要があります。
Cloud Monitoring へのカスタム指標の報告を有効にするには、Google Cloud コンソールを使用します。
Google Cloud コンソールで、[インスタンス] ページに移動します。
[
新規作成] をクリックします。[新しいインスタンス] ダイアログで、[詳細オプション] をクリックします。
[インスタンスを作成] ダイアログの [詳細] セクションで、新しいインスタンスについて次の情報を入力します。
- ノートブック名: 新しいインスタンスの名前を入力します。
- リージョンとゾーン: 新しいインスタンスのリージョンとゾーンを選択します。最適なネットワーク パフォーマンスを得るには、地理的に最も近いリージョンを選択してください。
[システムの状態] セクションの [レポート] で、[Cloud Monitoring にカスタム指標を報告する] を選択します。
インスタンス作成ダイアログの残りの部分を入力して、[作成] をクリックします。
モニタリング指標の書き込み権限をサービス アカウントに付与する
新しい Vertex AI Workbench インスタンスを作成したら、Vertex AI Workbench インスタンスのサービス アカウントにモニタリング指標の書き込み権限(roles/monitoring.metricWriter
)を付与します。詳細については、プロジェクト、フォルダ、組織へのアクセスの管理をご覧ください。
Monitoring を使用してカスタム指標をモニタリングする
Vertex AI Workbench インスタンスでカスタム指標が有効になっている場合、Google Cloud Console でそのカスタム指標をモニタリングできます。
Google Cloud コンソールで、[インスタンス] ページに移動します。
カスタム指標を表示するインスタンス名をクリックします。
[インスタンスの詳細] ページで、[モニタリング] タブをクリックします。インスタンスのカスタム指標を確認します。
インスタンスに Monitoring をインストールする
このオプションを使用すると、Monitoring が自動的にインストールされます。インストールには 256 MB のディスク容量が必要です。指標を Monitoring に報告するには、インターネット接続が必要です。
インスタンスによるシステム指標とアプリケーション指標の報告方法
Vertex AI Workbench インスタンスに Cloud Monitoring をインストールしてシステム指標とアプリケーション指標を報告するには、Vertex AI Workbench インスタンスを作成するときに、[Cloud Monitoring エージェントをインストールする] をオンにする必要があります。これらの指標は、report-notebook-metrics
メタデータ設定が有効になっているときに報告されるカスタム指標とは異なります。
システム指標とアプリケーションの指標を Monitoring に報告する Vertex AI Workbench インスタンスを作成する
Vertex AI Workbench インスタンスに Monitoring をインストールするには、Google Cloud コンソールを使用します。
Google Cloud コンソールで、[インスタンス] ページに移動します。
[
新規作成] をクリックします。[新しいインスタンス] ダイアログで、[詳細オプション] をクリックします。
[インスタンスを作成] ダイアログの [詳細] セクションで、新しいインスタンスについて次の情報を入力します。
- ノートブック名: 新しいインスタンスの名前を入力します。
- リージョンとゾーン: 新しいインスタンスのリージョンとゾーンを選択します。最適なネットワーク パフォーマンスを得るには、地理的に最も近いリージョンを選択してください。
[システムの状態] セクションの [レポート] で、[Cloud Monitoring をインストールする] を選択します。
インスタンス作成ダイアログの残りの部分を入力して、[作成] をクリックします。
Monitoring を使用してシステムとアプリケーションの指標をモニタリングする
Vertex AI Workbench インスタンスに Monitoring がインストールされている場合、Google Cloud Console を使用して、システムとアプリケーションの指標をモニタリングできます。
Google Cloud コンソールで、[インスタンス] ページに移動します。
システムとアプリケーションの指標を表示するインスタンス名をクリックします。
[インスタンスの詳細] ページで、[モニタリング] タブをクリックします。インスタンスのシステム指標とアプリケーション指標を確認します。これらの指標の解釈方法については、リソース指標を確認するをご覧ください。
診断ツールを使用してシステムの状態をモニタリングする
Vertex AI Workbench インスタンスには、インスタンスのシステム状態のモニタリングに役立つ診断ツールが組み込まれています。
診断ツールで実行されるタスク
この診断ツールは次のタスクを行います。
次の Vertex AI Workbench コアサービスのステータスを確認します。
- Docker サービス
- Docker リバース プロキシ エージェント
- Jupyter サービス
- Jupyter API
ブートディスクとデータディスクのディスク容量が 85% のしきい値を超えているかどうかを確認します。
lsof
をインストールします(インターネット接続が必要)。次のインスタンス ログを収集します。
- ネットワーク情報(
ifconfig
、netstat
) /var/log/
フォルダ内のログ- Docker のステータス情報
lsof
(開いているファイル)のデータ- Docker サービスのステータス
- プロキシ リバース エージェントのステータス
- Jupyter サービスのステータス
- Jupyter API のステータス
- プロキシ エージェント構成ファイル
- Python プロセス
- ネットワーク情報(
次のコマンドを実行して、結果を収集します。
- pip freeze
- conda list
- gcloud compute instances describe
INSTANCE_NAME
- gcloud config list
診断ツールを実行します。
インスタンスがカスタム コンテナを使用している場合は、Vertex AI Workbench カスタム コンテナのドキュメントの診断ツールを実行するをご覧ください。
カスタム コンテナを使用しないインスタンスで診断ツールを実行する手順は次のとおりです。
SSH ターミナルで、次のコマンドを実行します。
sudo -i cd /opt/deeplearning/bin/ ./diagnostic_tool.sh
診断ツールがログを収集し、
.tar.gz
ファイルに圧縮して、/tmp/
フォルダに配置します。ファイルを展開して、内容を評価します。次の内容が含まれます。
log
フォルダ:var/log/
フォルダのログreport.log
: 収集されたすべてのコマンドの出力proxy-agent-config.json
: プロキシ構成情報- Docker ログ: Docker コンテナログを含む
-json.log
ファイル
診断ツールには以下のオプションがあります。
設定 | 説明 |
---|---|
-r | 失敗した Vertex AI Workbench コアサービスのステータスを復元する修復オプション |
-s | 確認なしで実行 |
-b |
.tar.gz ファイルを Cloud Storage バケットにアップロードします。 |
-v | 障害発生時にツールのトラブルシューティングに使用するデバッグ オプション |
-c | SSH をフィルタリングして、30 秒のパケット トラフィックを Vertex AI Workbench インスタンスにキャプチャします |
-d | ログの保存先フォルダ |
-h | ヘルプ |