ユーザー管理のノートブック インスタンスを作成する
このページでは、Google Cloud コンソールまたは Google Cloud CLI を使用して、ユーザー管理のノートブック インスタンスを作成する方法について説明します。インスタンスの作成中に、インスタンスのハードウェア、暗号化タイプ、ネットワーク、その他の詳細を構成できます。
始める前に
ユーザー管理のノートブック インスタンスを作成する前に、Google Cloud プロジェクトを準備し、そのプロジェクトで Notebooks API を有効にする必要があります。- 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.
-
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.
- ユーザー管理のノートブック インスタンスで GPU を使用する場合は、Google Cloud コンソールの [割り当て] ページで、プロジェクトに使用できる GPU が十分であることを確認してください。GPU が [割り当て] ページのリストにない場合や、さらに GPU 割り当てが必要な場合は、割り当て量の増加をリクエストしてください。Compute Engine のリソースの割り当てページの割り当て量の増加をリクエストするをご覧ください。
必要なロール
プロジェクトを作成した場合、そのプロジェクトに対するオーナー(roles/owner
)IAM ロールが付与されています。このロールには、必要な権限がすべて含まれています。このセクションをスキップして、ユーザー管理のノートブック インスタンスの作成を開始します。プロジェクトを自分で作成していない場合は、このセクションに進んでください。
Vertex AI Workbench ユーザー管理ノートブック インスタンスの作成に必要な権限がユーザー アカウントに付与されるように、プロジェクトに対する次の IAM ロールをユーザー アカウントに付与するよう管理者に依頼してください。
-
Notebooks 管理者(
roles/notebooks.admin
) -
サービス アカウント ユーザー(
roles/iam.serviceAccountUser
)
ロールの付与については、プロジェクト、フォルダ、組織へのアクセスを管理するをご覧ください。
管理者は、カスタムロールや他の事前定義ロールを使用して、必要な権限をユーザー アカウントに付与することもできます。
ユーザー管理のノートブック インスタンスを作成する
ユーザー管理ノートブック インスタンスを作成するには、Google Cloud コンソール、Google Cloud CLI、または Terraform を使用します。
コンソール
Google Cloud コンソールを使用してユーザー管理ノートブック インスタンスを作成するには、次のようにします。
Google Cloud コンソールで、[ユーザー管理のノートブック] ページに移動します。または、notebook.new(https://notebook.new)にアクセスして、次のステップをスキップします。
[
新規作成] をクリックします。[新しいインスタンス] ウィンドウが開きます。
[新しいインスタンス] ダイアログで、[詳細オプション] をクリックします。
[詳細] セクションで、新しいインスタンスについて次の情報を入力します。
- ノートブック名: 新しいインスタンスの名前を入力します。名前の先頭は英字で、それに続く最大 62 文字の英小文字、数字、ハイフン(-)で構成します。末尾は英字または数字にしてください。
- リージョンとゾーン: 新しいインスタンスのリージョンとゾーンを選択します。最適なネットワーク パフォーマンスを得るには、地理的に最も近いリージョンを選択してください。利用可能なユーザー管理ノートブックの場所をご覧ください。
- ラベル(省略可)インスタンスのカスタム Key-Value ラベルを指定します。
- タグ: 省略可。インスタンスのタグを指定します。
[環境] で、次の情報を入力します。
- オペレーティング システム: 使用するオペレーティング システムを選択します。
- 環境: 使用する環境を選択します。
- バージョン: 最新バージョンまたは以前のバージョンのユーザー管理ノートブック インスタンスを使用します。
- 起動スクリプト: 省略可。[参照] をクリックして、インスタンスの作成後に 1 回だけ実行するスクリプトを選択します。パスは、URL または Cloud Storage パスにする必要があります(例:
gs://PATH_TO_FILE/FILE_NAME
)。 - メタデータ: 省略可。インスタンスのカスタム メタデータのキーを指定します。
[マシンタイプ] に、次の情報を入力します。
- マシンタイプ: 新しいインスタンスの CPU 数と RAM 容量を選択します。Vertex AI Workbench により、選択した各マシンタイプの 1 か月あたりの費用見積もりが提示されます。
GPU: 省略可。GPU を使用する場合は、新しいインスタンスの GPU のタイプと GPU の数を選択します。GPU の種類については、Compute Engine の GPU をご覧ください。
[NVIDIA GPU ドライバを自動的にインストールする] を選択します。
Shielded VM: 省略可。以下の項目をオンまたはオフにします。
- セキュアブート
- 仮想トラステッド プラットフォーム モジュール(vTPM)
- 整合性モニタリング
アイドル状態でのシャットダウン: 省略可。
シャットダウンまでの分数を変更するには、[シャットダウンまでの非アクティブ時間(分)] フィールドで、値を 10~1440 の整数に変更します。
アイドル状態のシャットダウンをオフにするには、[アイドル状態でのシャットダウンを有効にする] をオフにします。
[ディスク] セクションで、次の情報を入力します。
ディスク: 省略可。デフォルトのブートディスクまたはデータディスクの設定を変更するには、ブートディスクの種類、ブートディスク サイズ(GB 単位)、データディスクのタイプ、データディスクのサイズ(GB 単位)を選択します。ディスクタイプの詳細については、ストレージ オプションをご覧ください。
ゴミ箱に移動: 省略可。オペレーティング システムのデフォルトのゴミ箱動作を使用するには、このチェックボックスをオンにします。デフォルトのゴミ箱動作を使用する場合、JupyterLab ユーザー インターフェースを使用して削除されたファイルは復元できますが、削除されたファイルはディスク容量を使用します。
バックアップ: 省略可。Cloud Storage のロケーションをインスタンスのデータディスクと同期するには、[参照] をクリックして Cloud Storage のロケーションを指定します。ストレージの費用については、Cloud Storage の料金をご覧ください。
暗号化: [Google が管理する暗号鍵] または [顧客管理の暗号鍵(CMEK)] を選択します。CMEK を使用するには、顧客管理の暗号鍵をご覧ください。
[ネットワーキング] セクションで、次の情報を入力します。
ネットワーキング: 現在のプロジェクトのネットワーク、またはホスト プロジェクトから共有 VPC ネットワーク(構成されている場合)を使用するように、ネットワーク オプションを調整します。ホスト プロジェクトで共有 VPC を使用している場合は、ホスト プロジェクトの Notebooks サービス エージェントに Compute ネットワーク ユーザーのロール(
roles/compute.networkUser
)を付与する必要があります。[ネットワーク] フィールドで、目的のネットワークを選択します。ネットワークで限定公開の Google アクセスが有効になっているか、インターネットにアクセスできる場合は、VPC ネットワークを選択できます。詳細については、ネットワーク構成オプションをご覧ください。
[サブネットワーク] フィールドで、目的のサブネットワークを選択します。
外部 IP アドレスを無効にするには、[外部 IP アドレスを割り当て] チェックボックスをオフにします。
プロキシ アクセスを無効にするには、[プロキシ アクセスを許可] チェックボックスをオフにします。
[IAM とセキュリティ] セクションで、次の操作を行います。
IAM とセキュリティ: インスタンスの JupyterLab インターフェースへのアクセス権を付与するには、次のいずれかを行います。
サービス アカウントを介して JupyterLab へのアクセス権を付与するには、[サービス アカウント] を選択します。
デフォルトの Compute Engine サービス アカウントを使用するには、[Use default Compute Engine service account] を選択します。
カスタム サービス アカウントを使用するには、[Use default Compute Engine service account] をクリアし、[サービス アカウントのメールアドレス] フィールドにカスタム サービス アカウントのメールアドレスを入力します。
JupyterLab インターフェースへのアクセス権を単一ユーザーに付与する手順は次のとおりです。
[シングル ユーザー] を選択し、[ユーザーのメール] フィールドに、アクセス権を付与するユーザー アカウントを入力します。指定したユーザーがインスタンスの作成者でない場合は、指定したユーザーにインスタンスのサービス アカウントに対するサービス アカウント ユーザーのロール(
roles/iam.serviceAccountUser
)を付与する必要があります。インスタンスはサービス アカウントを使用して、Google Cloud サービスと API を操作します。
デフォルトの Compute Engine サービス アカウントを使用するには、[Use default Compute Engine service account] を選択します。
カスタム サービス アカウントを使用するには、[Use default Compute Engine service account] をクリアし、[サービス アカウントのメールアドレス] フィールドにカスタム サービス アカウントのメールアドレスを入力します。
アクセス権の付与の詳細については、アクセスを管理するをご覧ください。
セキュリティ オプション: 次のチェックボックスをオンまたはオフにします。
- インスタンスに対するルートアクセス
- nbconvert
- ファイルのダウンロード
- ターミナル アクセス
[システムの状態] セクションで、次の情報を入力します。
[作成] をクリックします。
Vertex AI Workbench が、ユーザー管理ノートブック インスタンスを作成して自動的に起動します。インスタンスを使用する準備が整うと、Vertex AI Workbench で [JupyterLab を開く] リンクが有効になります。
gcloud
デフォルトでは、Google Cloud CLI により、外部 IP アドレスを使用してユーザー管理のノートブック インスタンスが作成されます。外部 IP アドレスを持たないインスタンスを作成する場合は、限定公開の Google アクセスが有効になっているサブネットを指定する必要があります。詳細については、ネットワーク構成オプションをご覧ください。
コマンドライン、Cloud Shell、または Google Cloud CLI がインストールされているターミナルからユーザー管理のノートブック インスタンスを作成するには、
gcloud notebooks instances create
コマンドを使用します。gcloud notebooks instances create INSTANCE_NAME \ --vm-image-project=deeplearning-platform-release \ --vm-image-family=VM_IMAGE_FAMILY \ --machine-type=MACHINE_TYPE \ --location=LOCATION
次のように置き換えます。
INSTANCE_NAME
: 新しいインスタンスの名前。先頭は英字で、それに続く最大 62 文字の英小文字、数字、ハイフン(-)で構成します。末尾をハイフンにすることはできません。VM_IMAGE_FAMILY
: インスタンスの作成に使用するイメージ ファミリー名MACHINE_TYPE
: インスタンスの VM のマシンタイプLOCATION
: 新しいインスタンスを配置する Google Cloud のロケーション
Google Cloud コンソールからインスタンスにアクセスします。
コマンドラインからインスタンスを作成するコマンドの詳細については、gcloud CLI のドキュメントをご覧ください。
Terraform
次のサンプルでは、google_notebooks_instance
Terraform リソースを使用して、notebooks-instance-basic
という名前の新しいユーザー管理ノートブック インスタンスを作成します。
Terraform 構成を適用または削除する方法については、基本的な Terraform コマンドをご覧ください。
ノートブックを開く
ユーザー管理のノートブック インスタンスを開くには、次の手順を行います。Google Cloud Console で、ユーザー管理のノートブック インスタンス名の横にある [JupyterLab を開く] をクリックします。
ユーザー管理ノートブック インスタンスで JupyterLab が表示されます。
ネットワーク構成オプション
ユーザー管理のノートブック インスタンスは、VPC ネットワークの外部にあるサービス エンドポイントにアクセスする必要があります。
このアクセスは、次のいずれかの方法で行えます。
ユーザー管理のノートブック インスタンスに外部 IP アドレスを割り当てます。これは、デフォルトのプロパティで新しいインスタンスを作成すると自動的に行われます。利用環境が Google API とサービスのアクセス要件を満たしていることを確認してください。
限定公開の Google アクセスが有効になっているサブネットに、ユーザー管理のノートブック インスタンスを接続します。利用環境が限定公開の Google アクセスの要件を満たしていることを確認してください。
private.googleapis.com
または restricted.googleapis.com
VIP を使用してサービス エンドポイントにアクセスできるようにする場合は、必要なサービス エンドポイントごとに DNS エントリを追加します。
notebooks.googleapis.com
*.notebooks.cloud.google.com
*.notebooks.googleusercontent.com
*.kernels.googleusercontent.com
ネットワーク タグ
ユーザー管理ノートブック インスタンスには、deeplearning-vm
と notebook-instance
のネットワーク タグが自動的に割り当てられます。
これらのタグを使用すると、VPC ネットワーク ファイアウォール ルールのタグを参照して、ユーザー管理ノートブック インスタンス間のネットワーク アクセスを管理できます。ネットワーク タグの詳細については、ネットワーク タグを追加するをご覧ください。
ユーザー管理ノートブック インスタンスのネットワーク タグを表示するには、次のようにします。
-
Google Cloud コンソールで [VM インスタンス] ページに移動します。
インスタンスの名前をクリックします。
[ネットワーキング] セクションで、ネットワーク タグを見つけます。
トラブルシューティング
ノートブックを作成している際に問題が発生した場合は、一般的な問題の解決に役立つ Vertex AI Workbench のトラブルシューティングをご覧ください。
次のステップ
新しいユーザー管理のノートブック インスタンスに依存関係をインストールする。
ユーザー管理のノートブック インスタンスのヘルス ステータスのモニタリングについて学習する。