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 Anda 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 disalin ke instance Vertex AI Workbench.

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

Penagihan

Jika instance notebook terkelola Anda menggunakan Persistent Disk Ekstrem, migrasi Anda akan menimbulkan biaya untuk operasi I/O. Lihat "IOPS yang disediakan untuk 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 untuk instance tersebut.

Perilaku alat migrasi default

Alat migrasi Vertex AI Workbench akan 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 Anda, 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 Belum dimigrasikan; lihat Menambahkan lingkungan conda
Versi PySpark lokal apa pun Belum dimigrasikan; lihat Menambahkan lingkungan conda
Versi XGBoost apa pun Belum dimigrasikan; lihat Menambahkan lingkungan conda
Versi Python Kaggle apa pun Belum dimigrasikan; lihat Menambahkan lingkungan conda
Versi Jax apa pun Belum dimigrasikan; lihat Menambahkan lingkungan conda
Versi Apache Beam apa pun Belum 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 identik
Akselerator yang tidak didukung Migrasi tidak mencakup akselerator
Setelan Penonaktifan saat tidak ada aktivitas Dimigrasikan
Hapus ke sampah Dimigrasikan
nbconvert Dimigrasikan
Mendownload file 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 post-startup; untuk memigrasikan instance dengan skrip post-startup, gunakan Google Cloud CLI atau REST API untuk menentukan opsi PostStartupScriptOption
Hub Dataproc Tidak dimigrasikan; harus dimigrasikan secara manual

Menentukan opsi

Bagian berikut menjelaskan kasus saat opsi harus ditentukan untuk memigrasikan instance notebook terkelola Anda ke instance Vertex AI Workbench.

Instance yang menggunakan mode akses pengguna tunggal

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 membatasi akses ke JupyterLab untuk satu pengguna, tetapi menggunakan akun layanan untuk berinteraksi dengan Google Cloud layanan dan API.

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 lain 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 yang baru.

Menentukan opsi PostStartupScriptOption tidak didukung di konsol Google Cloud . Untuk menentukan opsi PostStartupScriptOption saat Anda 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. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

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

  4. Enable the Notebooks API.

    Enable the API

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

    Go to project selector

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

  7. Enable the Notebooks API.

    Enable the API

  8. Buat instance notebook terkelola, jika Anda belum membuatnya.
  9. Peran yang diperlukan

    Untuk mendapatkan izin yang diperlukan untuk memigrasikan instance managed notebooks ke instance Vertex AI Workbench, minta administrator Anda untuk memberi Anda peran IAM Notebooks Runner (roles/notebooks.runner) 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

    Anda mungkin juga bisa mendapatkan izin ini 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 mengetahui adanya peringatan atau error migrasi.

    Mencantumkan instance Anda

    Untuk mencantumkan instance notebook terkelola yang belum dimigrasikan, gunakan metode projects.locations.runtimes.list dengan filter migrated:false. Anda dapat membuat daftarnya 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 mengetahui 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 akselerator 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 di dokumentasi RuntimeMigrationEligibility.

    Melakukan migrasi 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 Managed notebooks

    2. Klik tombol Migrasikan. Halaman Migrate managed notebooks to instances 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 tertentu, klik tab Perlu input, pilih instance yang ingin Anda migrasikan, lalu klik Migrasikan.

      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 Instances 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: Jaringan tempat Anda ingin memigrasikan instance
    • SUBNET: Subnet yang ingin Anda migrasikan instance-nya
    • SUBNET_REGION: Region subnet
    • SERVICE_ACCOUNT: Opsional: Alamat email akun layanan yang ingin Anda gunakan
    • POST_STARTUP_SCRIPT_OPTION: Opsional: Salah satu opsi skrip post-startup

    Jalankan perintah berikut:

    Linux, macOS, atau Cloud Shell

    gcloud notebooks runtimes migrate RUNTIME_ID \
        --project=PROJECT_ID \
        --location=LOCATION \
        --network=NETWORK \
        --subnet=SUBNET \
        --subnet-region=SUBNET_REGION \
        --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 `
        --subnet-region=SUBNET_REGION `
        --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 ^
        --subnet-region=SUBNET_REGION ^
        --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: Jaringan tempat Anda ingin memigrasikan instance
    • SUBNET: Subnet yang ingin Anda migrasikan instance-nya
    • SERVICE_ACCOUNT: Opsional: Alamat email akun layanan yang ingin Anda gunakan
    • POST_STARTUP_SCRIPT_OPTION: Opsional: Salah satu opsi skrip post-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

    Migrasi secara manual

    Untuk memigrasikan instance Anda 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 langkah-langkah 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 kebutuhan Anda.
    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 Anda 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 Anda, 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/ --recursive

    Konfirmasi migrasi

    Setelah migrasi, instance notebook terkelola asli 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 Anda migrasikan, hapus instance tersebut untuk menghindari tagihan lebih lanjut untuk instance tersebut.

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

      Buka Managed notebooks

    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 berikutnya