Bermigrasi dari notebook terkelola ke instance Vertex AI Workbench

Halaman ini menjelaskan cara bermigrasi dari instance notebook terkelola ke instance Vertex AI Workbench. Anda dapat melakukan migrasi menggunakan alat migrasi Vertex AI Workbench atau memigrasikan data dan file instance secara manual.

Ringkasan alat migrasi

Vertex AI Workbench menyediakan alat migrasi untuk bermigrasi dari instance notebook terkelola ke instance Vertex AI Workbench.

Alat migrasi membuat instance Vertex AI Workbench dengan konfigurasi yang mirip dengan instance notebook terkelola yang ingin Anda migrasikan. Misalnya, alat migrasi membuat instance yang memiliki jenis mesin, konfigurasi jaringan, setelan penonaktifan saat tidak ada aktivitas, dan spesifikasi lainnya yang sama atau serupa. Kemudian, file di disk data instance notebook terkelola Anda akan disalin ke instance Vertex AI Workbench.

Vertex AI Workbench tidak menghapus atau mengubah instance notebook terkelola, sehingga setelah migrasi, Anda dapat terus menggunakannya. Jika Anda tidak lagi memerlukan instance notebook terkelola, hapus instance tersebut untuk menghindari tagihan lebih lanjut.

Penagihan

Jika instance notebook terkelola Anda menggunakan Persistent Disk Ekstrem, migrasi Anda akan menghasilkan tagihan untuk operasi I/O. Lihat "IOPS yang disediakan Extreme" di bagian harga Persistent Disk dan Hyperdisk di Harga disk.

Setelah migrasi, instance notebook terkelola masih ada dan menghasilkan tagihan seperti sebelumnya. Jika Anda tidak lagi memerlukan instance notebook terkelola, hapus instance tersebut untuk menghindari tagihan lebih lanjut.

Perilaku alat migrasi default

Alat migrasi Vertex AI Workbench mencoba memigrasikan instance notebook terkelola Anda ke instance Vertex AI Workbench dengan spesifikasi yang cocok. Jika spesifikasi di instance notebook terkelola Anda tidak tersedia di instance Vertex AI Workbench, Vertex AI Workbench akan menggunakan spesifikasi default jika memungkinkan. Jika alat migrasi tidak dapat memigrasikan spesifikasi instance notebook terkelola, alat tersebut tidak akan memigrasikan instance.

Tabel berikut mencantumkan beberapa perilaku migrasi default utama untuk alat migrasi.

Kategori Spesifikasi notebook terkelola Hasil migrasi
OS Versi Ubuntu apa pun Debian 11
Versi Debian apa pun Debian 11
Framework Versi CUDA apa pun CUDA 11.3
Versi Python apa pun Python 3.10
Versi PyTorch apa pun PyTorch 1.13
Versi TensorFlow apa pun TensorFlow 2.11
Versi R apa pun Tidak dimigrasikan; lihat Menambahkan lingkungan conda
Semua versi PySpark lokal Tidak dimigrasikan; lihat Menambahkan lingkungan conda
Versi XGBoost apa pun Tidak dimigrasikan; lihat Menambahkan lingkungan conda
Versi Python Kaggle apa pun Tidak dimigrasikan; lihat Menambahkan lingkungan conda
Versi Jax apa pun Tidak dimigrasikan; lihat Menambahkan lingkungan conda
Versi Apache Beam apa pun Tidak dimigrasikan; lihat Menambahkan lingkungan conda
Jenis mesin Jenis mesin yang didukung Jenis mesin yang identik
Jenis mesin yang tidak didukung e2-standard-4
Akselerator Akselerator yang didukung Akselerator yang sama
Akselerator yang tidak didukung Migrasi tidak mencakup akselerator
Setelan Penonaktifan saat tidak ada aktivitas Dimigrasikan
Menghapus ke sampah Dimigrasikan
nbconvert Dimigrasikan
File sedang didownload Dimigrasikan
Akses terminal Dimigrasikan
Lainnya Izin Identity and Access Management Dimigrasikan, meskipun izin baru mungkin diperlukan untuk menggunakan instance Vertex AI Workbench
Mode akses Dimigrasikan; instance yang menggunakan mode akses JupyterLab satu pengguna harus menentukan opsi serviceAccount
Jaringan Dimigrasikan; instance yang menggunakan Virtual Private Cloud yang dikelola Google harus menentukan opsi network dan subnet
Skrip pasca-startup Saat menggunakan konsol Google Cloud, instance dimigrasikan tanpa skrip pasca-startup; untuk memigrasikan instance dengan skrip pasca-startup, gunakan Google Cloud CLI atau REST API untuk menentukan opsi PostStartupScriptOption
Hub Dataproc Belum dimigrasikan; harus dimigrasikan secara manual

