Vertex AI Workbench インスタンスで予約を使用する
このドキュメントでは、Compute Engine の予約を使用して、Vertex AI Workbench インスタンスの実行に必要な仮想マシン(VM)リソースを確実に用意する方法について説明します。
予約は Compute Engine の機能です。予約を使用すると、必要なときに同じハードウェア(メモリと vCPU)とオプションのリソース(GPU とローカル SSD ディスク)を使用して VM を作成するためのリソースを確保できます。
予約を作成するときに、Compute Engine は、指定されたゾーンでリクエストされた容量が使用可能であることを確認します。使用可能な場合、Compute Engine はリソースを予約し、予約を作成します。これにより、次の処理が行われます。
予約済みリソースはすぐに使用でき、予約を削除するまで使用可能となります。
予約済みリソースは、予約が削除されるまで、実行中の VM と同じオンデマンド料金(適用される割引を含む)で課金されます。予約を使用している間、予約済みリソースの料金がすでに請求されているため VM に重複するリソース料金は発生しません。詳細については、Compute Engine ゾーンリソースの予約をご覧ください。
制限事項と要件
Vertex AI Workbench インスタンスで予約を消費する場合は、Compute Engine 予約のすべての制限が適用されます。詳細については、予約の仕組みをご覧ください。
また、Vertex AI Workbench インスタンスで予約を使用する場合は、次の制限と要件が適用されます。
予約は次のいずれかである必要があります。
- Vertex AI Workbench インスタンスと同じプロジェクト。
- Vertex AI Workbench インスタンスと同じプロジェクトと共有されます。
予約を消費するには、予約の VM プロパティが Vertex AI Workbench インスタンスと完全に一致している必要があります。たとえば、予約で
e2-standard-8
マシンタイプを指定した場合、Vertex AI Workbench インスタンスはe2-standard-8
マシンタイプも使用している場合にのみ、予約を消費できます。要件をご覧ください。
始める前に
- 予約に関する要件と制限事項を確認します。
- 共有予約の割り当て要件と制限事項を確認します。
- 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.
-
Enable the Compute Engine and Notebooks APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Compute Engine and Notebooks APIs.
-
Compute 管理者(
roles/compute.admin
) -
Notebooks 管理者(
roles/notebooks.admin
) Google Cloud コンソールで [インスタンス] ページに移動します。
[
新規作成] をクリックします。[新しいインスタンス] ダイアログで、[詳細オプション] をクリックします。
[インスタンスの作成] ダイアログの [マシンタイプ] セクションで、予約に一致するマシンタイプと GPU 構成を選択します。
[CPU プラットフォームと GPU] の [予約] メニューで、使用する予約を選択します。
[作成] をクリックします。
Vertex AI Workbench がインスタンスを作成し、自動的に起動します。インスタンスを使用する準備が整うと、Vertex AI Workbench で [JupyterLab を開く] が有効になります。
PROJECT_ID
: 実際のプロジェクト ID。LOCATION
: インスタンスが配置されているゾーンINSTANCE_NAME
: インスタンスの名前MACHINE_TYPE
: インスタンスのマシンタイプを変更します。RESERVATION_TYPE
: 予約のタイプ。RESERVATION_ANY
またはRESERVATION_SPECIFIC
にする必要があります。RESERVATION_NAME
:RESERVATION_SPECIFIC
タイプを使用する場合の予約の名前- 同じプロジェクト内の予約の場合は、予約 ID を使用できます。
- 別のプロジェクトの予約の場合は、完全な予約パスを使用する必要があります。例:
projects/PROJECT_ID/reservations/RESERVATION_NAME
Compute Engine の料金で、適用される確約利用割引(CUD)を含む Compute Engine リソース。これらの料金には、SKU に
goog-vertex-ai-product: workbench-instances
というラベルが付いています。Compute Engine の料金をご覧ください。インフラストラクチャの使用料に加えて、Vertex AI Workbench の管理手数料。Vertex AI Workbench の料金をご覧ください。
- Compute Engine の予約の詳細については、Compute Engine ゾーンリソースの予約をご覧ください。
必要なロール
Vertex AI Workbench インスタンスで予約を使用するために必要な権限を取得するには、プロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
予約を作成する
Compute Engine の予約を作成します。単一のプロジェクト予約にすることも、共有予約にすることもできます。予約はオンデマンドまたは将来の予約にできます。詳細については、予約タイプを選択するをご覧ください。
新しいインスタンスで予約を使用する
予約を使用する Vertex AI Workbench インスタンスを作成するには、 Google Cloud コンソールまたは REST API を使用します。
コンソール
予約を使用する Vertex AI Workbench インスタンスを作成するには、次の操作を行います。
REST
リクエストのデータを使用する前に、次のように置き換えます。
HTTP メソッドと URL:
POST https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances?instanceId=INSTANCE_NAME
リクエストの本文(JSON):
{ "gce_setup": { "machine_type": "MACHINE_TYPE", "reservation_affinity": { "consume_reservation_type": "RESERVATION_TYPE", "key": "compute.googleapis.com/reservation-name", "values": ["RESERVATION_NAME"] } } }
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances?instanceId=INSTANCE_NAME"
PowerShell
リクエスト本文を request.json
という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances?instanceId=INSTANCE_NAME" | Select-Object -Expand Content
詳しくは、projects.locations.instances.create
REST API のドキュメントをご覧ください。
予約の使用を停止する
予約の使用を停止するには、予約を削除します。
他のリソースで予約を引き続き使用し、既存の Vertex AI Workbench インスタンスでは予約を使用しない場合は、インスタンスを削除する必要があります。
課金
Compute Engine 予約を使用すると、次の料金が発生します。
トラブルシューティング
Vertex AI Workbench インスタンスで予約の使用に関連するエラーを診断して解決する方法については、Vertex AI Workbench インスタンスのトラブルシューティングをご覧ください。