Membuat instance yang mendukung Dataproc

Halaman ini menjelaskan cara membuat instance Vertex AI Workbench yang mengaktifkan Dataproc. Halaman ini juga menjelaskan manfaat plugin JupyterLab Dataproc dan memberikan ringkasan tentang cara menggunakan plugin dengan Dataproc Serverless untuk Spark dan Dataproc di Compute Engine.

Ringkasan plugin JupyterLab Dataproc

Instance Vertex AI Workbench telah menginstal plugin JupyterLab Dataproc, mulai versi M113 dan yang lebih baru.

Plugin JupyterLab Dataproc menyediakan dua cara untuk menjalankan tugas notebook Apache Spark: cluster Dataproc dan Spark Serverless di Dataproc.

  • Cluster Dataproc mencakup serangkaian fitur lengkap dengan kontrol atas infrastruktur tempat Spark berjalan. Anda memilih ukuran dan konfigurasi cluster Spark, yang memungkinkan penyesuaian dan kontrol atas lingkungan Anda. Pendekatan ini ideal untuk beban kerja yang kompleks, tugas yang berjalan lama, dan pengelolaan resource yang terperinci.
  • Serverless Spark yang didukung oleh Dataproc menghilangkan masalah infrastruktur. Anda mengirimkan tugas Spark, dan Google menangani penyediaan, penskalaan, dan pengoptimalan resource di balik layar. Pendekatan tanpa server ini menawarkan opsi yang mudah dan hemat biaya untuk beban kerja data science dan ML.

Dengan kedua opsi tersebut, Anda dapat menggunakan Spark untuk pemrosesan dan analisis data. Pilihan antara cluster Dataproc dan Spark Serverless bergantung pada persyaratan workload spesifik Anda, tingkat kontrol yang diinginkan, dan pola penggunaan resource.

Manfaat menggunakan Serverless Spark untuk data science dan workload ML meliputi:

  • Tidak ada pengelolaan cluster: Anda tidak perlu khawatir tentang penyediaan, konfigurasi, atau pengelolaan cluster Spark. Hal ini menghemat waktu dan sumber daya Anda.
  • Penskalaan otomatis: Serverless Spark secara otomatis menskalakan ke atas dan ke bawah berdasarkan beban kerja, sehingga Anda hanya membayar resource yang digunakan.
  • Performa tinggi: Serverless Spark dioptimalkan untuk performa dan memanfaatkan infrastruktur Google Cloud.
  • Integrasi dengan teknologi Google Cloud lainnya: Serverless Spark terintegrasi dengan produk Google Cloud lainnya, seperti BigQuery dan Dataplex.

Untuk mengetahui informasi selengkapnya, lihat dokumentasi Dataproc Serverless.

Batasan

Pertimbangkan batasan berikut saat merencanakan project Anda:

  • Plugin JupyterLab Dataproc tidak mendukung Kontrol Layanan VPC.

Batasan Dataproc

Batasan Dataproc berikut berlaku:

  • Tugas Spark dijalankan dengan identitas akun layanan, bukan identitas pengguna yang mengirimkan.

Sebelum memulai

  1. 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.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Enable the Cloud Resource Manager, Dataproc, and Notebooks APIs.

    Enable the APIs

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Enable the Cloud Resource Manager, Dataproc, and Notebooks APIs.

    Enable the APIs

Peran yang diperlukan

Untuk memastikan bahwa akun layanan memiliki izin yang diperlukan untuk menjalankan file notebook di cluster Dataproc Serverless atau cluster Dataproc, minta administrator Anda untuk memberikan akun layanan peran IAM berikut:

Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Peran bawaan ini berisi izin yang diperlukan untuk menjalankan file notebook di cluster Dataproc Serverless atau cluster Dataproc. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk menjalankan file notebook di cluster Dataproc Serverless atau cluster Dataproc:

  • dataproc.agents.create
  • dataproc.agents.delete
  • dataproc.agents.get
  • dataproc.agents.update
  • dataproc.tasks.lease
  • dataproc.tasks.listInvalidatedLeases
  • dataproc.tasks.reportStatus
  • dataproc.clusters.use

Administrator Anda mungkin juga dapat memberikan izin ini kepada akun layanan dengan peran khusus atau peran bawaan lainnya.

Membuat instance dengan Dataproc diaktifkan

Untuk membuat instance Vertex AI Workbench dengan Dataproc yang diaktifkan, lakukan tindakan berikut:

  1. Di konsol Google Cloud, buka halaman Instance.

    Buka Instance

  2. Klik  Buat baru.

  3. Dalam dialog Instance baru, klik Opsi lanjutan.

  4. Pada dialog Create instance, di bagian Details, pastikan Enable Dataproc Serverless Interactive Sessions dipilih.

  5. Pastikan Jenis Workbench disetel ke Instance.

  6. Di bagian Environment, pastikan Anda menggunakan versi terbaru atau versi bernomor M113 atau yang lebih tinggi.

  7. Klik Create.

    Vertex AI Workbench membuat sebuah instance dan otomatis memulainya. Saat instance siap digunakan, Vertex AI Workbench akan mengaktifkan link Open JupyterLab.

Buka JupyterLab

Di samping nama instance, klik Open JupyterLab.

Tab Peluncur JupyterLab akan terbuka di browser Anda. Secara default, halaman ini berisi bagian untuk Notebook Dataproc Serverless dan Tugas dan Sesi Dataproc. Jika ada cluster yang siap digunakan Jupyter di project dan region yang dipilih, akan ada bagian yang disebut Notebook Cluster Dataproc.