Menentukan opsi

Bagian berikut menjelaskan kasus saat menentukan opsi diperlukan untuk memigrasikan instance notebook terkelola ke instance Vertex AI Workbench.

Instance yang menggunakan mode akses satu pengguna

Instance notebook terkelola yang menggunakan mode akses pengguna tunggal harus dimigrasikan ke instance dengan opsi serviceAccount yang ditentukan. Instance Vertex AI Workbench yang Anda migrasikan akan membatasi akses ke JupyterLab untuk satu pengguna, tetapi menggunakan akun layanan untuk berinteraksi dengan layanan dan API Google Cloud.

Instance yang menggunakan VPC yang dikelola Google

Instance notebook terkelola yang menggunakan VPC yang dikelola Google harus dimigrasikan ke instance dengan opsi network dan subnet yang ditentukan. Opsi untuk menggunakan VPC yang dikelola Google tidak didukung di instance Vertex AI Workbench, sehingga jaringan yang berbeda harus ditentukan.

Instance yang menggunakan skrip pasca-startup

Instance notebook terkelola yang menggunakan skrip pasca-startup harus dimigrasikan ke instance dengan opsi PostStartupScriptOption yang ditentukan. Gunakan opsi ini untuk menunjukkan apakah Anda ingin melewati atau menjalankan ulang skrip pasca-startup di instance Vertex AI Workbench baru.

Menentukan opsi PostStartupScriptOption tidak didukung di konsol Google Cloud. Untuk menentukan opsi PostStartupScriptOption saat memigrasikan instance notebook terkelola, Anda harus menggunakan Google Cloud CLI atau REST API.

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. Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.

    Buka pemilih project

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Aktifkan API Notebooks.

    Mengaktifkan API

  5. Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.

    Buka pemilih project

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Aktifkan API Notebooks.

    Mengaktifkan API

  8. Buat instance notebook terkelola, jika Anda belum membuatnya.

Peran yang diperlukan

Untuk memastikan bahwa akun pengguna Anda memiliki izin yang diperlukan untuk memigrasikan instance notebook terkelola ke instance Vertex AI Workbench, minta administrator untuk memberi akun pengguna Anda Notebooks Runner (roles/notebooks.runner) peran IAM di project. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Peran bawaan ini berisi izin yang diperlukan untuk memigrasikan instance notebook terkelola ke instance Vertex AI Workbench. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk memigrasikan instance notebook terkelola ke instance Vertex AI Workbench:

  • notebooks.runtimes.create
  • notebooks.runtimes.get

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

Pemeriksaan pra-migrasi

Sebelum melakukan migrasi, periksa kelayakan migrasi instance notebook terkelola Anda dengan mencantumkan instance dan memeriksa output untuk menemukan peringatan atau error migrasi.

Mencantumkan instance

Untuk mencantumkan instance notebook terkelola yang belum dimigrasikan, gunakan metode projects.locations.runtimes.list dengan filter migrated:false. Anda dapat mencantumkannya menggunakan gcloud CLI atau REST API:

gcloud

Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Anda
  • LOCATION: Region tempat instance notebook terkelola Anda berada, atau gunakan - untuk mencantumkan instance dari semua region

Jalankan perintah berikut:

Linux, macOS, atau Cloud Shell

gcloud notebooks runtimes list --project=PROJECT_ID \
    --location=LOCATION --filter=migrated:false --format=default

Windows (PowerShell)

