マネージド ノートブックで Dataproc Serverless Spark を使用する
このページでは、Dataproc Serverless を使用して、Vertex AI Workbench マネージド ノートブック インスタンスのサーバーレス Spark でノートブック ファイルを実行する方法について説明します。
マネージド ノートブック インスタンスは、Dataproc Serverless サービスで実行するノートブック ファイルのコードを送信できます。このサービスは、必要に応じてリソースを自動的にスケーリングするマネージド コンピューティング インフラストラクチャでコードを実行します。したがって、独自のクラスタをプロビジョニングして管理する必要はありません。
Dataproc Serverless の料金は、ワークロードが実行されている時間に対してのみ適用されます。
要件
Dataproc Serverless Spark でノートブック ファイルを実行するには、次の要件をご覧ください。
Dataproc Serverless セッションは、マネージド ノートブック インスタンスと同じリージョンで実行する必要があります。
「OS Login が必要(
constraints/compute.requireOsLogin
)」の制約をプロジェクトで有効にしないでください。組織での OS Login の管理をご覧ください。Dataproc Serverless でノートブック ファイルを実行するには、特定の権限を持つサービス アカウントを指定する必要があります。これらの権限をデフォルトのサービス アカウントに付与するか、カスタム サービス アカウントを指定できます。このページの権限に関するセクションをご覧ください。
Dataproc Serverless Spark セッションでは、Virtual Private Cloud(VPC)ネットワークを使用してワークロードを実行します。VPC サブネットワークは特定の要件を満たす必要があります。Spark 向け Dataproc Serverless ネットワーク構成の要件をご覧ください。
権限
Dataproc Serverless でノートブック ファイルを実行するために必要な権限がサービス アカウントに付与されるように、サービス アカウントにプロジェクトに対する Dataproc 編集者(roles/dataproc.editor
)IAM ロールを付与するように管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
この事前定義ロールには、Dataproc Serverless でノートブック ファイルを実行するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
Dataproc Serverless でノートブック ファイルを実行するには、次の権限が必要です。
-
dataproc.agents.create
-
dataproc.agents.delete
-
dataproc.agents.get
-
dataproc.agents.update
-
dataproc.session.create
-
dataproc.sessions.get
-
dataproc.sessions.list
-
dataproc.sessions.terminate
-
dataproc.sessions.delete
-
dataproc.tasks.lease
-
dataproc.tasks.listInvalidatedLeases
-
dataproc.tasks.reportStatus
管理者は、サービス アカウントに、カスタムロールや他の事前定義ロールを付与することもできます。
始める前に
- 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, Vertex AI, and Dataproc APIs.
-
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, Vertex AI, and Dataproc APIs.
- まだ作成していない場合は、マネージド ノートブック インスタンスを作成します。
- まだ行っていない場合は、Spark 向け Dataproc Serverless ネットワーク構成に記載されている要件を満たす VPC ネットワークを構成します。
JupyterLab を開く
Google Cloud コンソールで、[マネージド ノートブック] ページに移動します。
マネージド ノートブック インスタンス名の横にある [JupyterLab を開く] をクリックします。
Dataproc Serverless Spark セッションを開始する
Dataproc Serverless Spark セッションを開始するには、次の手順を行います。
マネージド ノートブック インスタンスの JupyterLab インターフェースで、[Launcher] タブを選択してから [Serverless Spark] を選択します。[Launcher] タブが開いていない場合は、[File] > [New Launcher] を選択して開きます。
[Create Serverless Spark session] ダイアログが表示されます。
[Session name] フィールドに、セッションの名前を入力します。
[Execution configuration] セクションで、使用するサービス アカウントを入力します。サービス アカウントを入力しない場合、セッションでは Compute Engine のデフォルトのサービス アカウントが使用されます。
[Network configuration] セクションの [ネットワーク] と [サブネットワーク] で、Spark 向け Dataproc Serverless ネットワーク構成の要件を満たすネットワークを選択します。
[Create] をクリックします。
新しいノートブック ファイルが開きます。作成した Dataproc Serverless Spark セッションが、ノートブック ファイルのコードを実行するカーネルになります。
Dataproc Serverless Spark またはその他のカーネルでコードを実行する
新しいノートブック ファイルにコードを追加し、コードを実行します。
別のカーネルでコードを実行するには、カーネルを変更します。
Dataproc Serverless Spark セッションでコードを再度実行する場合は、カーネルを Dataproc Serverless Spark カーネルに戻します。
Dataproc Serverless Spark セッションを終了する
Dataproc Serverless Spark セッションは、JupyterLab インターフェースまたは Google Cloud コンソールで終了できます。ノートブック ファイル内のコードは保持されます。
JupyterLab
JupyterLab で、Dataproc Serverless Spark セッションの作成時に作成されたノートブック ファイルを閉じます。
表示されたダイアログで [Terminate session] をクリックします。
Google Cloud コンソール
Google Cloud コンソールで、Dataproc セッションのページに移動します。
終了するセッションを選択し、[終了] をクリックします。
Dataproc Serverless Spark セッションを削除する
Google Cloud コンソールで Dataproc Serverless Spark セッションを削除できます。ノートブック ファイル内のコードは保持されます。
Google Cloud コンソールで、Dataproc セッションのページに移動します。
削除するセッションを選択し、[削除] をクリックします。
次のステップ
- Dataproc Serverless の詳細を確認する。