Menggunakan plugin dengan Dataproc Serverless untuk Spark

Template runtime Serverless Spark yang berada di region dan project yang sama dengan instance Vertex AI Workbench Anda akan muncul di bagian Dataproc Serverless Notebooks pada tab Launcher JupyterLab.

Untuk membuat template runtime, lihat Membuat template runtime Dataproc Serverless.

Untuk membuka notebook Serverless Spark baru, klik template runtime. Perlu waktu sekitar satu menit untuk memulai kernel Spark jarak jauh. Setelah kernel dimulai, Anda dapat mulai membuat kode. Untuk menjalankan kode di Serverless Spark, jalankan sel kode di notebook Anda.

Menggunakan plugin dengan Dataproc di Compute Engine

Jika Anda membuat cluster Jupyter Dataproc di Compute Engine, tab Peluncur memiliki bagian Notebook Cluster Dataproc.

Empat kartu akan muncul untuk setiap cluster Dataproc siap Jupyter yang dapat Anda akses di region dan project tersebut.

Untuk mengubah region dan project, lakukan hal berikut:

  1. Pilih Setelan > Setelan Cloud Dataproc.

  2. Pada tab Setup Config, di bagian Project Info, ubah Project ID dan Region, lalu klik Save.

    Perubahan ini tidak akan diterapkan hingga Anda memulai ulang JupyterLab.

  3. Untuk memulai ulang JupyterLab, pilih File > Shut Down, lalu klik Open JupyterLab di halaman instance Vertex AI Workbench.

Untuk membuat notebook baru, klik kartu. Setelah kernel jarak jauh di cluster Dataproc dimulai, Anda dapat mulai menulis kode, lalu menjalankannya di cluster.

Mengelola Dataproc di instance menggunakan gcloud CLI dan API

Bagian ini menjelaskan cara mengelola Dataproc di instance Vertex AI Workbench.

Mengubah region cluster Dataproc

Kernel default instance Vertex AI Workbench Anda, seperti Python dan TensorFlow, adalah kernel lokal yang berjalan di VM instance. Pada instance Vertex AI Workbench yang mengaktifkan Dataproc, notebook Anda berjalan di cluster Dataproc melalui kernel jarak jauh. Kernel jarak jauh berjalan di layanan di luar VM instance Anda, yang memungkinkan Anda mengakses cluster Dataproc dalam project yang sama.

Secara default, Vertex AI Workbench menggunakan cluster Dataproc dalam region yang sama dengan instance Anda, tetapi Anda dapat mengubah region Dataproc selama Gateway Komponen dan komponen Jupyter opsional diaktifkan di cluster Dataproc.

  • Untuk mengubah region VM instance Anda, gunakan perintah berikut:

    gcloud config set compute/region REGION

    Ganti REGION dengan region yang Anda inginkan, misalnya us-east4.

  • Untuk mengubah region cluster Dataproc, gunakan perintah berikut:

    gcloud config set dataproc/region REGION

    Ganti REGION dengan region yang Anda inginkan, misalnya us-east4.

Pengujian Akses

Plugin JupyterLab Dataproc diaktifkan secara default untuk instance Vertex AI Workbench. Untuk menguji akses ke Dataproc, Anda dapat memeriksa akses ke kernel jarak jauh instance dengan mengirimkan permintaan curl berikut ke domain kernels.googleusercontent.com:

curl --verbose -H "Authorization: Bearer $(gcloud auth print-access-token)" https://PROJECT_ID-dot-REGION.kernels.googleusercontent.com/api/kernelspecs | jq .

Jika perintah curl gagal, periksa untuk memastikan bahwa:

  1. Entri DNS Anda dikonfigurasi dengan benar.

  2. Ada cluster yang tersedia di project yang sama (atau Anda harus membuatnya jika tidak ada).

  3. Cluster Anda telah mengaktifkan Gateway Komponen dan komponen Jupyter opsional.

Menonaktifkan Dataproc

Instance Vertex AI Workbench dibuat dengan Dataproc yang diaktifkan secara default. Anda dapat membuat instance Vertex AI Workbench dengan Dataproc dinonaktifkan dengan menetapkan kunci disable-mixer metadata ke true.

gcloud workbench instances create INSTANCE_NAME --metadata=disable-mixer=true

Mengaktifkan Dataproc

Anda dapat mengaktifkan Dataproc di instance Vertex AI Workbench yang dihentikan dengan memperbarui nilai metadata.

gcloud workbench instances update INSTANCE_NAME --metadata=disable-mixer=false

Mengelola Dataproc menggunakan Terraform

Dataproc untuk instance Vertex AI Workbench di Terraform dikelola menggunakan kunci disable-mixer di kolom metadata. Aktifkan Dataproc dengan menetapkan kunci disable-mixer metadata ke false. Nonaktifkan Dataproc dengan menetapkan kunci metadata disable-mixer ke true.

Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.

resource "google_workbench_instance" "default" {
  name     = "workbench-instance-example"
  location = "us-central1-a"

  gce_setup {
    machine_type = "n1-standard-1"
    vm_image {
      project = "cloud-notebooks-managed"
      family  = "workbench-instances"
    }
    metadata = {
      disable-mixer = "false"
    }
  }
}

Memecahkan masalah

Untuk mendiagnosis dan menyelesaikan masalah terkait pembuatan instance yang mendukung Dataproc, lihat Memecahkan Masalah Vertex AI Workbench.

Langkah selanjutnya