gcloud notebooks runtimes list --project=PROJECT_ID `
    --location=LOCATION --filter=migrated:false --format=default

Windows (cmd.exe)

gcloud notebooks runtimes list --project=PROJECT_ID ^
    --location=LOCATION --filter=migrated:false --format=default

REST

Sebelum menggunakan data permintaan mana pun, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Anda
  • LOCATION: Region tempat instance notebook terkelola Anda berada, atau gunakan - untuk mencantumkan instance dari semua region

Metode HTTP dan URL:

GET https://notebooks.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/runtimes?filter=migrated:false

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Jalankan perintah berikut:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://notebooks.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/runtimes?filter=migrated:false"

PowerShell

Jalankan perintah berikut:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://notebooks.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/runtimes?filter=migrated:false" | Select-Object -Expand Content

Periksa output untuk menemukan peringatan atau error

Jika peringatan atau error migrasi terdeteksi, output metode projects.locations.runtimes.list akan menyertakan informasi ini.

Peringatan akan muncul saat komponen tertentu dalam konfigurasi instance notebook terkelola Anda tidak akan dimigrasikan ke spesifikasi yang sama di instance Vertex AI Workbench. Misalnya, jika instance notebook terkelola Anda menggunakan akselerator yang tidak didukung, peringatan akan muncul di output. Dalam hal ini, instance dimigrasikan tanpa akselerator apa pun. Anda dapat melampirkan accelerator setelah migrasi. Tinjau peringatan dalam output, pertimbangkan perilaku default alat migrasi, dan nilai apakah alat migrasi dapat diterima untuk migrasi Anda.

Satu atau beberapa error dalam output berarti Anda tidak dapat memigrasikan instance notebook terkelola menggunakan alat migrasi. Anda harus memigrasikan instance secara manual.

Untuk mengetahui informasi selengkapnya tentang peringatan dan error migrasi, lihat peringatan dan error dalam dokumentasi RuntimeMigrationEligibility.

Bermigrasi menggunakan alat migrasi

Anda dapat memigrasikan instance notebook terkelola menggunakan konsol Google Cloud, gcloud CLI, atau REST API.

Konsol

  1. Di Konsol Google Cloud, buka halaman Managed notebooks.

    Buka Notebook terkelola

  2. Klik tombol Migrasikan. Halaman Migrasikan notebook terkelola ke instance akan terbuka.

  3. Untuk memigrasikan instance yang tidak memerlukan opsi yang ditentukan, klik tab Siap, pilih instance yang ingin Anda migrasikan, lalu klik Migrasikan.

  4. Untuk memigrasikan instance yang memerlukan opsi yang ditentukan, klik tab Needs input, pilih instance yang ingin Anda migrasikan, lalu klik Migrate.

    1. Dalam dialog Provide input for migration, tentukan jaringan dan akun layanan yang akan digunakan untuk instance Vertex AI Workbench baru yang Anda pilih.

    2. Klik Kirim.

  5. Setelah migrasi selesai, buka halaman Instance untuk melihat instance Vertex AI Workbench baru Anda.

    Buka Instance

gcloud

Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Anda
  • LOCATION: Region tempat instance notebook terkelola Anda berada
  • RUNTIME_ID: ID instance notebook terkelola
  • NETWORK: Opsional: Jaringan tempat Anda ingin memigrasikan instance
  • SUBNET: Opsional: Subnet tempat Anda ingin memigrasikan instance
  • SERVICE_ACCOUNT: Opsional: Alamat email akun layanan yang ingin Anda gunakan
  • POST_STARTUP_SCRIPT_OPTION: Opsional: Salah satu opsi skrip pasca-startup

Jalankan perintah berikut:

Linux, macOS, atau Cloud Shell

gcloud notebooks runtimes migrate RUNTIME_ID \
    --project=PROJECT_ID \
    --location=LOCATION \
    --network=NETWORK \
    --subnet=SUBNET \
    --service-account=SERVICE_ACCOUNT \
    --post-startup-script-option=POST_STARTUP_SCRIPT_OPTION

Windows (PowerShell)

gcloud notebooks runtimes migrate RUNTIME_ID `
    --project=PROJECT_ID `
    --location=LOCATION `
    --network=NETWORK `
    --subnet=SUBNET `
    --service-account=SERVICE_ACCOUNT `
    --post-startup-script-option=POST_STARTUP_SCRIPT_OPTION

Windows (cmd.exe)

gcloud notebooks runtimes migrate RUNTIME_ID ^
    --project=PROJECT_ID ^
    --location=LOCATION ^
    --network=NETWORK ^
    --subnet=SUBNET ^
    --service-account=SERVICE_ACCOUNT ^
    --post-startup-script-option=POST_STARTUP_SCRIPT_OPTION

REST

Sebelum menggunakan data permintaan mana pun, lakukan penggantian berikut:

  • PROJECT_ID: Project ID Anda
  • LOCATION: Region tempat instance notebook terkelola Anda berada
  • RUNTIME_ID: ID instance notebook terkelola
  • NETWORK: Opsional: Jaringan tempat Anda ingin memigrasikan instance
  • SUBNET: Opsional: Subnet tempat Anda ingin memigrasikan instance
  • SERVICE_ACCOUNT: Opsional: Alamat email akun layanan yang ingin Anda gunakan
  • POST_STARTUP_SCRIPT_OPTION: Opsional: Salah satu opsi skrip pasca-startup

Metode HTTP dan URL:

POST https://notebooks.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/runtimes/RUNTIME_ID:migrate

Isi JSON permintaan:

{
  "network": NETWORK,
  "subnet": SUBNET,
  "serviceAccount": SERVICE_ACCOUNT_EMAIL_ADDRESS,
  "postStartupScriptOption": (POST_STARTUP_SCRIPT_OPTION)
}

Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

curl

Simpan isi permintaan dalam file bernama request.json, dan jalankan perintah berikut:

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/v1/projects/PROJECT_ID/locations/LOCATION/runtimes/RUNTIME_ID:migrate"

PowerShell

Simpan isi permintaan dalam file bernama request.json, dan jalankan perintah berikut:

$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/v1/projects/PROJECT_ID/locations/LOCATION/runtimes/RUNTIME_ID:migrate" | Select-Object -Expand Content

Memigrasikan secara manual

Untuk memigrasikan instance ke instance Vertex AI Workbench secara manual, pertimbangkan untuk menggunakan metode berikut:

  • Menggunakan Cloud Storage dan terminal: Salin data dan file Anda ke Cloud Storage, lalu ke instance lain menggunakan terminal.

  • Menggunakan GitHub: Salin data dan file Anda ke repositori GitHub dengan menggunakan ekstensi Git untuk JupyterLab.

Panduan ini menjelaskan cara memigrasikan data dan file menggunakan Cloud Storage dan terminal.

Persyaratan

Anda harus memiliki akses terminal ke instance notebook terkelola. Akses terminal ditetapkan secara manual saat Anda membuat instance. Setelan akses terminal tidak dapat diubah setelah instance dibuat.

Bermigrasi secara manual menggunakan Cloud Storage dan terminal

Untuk memigrasikan data dan file ke instance Vertex AI Workbench baru menggunakan Cloud Storage dan terminal, lakukan hal berikut.

  1. Buat bucket Cloud Storage di project yang sama di tempat instance notebook terkelola Anda berada.

  2. Dalam project yang sama, Buat instance Vertex AI Workbench untuk memigrasikan data Anda. Saat Anda membuat instance ini:

    • Aktifkan akses terminal.
    • Tentukan jenis mesin, jaringan, dan karakteristik lainnya agar sesuai dengan yang Anda butuhkan.
  3. Di antarmuka instance notebook terkelola Anda di JupyterLab, pilih File > New > Terminal untuk membuka jendela terminal.

  4. Gunakan gcloud CLI untuk menyalin data pengguna ke bucket Cloud Storage. Contoh perintah berikut menyalin semua file dari direktori /home/jupyter/ instance ke direktori dalam bucket Cloud Storage.

    gcloud storage cp /home/jupyter/* gs://BUCKET_NAMEPATH --recursive

    Ganti kode berikut:

    • BUCKET_NAME: Nama bucket Cloud Storage Anda
    • PATH: Jalur ke direktori tempat Anda ingin menyalin file, misalnya: /copy/jupyter/
  5. Di antarmuka JupyterLab instance Vertex AI Workbench baru, pilih File > New > Terminal untuk membuka jendela terminal.

  6. Gunakan gcloud CLI untuk menyalin data Anda ke instance baru. Contoh perintah berikut menyalin semua file dari direktori Cloud Storage ke direktori /home/jupyter/ instance baru Anda.

    gcloud storage cp gs://BUCKET_NAMEPATH* /home/jupyter/

Mengonfirmasi migrasi

Setelah migrasi, instance notebook terkelola asli akan terus berfungsi seperti sebelumnya. Pastikan migrasi Anda berhasil sebelum Anda menghapus instance asli.

Menghapus instance notebook terkelola

Jika Anda tidak memerlukan instance notebook terkelola yang menjadi sumber migrasi, hapus instance tersebut untuk menghindari tagihan lebih lanjut untuk instance tersebut.

  1. Di Konsol Google Cloud, buka halaman Managed notebooks.

    Buka Notebook terkelola

  2. Pilih instance yang ingin Anda hapus.

  3. Klik  Delete. (Bergantung pada ukuran jendela, tombol Delete mungkin ada di menu opsi  .)

  4. Untuk mengonfirmasi, klik Hapus.

Memecahkan masalah

Untuk menemukan metode mendiagnosis dan menyelesaikan masalah migrasi, lihat Memecahkan Masalah Vertex AI Workbench.

Langkah selanjutnya