Gemini Enterprise Agent Platform ワークベンチ インスタンスには、ノートブックの状態をモニタリングする方法がいくつか用意されています。このページでは、それぞれの方法について説明します。
ヘルス ステータスをモニタリングする方法
Agent Platform Workbench インスタンスの状態は、いくつかの方法でモニタリングできます。このページでは、次の方法について説明します。
始める前に
- Google Cloud アカウントにログインします。 Google Cloudを初めて使用する場合は、 アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Notebooks API.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Google Cloud CLI をインストールします。
-
外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。
-
gcloud CLI を初期化するには、次のコマンドを実行します。
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Notebooks API.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Google Cloud CLI をインストールします。
-
外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。
-
gcloud CLI を初期化するには、次のコマンドを実行します。
gcloud init
ゲスト属性を使用してシステムの状態を報告する
ゲスト属性を使用すると、次のコアサービスのシステム状態を報告できます。
- Docker サービス
- Docker リバース プロキシ エージェント
- Jupyter サービス
- Jupyter API
ゲスト属性は、Agent Platform Workbench インスタンスで実行中にアプリケーションから書き込み可能なカスタム メタデータです。ゲスト属性の詳細については、VM メタデータについてをご覧ください。
インスタンスがゲスト属性を使用してシステムの状態を報告する方法
notebooks-collection-agent サービスは、Python プロセスをバックグラウンドで実行します。ここでは、Agent Platform Workbench インスタンスのコアサービスのステータスを確認し、問題が検出されない場合は 1 として、または障害が検出された場合は -1 としてゲスト属性を更新します。
notebooks-collection-agent サービスを使用して、Agent Platform Workbench インスタンスの状態を報告するには、Agent Platform Workbench インスタンスを作成するときに、次のゲスト属性を有効にする必要があります。
enable-guest-attributes=TRUE: Agent Platform Workbench インスタンスでゲスト属性を有効にします。デフォルトでは、この属性はすべての新しいインスタンスで有効になります。report-event-health=TRUE: ゲスト属性にシステムのヘルスチェックの結果が記録されます。
notebooks-collection-agent サービスには、インスタンスのゲスト属性を書き込むための特別な権限は必要ありません。
システム状態のゲスト属性を有効にして Agent Platform Workbench インスタンスを作成する
システム状態のゲスト属性を使用して、Agent Platform Workbench インスタンスの状態に関するレポートを作成するには、Agent Platform Workbench インスタンスを作成するときに [システムのヘルスレポートを有効にする] チェックボックスをオンにする必要があります。
システムのヘルスレポートを有効にするには、 Google Cloud コンソールまたは Google Cloud CLI を使用します。
コンソール
Google Cloud コンソールで [インスタンス] ページに移動します。
[新規作成] をクリックします。
[新しいインスタンス] ダイアログで、[詳細オプション] をクリックします。
[インスタンスを作成] ダイアログの [詳細] セクションで、新しいインスタンスについて次の情報を入力します。
ノートブック名: 新しいインスタンスの名前を入力します。
リージョンとゾーン: 新しいインスタンスのリージョンとゾーンを選択します。最適なネットワーク パフォーマンスを得るには、地理的に最も近いリージョンを選択してください。利用可能な Agent Platform Workbench のロケーションをご覧ください。
[システムの状態] セクションの [レポート] で、[システムの状態を報告] を選択します。
インスタンス作成ダイアログの残りの部分に入力して、[作成] をクリックします。
gcloud
Cloud Shell、または Google Cloud CLI がインストールされている環境で、次の Google Cloud CLI コマンドを入力します。
gcloud workbench instances create INSTANCE_NAME \ --vm-image-project=cloud-notebooks-managed \ --vm-image-family=IMAGE_FAMILY \ --machine-type=MACHINE_TYPE \ --location=ZONE \ --metadata=enable-guest-attributes=TRUE,report-event-health=TRUE次のように置き換えます。
INSTANCE_NAME: 新しいインスタンスの名前IMAGE_FAMILY: インスタンスの作成に使用するイメージ ファミリー名MACHINE_TYPE: インスタンスの VM のマシンタイプ(例:n1-standard-4)ZONE: 新しいインスタンスを配置するゾーン(例:us-west1-a)
Google Cloud コンソールからインスタンスにアクセスします。
ゲスト属性を使用してシステムの状態をモニタリングする
関連するゲスト属性が有効になっている Agent Platform Workbench インスタンスの場合、 Google Cloud コンソール、Google Cloud CLI と Compute Engine コマンド、または Google Cloud CLI と Gemini Enterprise Agent Platform Workbench コマンドを使用して、システム状態のゲスト属性の値を取得できます。
コンソール
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 に報告する
Agent Platform Workbench インスタンスを使用すると、システム ステータスと JupyterLab の指標を収集し、Cloud Monitoring に報告できます。これらのカスタム指標は、Agent Platform Workbench インスタンスに Monitoring をインストールするときに報告される標準指標とは異なります。
Monitoring に報告されるカスタム指標は次のとおりです。
以下の Agent Platform Workbench コアサービスのシステム状態:
- Docker サービス
- Docker リバース プロキシ エージェント
- Jupyter サービス
- Jupyter API
次の JupyterLab 指標:
- カーネルの数
- ターミナルの数
- 接続の数
- セッションの数
- 最大メモリ
- ハイメモリ
- 現在のメモリ
インスタンスが Monitoring にカスタム指標を報告する方法
Monitoring にカスタム指標を報告するには、Agent Platform Workbench インスタンスの作成中に report-notebook-metrics メタデータ設定を有効にする必要があります。
また、Agent Platform Workbench インスタンスのサービス アカウントに、モニタリング指標の書き込み(roles/monitoring.metricWriter)権限が付与されていることを確認する必要もあります。詳細については、プロジェクト、フォルダ、組織へのアクセスの管理をご覧ください。
Monitoring にカスタム指標を報告する Gemini Enterprise Agent Platform ワークベンチ インスタンスを作成する
Monitoring にカスタム指標を報告するには、Agent Platform Workbench インスタンスを作成するときに、[Cloud Monitoring にカスタム指標を報告する] チェックボックスをオンにする必要があります。
Cloud Monitoring へのカスタム指標の報告を有効にするには、 Google Cloud コンソールまたは gcloud CLI を使用します。
コンソール
Google Cloud コンソールで [インスタンス] ページに移動します。
[新規作成] をクリックします。
[新しいインスタンス] ダイアログで、[詳細オプション] をクリックします。
[インスタンスを作成] ダイアログの [詳細] セクションで、新しいインスタンスについて次の情報を入力します。
- ノートブック名: 新しいインスタンスの名前を入力します。
- リージョンとゾーン: 新しいインスタンスのリージョンとゾーンを選択します。最適なネットワーク パフォーマンスを得るには、地理的に最も近いリージョンを選択してください。利用可能な Agent Platform Workbench のロケーションをご覧ください。
[システムの状態] セクションの [レポート] で、[Cloud Monitoring にカスタム指標を報告する] を選択します。
インスタンス作成ダイアログの残りの部分に入力して、[作成] をクリックします。
gcloud
Cloud Shell、または Google Cloud CLI がインストールされている環境で、次の Google Cloud CLI コマンドを入力します。
gcloud workbench instances create INSTANCE_NAME \ --vm-image-project=cloud-notebooks-managed \ --vm-image-family=IMAGE_FAMILY \ --machine-type=MACHINE_TYPE \ --location=ZONE \ --metadata=report-notebook-metrics=TRUE次のように置き換えます。
INSTANCE_NAME: 新しいインスタンスの名前IMAGE_FAMILY: インスタンスの作成に使用するイメージ ファミリー名MACHINE_TYPE: インスタンスの VM のマシンタイプ(例:n1-standard-4)ZONE: 新しいインスタンスを配置するゾーン(例:us-west1-a)
Google Cloud コンソールからインスタンスにアクセスします。
モニタリング指標の書き込み権限をサービス アカウントに付与する
新しい Agent Platform Workbench インスタンスを作成したら、Agent Platform Workbench インスタンスのサービス アカウントにモニタリング指標の書き込み権限(roles/monitoring.metricWriter)を付与します。詳細については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
Monitoring を使用してカスタム指標をモニタリングする
Agent Platform Workbench インスタンスでカスタム指標の報告が有効になっている場合は、 Google Cloud コンソールを使用してカスタム指標をモニタリングできます。
Google Cloud コンソールで [インスタンス] ページに移動します。
カスタム指標を表示するインスタンス名をクリックします。
[インスタンスの詳細] ページで、[モニタリング] タブをクリックします。インスタンスのカスタム指標を確認します。
インスタンスに Monitoring をインストールする
このオプションを使用すると、Monitoring が自動的にインストールされます。インストールには 256 MB のディスク容量が必要です。指標を Monitoring に報告するには、インターネット接続が必要です。
インスタンスによるシステム指標とアプリケーション指標の報告方法
Agent Platform Workbench インスタンスに Cloud Monitoring をインストールしてシステム指標とアプリケーション指標を報告するには、Agent Platform Workbench インスタンスを作成するときに、[Cloud Monitoring エージェントをインストールする] をオンにする必要があります。これらの指標は、report-notebook-metrics メタデータ設定が有効になっているときに報告されるカスタム指標とは異なります。
システム指標とアプリケーション指標を Monitoring に報告する Agent Platform Workbench インスタンスを作成する
Agent Platform Workbench インスタンスに Monitoring をインストールするには、 Google Cloud コンソールまたは gcloud CLI を使用します。
コンソール
Google Cloud コンソールで [インスタンス] ページに移動します。
[新規作成] をクリックします。
[新しいインスタンス] ダイアログで、[詳細オプション] をクリックします。
[インスタンスを作成] ダイアログの [詳細] セクションで、新しいインスタンスについて次の情報を入力します。
- ノートブック名: 新しいインスタンスの名前を入力します。
- リージョンとゾーン: 新しいインスタンスのリージョンとゾーンを選択します。最適なネットワーク パフォーマンスを得るには、地理的に最も近いリージョンを選択してください。利用可能な Agent Platform Workbench のロケーションをご覧ください。
[システムの状態] セクションの [レポート] で、[Cloud Monitoring をインストールする] を選択します。
インスタンス作成ダイアログの残りの部分に入力して、[作成] をクリックします。
gcloud
Cloud Shell、または Google Cloud CLI がインストールされている環境で、次の Google Cloud CLI コマンドを入力します。
gcloud workbench instances create INSTANCE_NAME \ --vm-image-project=cloud-notebooks-managed \ --vm-image-family=IMAGE_FAMILY \ --machine-type=MACHINE_TYPE \ --location=ZONE \ --metadata=install-monitoring-agent=TRUE次のように置き換えます。
INSTANCE_NAME: 新しいインスタンスの名前IMAGE_FAMILY: インスタンスの作成に使用するイメージ ファミリー名MACHINE_TYPE: インスタンスの VM のマシンタイプ(例:n1-standard-4)ZONE: 新しいインスタンスを配置するゾーン(例:us-west1-a)
Google Cloud コンソールからインスタンスにアクセスします。
Monitoring を使用してシステムとアプリケーションの指標をモニタリングする
Agent Platform Workbench インスタンスに Monitoring がインストールされている場合は、 Google Cloud コンソールを使用して、システムとアプリケーションの指標をモニタリングできます。
Google Cloud コンソールで [インスタンス] ページに移動します。
システムとアプリケーションの指標を表示するインスタンス名をクリックします。
[インスタンスの詳細] ページで、[モニタリング] タブをクリックします。インスタンスのシステム指標とアプリケーション指標を確認します。これらの指標の解釈方法については、リソース指標を確認するをご覧ください。
診断ツールを使用してシステムの状態をモニタリングする
Agent Platform Workbench インスタンスには、インスタンスのシステム状態のモニタリングに役立つ診断ツールが組み込まれています。
診断ツールで実行されるタスク
この診断ツールは次のタスクを行います。
次の Agent Platform 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
診断ツールを実行する
インスタンスでカスタム コンテナを使用している場合は、Agent Platform 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 | 失敗した Agent Platform Workbench コアサービスのステータスを復元する修復オプション |
| -s | 確認なしで実行 |
| -b |
.tar.gz ファイルを Cloud Storage バケットにアップロードします。 |
| -v | 障害発生時にツールのトラブルシューティングに使用するデバッグ オプション |
| -c | SSH をフィルタリングして、30 秒のパケット トラフィックを Agent Platform Workbench インスタンスにキャプチャします |
| -d | ログの保存先フォルダ |
| -h | ヘルプ |