Memecahkan Masalah Vertex AI Workbench

Halaman ini menjelaskan langkah-langkah pemecahan masalah yang mungkin berguna jika Anda mengalami masalah saat menggunakan Vertex AI Workbench.

Lihat juga Pemecahan Masalah Vertex AI untuk mendapatkan bantuan dalam menggunakan komponen Vertex AI lainnya.

Untuk memfilter konten halaman ini, klik topik:

Instance Vertex AI Workbench

Bagian ini menjelaskan langkah-langkah pemecahan masalah untuk instance Vertex AI Workbench.

Menghubungkan ke dan membuka JupyterLab

Bagian ini menjelaskan langkah-langkah pemecahan masalah untuk menghubungkan ke dan membuka JupyterLab.

Tidak ada yang terjadi setelah mengklik Open JupyterLab

Masalah

Saat Anda mengklik Open JupyterLab, tidak ada yang terjadi.

Solusi

Pastikan browser Anda tidak memblokir tab baru agar tidak terbuka secara otomatis. JupyterLab akan terbuka di tab browser baru.

Tidak dapat mengakses terminal di instance Vertex AI Workbench

Masalah

Jika Anda tidak dapat mengakses terminal atau tidak dapat menemukan jendela terminal di peluncur, mungkin karena instance Vertex AI Workbench Anda tidak mengaktifkan akses terminal.

Solusi

Anda harus membuat instance Vertex AI Workbench baru dengan opsi Akses terminal diaktifkan. Opsi ini tidak dapat diubah setelah pembuatan instance.

Error 502 saat membuka JupyterLab

Masalah

Error 502 mungkin berarti bahwa instance Vertex AI Workbench Anda belum siap.

Solusi

Tunggu beberapa menit, muat ulang tab browser konsol Google Cloud, lalu coba lagi.

Notebook tidak responsif

Masalah

Instance Vertex AI Workbench Anda tidak menjalankan sel atau tampak berhenti.

Solusi

Pertama, coba mulai ulang kernel dengan mengklik Kernel dari menu atas, lalu Mulai ulang Kernel. Jika tidak berhasil, Anda dapat mencoba langkah berikut:

  • Muat ulang halaman browser JupyterLab. Output sel yang tidak disimpan tidak akan dipertahankan, jadi Anda harus menjalankan sel tersebut lagi untuk menghasilkan ulang output.
  • Reset instance.

Tidak dapat terhubung dengan instance Vertex AI Workbench menggunakan SSH

Masalah

Anda tidak dapat terhubung ke instance menggunakan SSH melalui jendela terminal.

Instance Vertex AI Workbench menggunakan Login OS untuk mengaktifkan akses SSH. Saat Anda membuat instance, Vertex AI Workbench akan mengaktifkan Login OS secara default dengan menetapkan kunci metadata enable-oslogin ke TRUE. Jika Anda tidak dapat menggunakan SSH untuk terhubung ke instance, kunci metadata ini mungkin perlu ditetapkan ke TRUE.

Solusi

Menghubungkan ke instance Vertex AI Workbench menggunakan konsol Google Cloud tidak didukung. Jika Anda tidak dapat terhubung ke instance menggunakan SSH melalui jendela terminal, lihat hal berikut:

Untuk menetapkan kunci metadata enable-oslogin ke TRUE, gunakan metode projects.locations.instances.patch di Notebooks API atau perintah gcloud workbench instances update di Google Cloud SDK.

Kuota GPU telah terlampaui

Masalah

Anda tidak dapat membuat instance Vertex AI Workbench dengan GPU.

Solusi

Tentukan jumlah GPU yang tersedia di project Anda dengan memeriksa halaman kuota. Jika GPU tidak tercantum di halaman kuota, atau Anda memerlukan kuota GPU tambahan, Anda dapat meminta penambahan kuota. Lihat Meminta batas kuota yang lebih tinggi.

Membuat instance Vertex AI Workbench

Bagian ini menjelaskan cara memecahkan masalah terkait pembuatan instance Vertex AI Workbench.

Instance tetap dalam status tertunda tanpa batas waktu atau macet dalam status penyediaan

Masalah

Setelah membuat instance Vertex AI Workbench, instance tersebut akan tetap berada dalam status tertunda tanpa batas waktu. Error seperti berikut mungkin muncul dalam log serial:

Could not resolve host: notebooks.googleapis.com

Jika instance Anda macet dalam status penyediaan, hal ini mungkin karena Anda memiliki konfigurasi jaringan pribadi yang tidak valid untuk instance Anda.

Solusi

Ikuti langkah-langkah di Bagian log instance menampilkan error koneksi atau waktu tunggu.

Tidak dapat membuat instance dalam jaringan VPC Bersama

Masalah

Mencoba membuat instance dalam jaringan VPC Bersama akan menghasilkan pesan error seperti berikut:

Required 'compute.subnetworks.use' permission for
'projects/network-administration/regions/us-central1/subnetworks/v'

Solusi

Masalahnya adalah Notebooks Service Account mencoba membuat instance tanpa izin yang benar.

Untuk memastikan bahwa Akun Layanan Notebook memiliki izin yang diperlukan untuk memastikan bahwa Akun Layanan Notebook dapat membuat instance Vertex AI Workbench dalam jaringan VPC Bersama, minta administrator untuk memberikan Akun Layanan Notebook peran Compute Network User (roles/compute.networkUser) peran IAM di project host. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Peran bawaan ini berisi izin yang diperlukan untuk memastikan bahwa Akun Layanan Notebook dapat membuat instance Vertex AI Workbench dalam jaringan VPC Bersama. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk memastikan bahwa Akun Layanan Notebook dapat membuat instance Vertex AI Workbench dalam jaringan VPC Bersama:

  • Untuk menggunakan subnetwork: compute.subnetworks.use

Administrator Anda mungkin juga dapat memberikan izin ini kepada Akun Layanan Notebook dengan peran khusus atau peran bawaan lainnya.

Tidak dapat membuat instance Vertex AI Workbench dengan penampung kustom

Masalah

Tidak ada opsi untuk menggunakan penampung kustom saat membuat instance Vertex AI Workbench di konsol Google Cloud.

Solusi

Menambahkan penampung kustom ke instance Vertex AI Workbench tidak didukung, dan Anda tidak dapat menambahkan penampung kustom menggunakan konsol Google Cloud.

Sebaiknya tambahkan lingkungan conda, bukan menggunakan penampung kustom.

Anda dapat menambahkan penampung kustom ke instance Vertex AI Workbench menggunakan Notebooks API, tetapi kemampuan ini tidak didukung.

Tombol pasang penyimpanan bersama tidak ada

Masalah

Tombol Mount shared storage tidak ada di tab File Browser di antarmuka JupyterLab.

Solusi

Izin storage.buckets.list diperlukan agar tombol Mount shared storage muncul di antarmuka JupyterLab instance Vertex AI Workbench Anda. Minta administrator untuk memberikan izin storage.buckets.list ke akun layanan instance Vertex AI Workbench Anda di project.

Error 599 saat menggunakan Dataproc

Masalah

Mencoba membuat instance yang mendukung Dataproc akan menghasilkan pesan error seperti berikut:

HTTP 599: Unknown (Error from Gateway: [Timeout while connecting]
Exception while attempting to connect to Gateway server url.
Ensure gateway url is valid and the Gateway instance is running.)

Solusi

Dalam konfigurasi Cloud DNS, tambahkan entri Cloud DNS untuk domain *.googleusercontent.com.

Tidak dapat menginstal ekstensi JupyterLab pihak ketiga

Masalah

Mencoba menginstal ekstensi JupyterLab pihak ketiga akan menghasilkan pesan Error: 500.

Solusi

Ekstensi JupyterLab pihak ketiga tidak didukung di instance Vertex AI Workbench.

Tidak dapat mengedit virtual machine yang mendasarinya

Masalah

Saat mencoba mengedit virtual machine (VM) yang mendasari instance Vertex AI Workbench, Anda mungkin mendapatkan pesan error yang mirip dengan berikut ini:

Current principal doesn't have permission to mutate this resource.

Solusi

Error ini terjadi karena Anda tidak dapat mengedit VM yang mendasari instance menggunakan konsol Google Cloud atau Compute Engine API.

Untuk mengedit VM yang mendasari instance Vertex AI Workbench, gunakan metode projects.locations.instances.patch di Notebooks API atau perintah gcloud workbench instances update di Google Cloud SDK

Paket pip tidak tersedia setelah menambahkan lingkungan conda

Masalah

Paket pip tidak tersedia setelah Anda menambahkan kernel berbasis conda.

Solusi

Untuk mengatasi masalah ini, lihat Menambahkan lingkungan conda dan coba hal berikut:

  • Pastikan Anda menggunakan variabel DL_ANACONDA_ENV_HOME dan variabel tersebut berisi nama lingkungan Anda.

  • Pastikan pip berada di jalur yang mirip dengan opt/conda/envs/ENVIRONMENT/bin/pip. Anda dapat menjalankan perintah which pip untuk mendapatkan jalur.

Tidak dapat mengakses atau menyalin data instance dengan akses satu pengguna

Masalah

Data pada instance dengan akses satu pengguna tidak dapat diakses.

Untuk instance Vertex AI Workbench yang disiapkan dengan akses satu pengguna, hanya satu pengguna tertentu (pemilik) yang dapat mengakses data pada instance.

Solusi

Untuk mengakses atau menyalin data saat Anda bukan pemilik instance, buka kasus dukungan.

Penghentian yang tidak terduga

Masalah

Instance Vertex AI Workbench Anda dinonaktifkan secara tiba-tiba.

Solusi

Jika instance Anda berhenti tiba-tiba, ini mungkin karena penghentian saat tidak ada aktivitas dimulai.

Jika Anda mengaktifkan penghentian saat tidak ada aktivitas, instance akan dihentikan saat tidak ada aktivitas kernel selama jangka waktu yang ditentukan. Misalnya, menjalankan sel atau pencetakan output baru ke notebook adalah aktivitas yang mereset timer waktu tunggu tidak ada aktivitas. Penggunaan CPU tidak mereset timer waktu tunggu tidak ada aktivitas.

Log instance menampilkan error koneksi atau waktu tunggu habis

Masalah

Log instance Vertex AI Workbench Anda menampilkan error koneksi atau waktu tunggu habis.

Solusi

Jika Anda melihat error koneksi atau waktu tunggu habis di log instance, pastikan server Jupyter berjalan di port 8080. Ikuti langkah-langkah di bagian Memverifikasi bahwa API internal Jupyter aktif.

Jika Anda telah menonaktifkan External IP dan menggunakan jaringan VPC pribadi, pastikan Anda juga telah mengikuti dokumentasi opsi konfigurasi jaringan. Pertimbangkan hal berikut:

Log instance menampilkan 'Tidak dapat menghubungi Jupyter API' 'ReadTimeoutError'

Masalah

Log instance Vertex AI Workbench Anda menampilkan error seperti:

notebooks_collection_agent. Unable to contact Jupyter API:
HTTPConnectionPool(host=\'127.0.0.1\', port=8080):
Max retries exceeded ReadTimeoutError(\"HTTPConnectionPool(host=\'127.0.0.1\', port=8080

Solusi

Ikuti langkah-langkah di bagian Log instance menampilkan bagian error koneksi atau waktu tunggu habis. Anda juga dapat mencoba mengubah skrip Agen Pengumpulan Notebook untuk mengubah HTTP_TIMEOUT_SESSION menjadi nilai yang lebih besar, misalnya: 60, untuk membantu memverifikasi apakah permintaan telah gagal karena panggilan memerlukan waktu terlalu lama untuk merespons atau URL yang diminta tidak dapat dijangkau.

Notebook terkelola

Bagian ini menjelaskan langkah-langkah pemecahan masalah untuk notebook terkelola.

Menghubungkan ke dan membuka JupyterLab

Bagian ini menjelaskan pemecahan masalah terkait koneksi ke dan membuka JupyterLab.

Tidak ada yang terjadi setelah mengklik Open JupyterLab

Masalah

Saat Anda mengklik Open JupyterLab, tidak ada yang terjadi.

Solusi

Pastikan browser Anda tidak memblokir tab baru agar tidak terbuka secara otomatis. JupyterLab akan terbuka di tab browser baru.

Tidak dapat terhubung dengan instance notebook terkelola menggunakan SSH

Masalah

Tidak ada opsi untuk terhubung dengan instance notebook terkelola menggunakan SSH.

Solusi

Akses SSH ke instance notebook terkelola tidak tersedia.

Tidak dapat mengakses terminal di instance notebook terkelola

Masalah

Jika Anda tidak dapat mengakses terminal atau tidak dapat menemukan jendela terminal di peluncur, mungkin karena instance notebook terkelola Anda tidak mengaktifkan akses terminal.

Solusi

Anda harus membuat instance notebook terkelola baru dengan mengaktifkan opsi Akses terminal. Opsi ini tidak dapat diubah setelah pembuatan instance.

Error 502 saat membuka JupyterLab

Masalah

Error 502 mungkin berarti bahwa instance notebook terkelola Anda belum siap.

Solusi

Tunggu beberapa menit, muat ulang tab browser konsol Google Cloud, lalu coba lagi.

Membuka notebook menyebabkan pesan error 524 (A Timeout Occurred)

Masalah

Error 524 biasanya merupakan indikasi bahwa agen Inverting Proxy tidak terhubung ke server Inverting Proxy atau permintaan memerlukan waktu terlalu lama di sisi server backend (Jupyter). Penyebab umum error ini mencakup masalah jaringan, agen Inverting Proxy tidak berjalan, atau layanan Jupyter tidak berjalan.

Solusi

Pastikan instance notebook terkelola Anda telah dimulai.

Notebook tidak responsif

Masalah

instance notebook terkelola tidak menjalankan sel atau tampaknya terhenti.

Solusi

Pertama, coba mulai ulang kernel dengan mengklik Kernel dari menu atas, lalu Mulai ulang Kernel. Jika tidak berhasil, Anda dapat mencoba langkah berikut:

  • Muat ulang halaman browser JupyterLab. Output sel yang tidak disimpan tidak akan dipertahankan, jadi Anda harus menjalankan sel tersebut lagi untuk menghasilkan ulang output.
  • Reset instance.

Bermigrasi ke instance Vertex AI Workbench

Bagian ini menjelaskan metode untuk mendiagnosis dan menyelesaikan masalah terkait migrasi dari instance notebook terkelola ke instance Vertex AI Workbench.

Tidak dapat menemukan kernel yang ada di instance notebook terkelola

Masalah

Kernel yang ada di instance notebook terkelola tidak muncul di instance Vertex AI Workbench tempat Anda melakukan migrasi.

Penampung kustom muncul sebagai kernel di notebook terkelola. Alat migrasi Vertex AI Workbench tidak mendukung migrasi penampung kustom.

Solusi

Untuk mengatasi masalah ini, tambahkan lingkungan conda ke instance Vertex AI Workbench Anda.

Versi framework yang berbeda di instance yang dimigrasikan

Masalah

Framework yang ada di instance notebook terkelola Anda adalah versi yang berbeda dengan yang ada di instance Vertex AI Workbench yang Anda migrasikan.

Instance Vertex AI Workbench menyediakan kumpulan versi framework default. Alat migrasi tidak menambahkan versi framework dari instance notebook terkelola asli Anda. Lihat perilaku alat migrasi default.

Solusi

Untuk menambahkan versi framework tertentu, tambahkan lingkungan conda ke instance Vertex AI Workbench.

GPU tidak dimigrasikan ke instance Vertex AI Workbench baru

Masalah

GPU yang ada di instance notebook terkelola Anda tidak ada di instance Vertex AI Workbench tempat Anda melakukan migrasi.

Instance Vertex AI Workbench mendukung kumpulan GPU default. Jika GPU di instance notebook terkelola asli Anda tidak tersedia, instance Anda akan dimigrasikan tanpa GPU.

Solusi

Setelah migrasi, Anda dapat menambahkan GPU ke instance Vertex AI Workbench dengan menggunakan metode projects.locations.instances.patch di Notebooks API atau perintah gcloud workbench instances update di Google Cloud SDK.

Jenis mesin instance yang dimigrasikan berbeda

Masalah

Jenis mesin instance notebook terkelola Anda berbeda dengan instance Vertex AI Workbench yang Anda migrasikan.

Instance Vertex AI Workbench tidak mendukung semua jenis mesin. Jika jenis mesin di instance notebook terkelola asli tidak tersedia, instance Anda akan dimigrasikan ke jenis mesin e2-standard-4.

Solusi

Setelah migrasi, Anda dapat mengubah jenis mesin instance Vertex AI Workbench menggunakan metode projects.locations.instances.patch di Notebooks API atau perintah gcloud workbench instances update di Google Cloud SDK.

Kuota GPU telah terlampaui

Masalah

Anda tidak dapat membuat instance notebook terkelola dengan GPU.

Solusi

Tentukan jumlah GPU yang tersedia di project Anda dengan memeriksa halaman kuota. Jika GPU tidak tercantum di halaman kuota, atau Anda memerlukan kuota GPU tambahan, Anda dapat meminta penambahan kuota. Lihat Meminta batas kuota yang lebih tinggi.

Menggunakan image container

Bagian ini menjelaskan pemecahan masalah terkait penggunaan image container.

Image container tidak muncul sebagai kernel di JupyterLab

Masalah

Image container yang tidak memiliki kernelspec yang valid tidak berhasil dimuat sebagai kernel di JupyterLab.

Solusi

Pastikan penampung Anda memenuhi persyaratan kami. Untuk informasi selengkapnya, lihat persyaratan penampung kustom.

Koneksi notebook terputus pada tugas yang berjalan lama

Masalah

Jika Anda melihat pesan error berikut saat menjalankan tugas di notebook, hal ini mungkin disebabkan oleh permintaan yang terlalu lama dimuat, atau penggunaan CPU atau memori yang tinggi, yang dapat membuat Layanan Jupyter tidak responsif.

{"log":"2021/06/29 18:10:33 failure fetching a VM ID: compute: Received 500
`internal error`\n","stream":"stderr","time":"2021-06-29T18:10:33.383650241Z"}
{"log":"2021/06/29 18:38:26 Websocket failure: failed to read a websocket
message from the server: read tcp [::1]:40168-\u003e[::1]:8080: use of closed
network connection\n","stream":"stderr","time":"2021-06-29T18:38:26.057622824Z"}

Solusi

Masalah ini disebabkan oleh menjalankan tugas yang berjalan lama dalam notebook. Untuk menjalankan tugas yang mungkin memerlukan waktu lama untuk diselesaikan, sebaiknya gunakan eksekutor.

Menggunakan eksekutor

Bagian ini menjelaskan pemecahan masalah terkait penggunaan eksekutor.

Penginstalan paket tidak tersedia untuk eksekutor

Masalah

Eksekutor menjalankan kode notebook di lingkungan yang terpisah dari kernel tempat Anda menjalankan kode file notebook. Oleh karena itu, beberapa paket yang Anda instal mungkin tidak tersedia di lingkungan eksekutor.

Solusi

Untuk mengatasi masalah ini, lihat Memastikan penginstalan paket tersedia untuk eksekutor.

401 atau 403 error saat menjalankan kode notebook menggunakan eksekutor

Masalah

Error 401 atau 403 saat Anda menjalankan eksekutor dapat berarti bahwa eksekutor tidak dapat mengakses resource.

Solusi

Lihat hal berikut untuk mengetahui kemungkinan penyebabnya:

  • Eksekutor menjalankan kode notebook Anda dalam project tenant yang terpisah dari project instance notebook terkelola Anda. Oleh karena itu, saat Anda mengakses resource melalui kode yang dijalankan oleh eksekutor, eksekutor mungkin tidak terhubung ke project Google Cloud yang benar secara default. Untuk mengatasi masalah ini, gunakan pilihan project eksplisit.

  • Secara default, instance notebook terkelola Anda dapat memiliki akses ke resource yang ada dalam project yang sama. Oleh karena itu, saat Anda menjalankan kode file notebook secara manual, resource ini tidak memerlukan autentikasi tambahan. Namun, karena eksekutor berjalan dalam project tenant terpisah, eksekutor tersebut tidak memiliki akses default yang sama. Untuk mengatasi masalah ini, autentikasi akses menggunakan akun layanan.

  • Eksekutor tidak dapat menggunakan kredensial pengguna akhir untuk mengautentikasi akses ke resource, misalnya perintah gcloud auth login. Untuk mengatasi masalah ini, autentikasi akses menggunakan akun layanan.

exited with a non-zero status of 127 error saat menggunakan eksekutor

Masalah

Error exited with a non-zero status of 127, atau error "perintah tidak ditemukan", dapat terjadi saat Anda menggunakan eksekutor untuk menjalankan kode pada penampung kustom yang tidak menginstal ekstensi nbexecutor.

Solusi

Untuk memastikan container kustom Anda memiliki ekstensi nbexecutor, Anda dapat membuat image container turunan dari image Deep Learning Containers. Image Deep Learning Containers menyertakan ekstensi nbexecutor.

Pesan error konfigurasi jaringan layanan tidak valid

Masalah

Error ini mungkin terlihat seperti berikut:

Invalid Service Networking configuration. Couldn't find free blocks in allocated IP ranges.
Please use a valid range using: /24 mask or below (/23,/22, etc).

Artinya, tidak ada blok bebas yang ditemukan dalam rentang IP yang dialokasikan pada jaringan Anda.

Solusi

Gunakan subnet mask dari /24 atau yang lebih rendah. Buat rentang alamat IP yang dialokasikan lebih besar dan tambahkan rentang ini dengan mengubah koneksi layanan pribadi untuk servicenetworking-googleapis-com.

Untuk informasi selengkapnya, lihat Menyiapkan jaringan.

Tidak dapat menginstal ekstensi JupyterLab pihak ketiga

Masalah

Mencoba menginstal ekstensi JupyterLab pihak ketiga akan menghasilkan pesan Error: 500.

Solusi

Ekstensi JupyterLab pihak ketiga tidak didukung di instance notebook terkelola.

Tidak dapat mengakses atau menyalin data instance dengan akses satu pengguna

Masalah

Data pada instance dengan akses satu pengguna tidak dapat diakses.

Solusi

Untuk instance notebook terkelola yang disiapkan dengan akses pengguna tunggal, hanya satu pengguna tertentu (pemilik) yang dapat mengakses data pada instance.

Untuk mengakses atau menyalin data saat Anda bukan pemilik instance, buka kasus dukungan.

Penghentian yang tidak terduga

Masalah

Instance Vertex AI Workbench Anda dinonaktifkan secara tiba-tiba.

Solusi

Jika instance Anda berhenti tiba-tiba, ini mungkin karena penghentian saat tidak ada aktivitas dimulai.

Jika Anda mengaktifkan penghentian saat tidak ada aktivitas, instance akan dihentikan saat tidak ada aktivitas kernel selama jangka waktu yang ditentukan. Misalnya, menjalankan sel atau pencetakan output baru ke notebook adalah aktivitas yang mereset timer waktu tunggu tidak ada aktivitas. Penggunaan CPU tidak mereset timer waktu tunggu tidak ada aktivitas.

Memulihkan instance

Masalah

Pemulihan instance notebook terkelola setelah dihapus tidak didukung.

Solusi

Untuk mencadangkan data di instance, Anda dapat menyimpan notebook ke GitHub.

Memulihkan data dari instance

Masalah

Pemulihan data dari instance notebook terkelola setelah dihapus tidak didukung.

Solusi

Untuk mencadangkan data di instance, Anda dapat menyimpan notebook ke GitHub.

Membuat instance notebook terkelola

Bagian ini menjelaskan pemecahan masalah terkait pembuatan instance notebook terkelola.

Error: Masalah saat membuat koneksi

Masalah

Anda mengalami error ini saat membuat instance:

We encountered a problem while creating a connection.

Service 'servicenetworking.googleapis.com' requires at least
one allocated range to have minimal size; please make sure
at least one allocated range will have prefix length at most '24'.

Solusi

Buat rentang IP yang dialokasikan yang lebih besar dari /24 dan tambahkan rentang ini dengan mengubah koneksi layanan pribadi untuk koneksi servicenetworking-googleapis-com.

Pembuatan instance akan mengakibatkan error ketersediaan resource

Masalah

Anda tidak dapat membuat instance karena error ketersediaan resource.

Error ini dapat terlihat seperti berikut:

Creating notebook INSTANCE_NAME: ZONE does not have
enough resources available to fulfill the request.
Retry later or try another zone in your configurations.

Error resource terjadi saat Anda meminta resource baru di zona yang tidak dapat mengakomodasi permintaan karena saat ini tidak tersedianya resource Compute Engine, seperti GPU atau CPU.

Error resource hanya berlaku untuk permintaan resource baru di zona dan tidak memengaruhi resource yang ada. Error resource tidak terkait dengan kuota Compute Engine Anda. Error resource bersifat sementara dan dapat sering berubah berdasarkan permintaan yang berfluktuasi.

Solusi

Untuk melanjutkan, coba langkah berikut:

  • Buat instance dengan jenis mesin yang berbeda.
  • Buat instance di zona lain.
  • Coba kirim permintaan lagi nanti.
  • Kurangi jumlah resource yang Anda minta. Misalnya, coba buat instance dengan lebih sedikit GPU, disk, vCPU, atau memori.

Memulai instance mengakibatkan error ketersediaan resource

Masalah

Anda tidak dapat memulai instance karena error ketersediaan resource.

Error ini dapat terlihat seperti berikut:

The zone ZONE_NAME doesn't have enough resources available to fulfill
the request. '(resource type:compute)'.

Error resource terjadi saat Anda mencoba memulai instance di zona yang tidak dapat mengakomodasi permintaan karena saat ini tidak tersedianya resource Compute Engine, seperti GPU atau CPU.

Error resource hanya berlaku untuk resource yang ditentukan dalam permintaan pada saat Anda mengirim permintaan, bukan untuk semua resource dalam zona. Error resource tidak terkait dengan kuota Compute Engine Anda. Error resource bersifat sementara dan dapat sering berubah berdasarkan permintaan yang berfluktuasi.

Solusi

Untuk melanjutkan, coba langkah berikut:

  • Ubah jenis mesin instance Anda.
  • Migrasikan file dan data Anda ke instance di zona lain.
  • Coba kirim permintaan lagi nanti.
  • Kurangi jumlah resource yang Anda minta. Misalnya, mulai instance lain dengan lebih sedikit GPU, disk, vCPU, atau memori.

No route to host pada koneksi keluar dari notebook terkelola

Masalah

Biasanya, satu-satunya rute yang dapat Anda lihat di konsol Google Cloud adalah rute yang diketahui oleh VPC Anda sendiri serta rentang yang dicadangkan saat Anda menyelesaikan konfigurasi Peering Jaringan VPC.

Instance notebook terkelola berada di jaringan yang dikelola Google dan menjalankan Jupyter versi yang dimodifikasi di namespace jaringan Docker dalam instance.

Antarmuka jaringan Docker dan bridge Linux pada instance ini dapat memilih IP lokal yang bertentangan dengan rentang IP yang diekspor melalui peering oleh VPC Anda. Keduanya biasanya berada dalam rentang 172.16.0.0/161 dan 192.168.10.0/24.

Dalam situasi ini, koneksi keluar dari instance ke rentang ini akan gagal dengan keluhan yang merupakan beberapa variasi No route to host meskipun rute VPC dibagikan dengan benar.

Solusi

Panggil ifconfig dalam sesi terminal dan pastikan tidak ada alamat IP di antarmuka virtual mana pun dalam instance yang bertentangan dengan rentang IP yang diekspor VPC Anda ke koneksi peering.

Notebook yang dikelola pengguna

Bagian ini menjelaskan langkah-langkah pemecahan masalah untuk notebook yang dikelola pengguna.

Menghubungkan ke dan membuka JupyterLab

Bagian ini menjelaskan pemecahan masalah terkait koneksi ke dan membuka JupyterLab.

Tidak ada yang terjadi setelah mengklik Open JupyterLab

Masalah

Saat Anda mengklik Open JupyterLab, tidak ada yang terjadi.

Solusi

Pastikan browser Anda tidak memblokir tab baru agar tidak terbuka secara otomatis. JupyterLab akan terbuka di tab browser baru.

Tidak ada akses server Inverting Proxy ke JupyterLab

Masalah

Anda tidak dapat mengakses JupyterLab.

Vertex AI Workbench menggunakan server Inverting Proxy internal Google untuk menyediakan akses ke JupyterLab. Setelan instance notebook yang dikelola pengguna, konfigurasi jaringan, dan faktor lainnya dapat mencegah akses ke JupyterLab.

Solusi

Gunakan SSH untuk terhubung ke JupyterLab dan pelajari lebih lanjut mengapa Anda tidak memiliki akses melalui Inverting Proxy.

Tidak dapat terhubung dengan instance notebook yang dikelola pengguna menggunakan SSH

Masalah

Anda tidak dapat terhubung ke instance menggunakan SSH melalui jendela terminal.

Instance notebook yang dikelola pengguna menggunakan Login OS untuk mengaktifkan akses SSH. Saat Anda membuat instance, Vertex AI Workbench akan mengaktifkan Login OS secara default dengan menetapkan kunci metadata enable-oslogin ke TRUE. Jika Anda tidak dapat menggunakan SSH untuk terhubung ke instance, kunci metadata ini mungkin perlu disetel ke TRUE.

Solusi

Guna mengaktifkan akses SSH untuk notebook yang dikelola pengguna bagi pengguna, selesaikan langkah-langkah melakukan konfigurasi peran Login OS di akun pengguna.

Membuka instance notebook yang dikelola pengguna menyebabkan error 403 (Forbidden)

Masalah

Error 403 (Forbidden) saat membuka instance notebook yang dikelola pengguna sering kali berarti ada masalah akses.

Solusi

Untuk memecahkan masalah akses, pertimbangkan tiga cara memberikan akses ke instance notebook yang dikelola pengguna:

  • Satu pengguna
  • Akun layanan
  • Editor project

Mode akses dikonfigurasi selama pembuatan instance notebook yang dikelola pengguna dan ditentukan dalam metadata notebook:

  • Satu pengguna: proxy-mode=mail, proxy-user-mail=user@domain.com
  • Akun layanan: proxy-mode=service_account
  • Editor project: proxy-mode=project_editors

Jika Anda tidak dapat mengakses notebook saat mengklik Open JupyterLab, coba langkah berikut:

Contoh berikut menunjukkan cara menentukan akun layanan saat Anda membuat instance:

gcloud notebooks instances create nb-1 \
  --vm-image-family=tf-latest-cpu \
  --metadata=proxy-mode=mail,proxy-user-mail=user@domain.com \
  --service-account=your_service_account@project_id.iam.gserviceaccount.com \
  --location=us-west1-a

Saat Anda mengklik Open JupyterLab untuk membuka notebook, notebook akan terbuka di tab browser baru. Jika Anda login ke lebih dari satu Akun Google, tab baru akan terbuka dengan Akun Google default Anda. Jika Anda tidak membuat instance notebook yang dikelola pengguna dengan Akun Google default, tab browser baru akan menampilkan error 403 (Forbidden).

Tidak ada akses JupyterLab, mode satu pengguna diaktifkan

Masalah

Anda tidak dapat mengakses JupyterLab.

Solusi

Jika pengguna tidak dapat mengakses JupyterLab dan akses instance ke JupyterLab disetel ke Single user only, coba hal berikut:

  1. Pada halaman notebook yang dikelola pengguna di konsol Google Cloud, klik nama instance Anda untuk membuka halaman Detail notebook.

  2. Di samping Lihat detail VM, klik Lihat di Compute Engine.

  3. Di halaman detail VM, klik Edit.

  4. Di bagian Metadata, verifikasi bahwa entri metadata proxy-mode disetel ke mail.

  5. Pastikan entri metadata proxy-user-mail disetel ke alamat email pengguna yang valid, bukan akun layanan.

  6. Klik Simpan.

  7. Pada halaman Notebook yang dikelola pengguna di konsol Google Cloud, lakukan inisialisasi metadata yang telah diperbarui dengan menghentikan instance dan memulai kembali instance untuk mencadangkannya kembali.

Membuka notebook menyebabkan pesan error 504 (Gateway Timeout)

Masalah

Hal ini merupakan indikasi waktu tunggu proxy internal atau waktu tunggu server backend (Jupyter). Hal ini dapat dilihat saat:

  • Permintaan tidak pernah mencapai server Inverting Proxy internal
  • Backend (Jupyter) menampilkan error 504.

Solusi

Buka kasus dukungan Google.

Membuka notebook menyebabkan pesan error 524 (A Timeout Occurred)

Masalah

Server Inverting Proxy internal belum menerima respons dari agen Inverting Proxy untuk permintaan tersebut dalam periode waktu tunggu. Agen Inverting Proxy berjalan di dalam instance notebook yang dikelola pengguna sebagai container Docker. Error 524 biasanya merupakan indikasi bahwa agen Inverting Proxy tidak terhubung ke server Inverting Proxy atau permintaan memerlukan waktu terlalu lama di sisi server backend (Jupyter). Kasus umum untuk error ini ada di sisi pengguna (misalnya, masalah jaringan, atau layanan agen Inverting Proxy tidak berjalan).

Solusi

Jika Anda tidak dapat mengakses notebook, pastikan instance notebook yang dikelola pengguna sudah dimulai, lalu coba langkah berikut:

Opsi 1: Jalankan alat diagnostik untuk memeriksa dan memperbaiki layanan inti notebook yang dikelola pengguna secara otomatis, memverifikasi penyimpanan yang tersedia, dan menghasilkan file log yang berguna. Untuk menjalankan alat ini dalam instance Anda, lakukan langkah-langkah berikut:

  1. Pastikan instance Anda menggunakan versi M58 atau yang lebih baru.

  2. Hubungkan ke instance Deep Learning VM Image Anda menggunakan SSH.

  3. Jalankan perintah berikut:

    sudo /opt/deeplearning/bin/diagnostic_tool.sh [--repair] [--bucket=$BUCKET]

    Perhatikan bahwa flag --repair dan beberapa flag --bucket bersifat opsional. Flag --repair akan mencoba memperbaiki error layanan inti yang umum, dan flag --bucket akan memungkinkan Anda menentukan bucket Cloud Storage untuk menyimpan file log yang dibuat.

    Output perintah ini akan menampilkan pesan status yang berguna untuk layanan inti notebook yang dikelola pengguna dan akan mengekspor file log temuannya.

Opsi 2: Gunakan langkah-langkah berikut untuk memeriksa persyaratan notebook yang dikelola pengguna secara terpisah.

Membuka notebook menyebabkan error 598 (Network read timeout)

Masalah

Server Inverting Proxy belum mendapatkan balasan dari agen Inverting Proxy sama sekali selama lebih dari 10 menit. Hal ini merupakan indikasi kuat atas masalah agen Inverting Proxy.

Solusi

Jika Anda tidak dapat mengakses notebook, coba langkah berikut:

Notebook tidak responsif

Masalah

Instance notebook yang dikelola pengguna tidak menjalankan sel atau tampak berhenti.

Solusi

Pertama, coba mulai ulang kernel dengan mengklik Kernel dari menu atas, lalu Mulai ulang Kernel. Jika tidak berhasil, Anda dapat mencoba langkah berikut:

  • Muat ulang halaman browser JupyterLab. Setiap output sel yang tidak disimpan tidak akan dipertahankan, jadi Anda harus menjalankan sel tersebut lagi untuk menghasilkan ulang output.
  • Dari sesi terminal di notebook, jalankan perintah top untuk melihat apakah ada proses yang menggunakan CPU.
  • Dari terminal, periksa jumlah kapasitas disk yang kosong menggunakan perintah df, atau periksa RAM yang tersedia menggunakan perintah free.
  • Matikan instance Anda dengan memilihnya dari halaman Notebook yang dikelola pengguna, lalu mengklik Stop. Setelah berhenti sepenuhnya, pilih dan klik Start.

Bermigrasi ke instance Vertex AI Workbench

Bagian ini menjelaskan metode untuk mendiagnosis dan menyelesaikan masalah terkait migrasi dari instance notebook yang dikelola pengguna ke instance Vertex AI Workbench.

Tidak dapat menemukan R, Beam, atau kernel lainnya yang ada di instance notebook yang dikelola pengguna

Masalah

Kernel yang ada di instance notebook yang dikelola pengguna tidak muncul di instance Vertex AI Workbench tempat Anda melakukan migrasi.

Beberapa kernel, seperti kernel R dan Beam, tidak tersedia di instance Vertex AI Workbench secara default. Migrasi kernel tersebut tidak didukung.

Solusi

Untuk mengatasi masalah ini, tambahkan lingkungan conda ke instance Vertex AI Workbench Anda.

Tidak dapat menyiapkan instance Dataproc Hub di instance Vertex AI Workbench

Masalah

Dataproc Hub tidak didukung di instance Vertex AI Workbench.

Solusi

Terus gunakan Dataproc Hub di instance notebook yang dikelola pengguna.

Versi framework yang berbeda di instance yang dimigrasikan

Masalah

Framework yang ada di instance notebook yang dikelola pengguna Anda memiliki versi yang berbeda dengan yang ada di instance Vertex AI Workbench yang Anda migrasikan.

Instance Vertex AI Workbench menyediakan kumpulan versi framework default. Alat migrasi tidak menambahkan versi framework dari instance notebook asli yang dikelola pengguna. Lihat perilaku alat migrasi default.

Solusi

Untuk menambahkan versi framework tertentu, tambahkan lingkungan conda ke instance Vertex AI Workbench.

GPU tidak dimigrasikan ke instance Vertex AI Workbench baru

Masalah

GPU yang ada di instance notebook yang dikelola pengguna tidak ada di instance Vertex AI Workbench tempat Anda melakukan migrasi.

Instance Vertex AI Workbench mendukung kumpulan GPU default. Jika GPU di instance notebook yang dikelola pengguna asli tidak tersedia, instance Anda akan dimigrasikan tanpa GPU.

Solusi

Setelah migrasi, Anda dapat menambahkan GPU ke instance Vertex AI Workbench menggunakan metode projects.locations.instances.patch di Notebooks API atau perintah gcloud workbench instances update di Google Cloud SDK.

Jenis mesin instance yang dimigrasikan berbeda

Masalah

Jenis mesin instance notebook yang dikelola pengguna berbeda dengan instance Vertex AI Workbench yang Anda migrasikan.

Instance Vertex AI Workbench tidak mendukung semua jenis mesin. Jika jenis mesin di instance notebook yang dikelola pengguna asli tidak tersedia, instance Anda akan dimigrasikan ke jenis mesin e2-standard-4.

Solusi

Setelah migrasi, Anda dapat mengubah jenis mesin instance Vertex AI Workbench menggunakan metode projects.locations.instances.patch di Notebooks API atau perintah gcloud workbench instances update di Google Cloud SDK.

Bekerja dengan file

Bagian ini menjelaskan pemecahan masalah terkait file untuk instance notebook yang dikelola pengguna.

Download file dinonaktifkan, tetapi pengguna tetap dapat mendownload file

Masalah

Untuk instance notebook yang dikelola pengguna Dataproc Hub, penonaktifan download file dari antarmuka pengguna JupyterLab tidak didukung. Instance notebook yang dikelola pengguna yang menggunakan framework Dataproc Hub mengizinkan download file meskipun Anda tidak memilih Enable file downloading from JupyterLab UI saat membuat instance.

Solusi

Instance notebook yang dikelola pengguna Dataproc Hub tidak mendukung pembatasan download file.

File yang didownload terpotong atau tidak selesai didownload

Masalah

Saat Anda mendownload file dari instance notebook yang dikelola pengguna, setelan waktu tunggu pada agen penerusan proxy akan membatasi waktu koneksi untuk penyelesaian download. Jika proses download terlalu lama, file yang Anda download dapat terpotong atau mencegahnya didownload.

Solusi

Untuk mendownload file, salin file Anda ke Cloud Storage, lalu download file dari Cloud Storage.

Pertimbangkan untuk memigrasikan file dan data ke instance notebook yang dikelola pengguna baru.

Setelah memulai ulang VM, file lokal tidak dapat direferensikan dari terminal notebook

Masalah

Terkadang, setelah memulai ulang instance notebook yang dikelola pengguna, file lokal tidak dapat direferensikan dari dalam terminal notebook.

Solusi

Ini adalah masalah umum. Untuk mereferensikan file lokal dari dalam terminal notebook, buat kembali direktori kerja Anda saat ini menggunakan perintah berikut terlebih dahulu:

cd PWD

Dalam perintah ini, ganti PWD dengan direktori kerja Anda saat ini. Misalnya, jika direktori kerja Anda saat ini adalah /home/jupyter/, gunakan perintah cd /home/jupyter/.

Setelah membuat kembali direktori kerja saat ini, file lokal Anda dapat direferensikan dari dalam terminal notebook.

Membuat instance notebook yang dikelola pengguna

Bagian ini menjelaskan pemecahan masalah terkait pembuatan instance notebook yang dikelola pengguna.

Kuota GPU telah terlampaui

Masalah

Anda tidak dapat membuat instance notebook yang dikelola pengguna dengan GPU.

Solusi

Tentukan jumlah GPU yang tersedia di project Anda dengan memeriksa halaman kuota. Jika GPU tidak tercantum di halaman kuota, atau Anda memerlukan kuota GPU tambahan, Anda dapat meminta penambahan kuota. Lihat Meminta batas kuota yang lebih tinggi.

Instance tetap dalam status tertunda tanpa batas waktu

Masalah

Setelah membuat instance notebook yang dikelola pengguna, instance tersebut akan tetap berada dalam status tertunda tanpa batas waktu. Error seperti berikut mungkin muncul dalam log serial:

Could not resolve host: notebooks.googleapis.com

Solusi

Instance Anda tidak dapat terhubung ke server Notebooks API karena konfigurasi Cloud DNS atau masalah jaringan lainnya. Untuk mengatasi masalah ini, periksa konfigurasi Cloud DNS dan jaringan Anda. Untuk informasi selengkapnya, lihat bagian opsi konfigurasi jaringan.

Instance notebook yang dikelola pengguna baru tidak dibuat (izin tidak memadai)

Masalah

Biasanya perlu waktu sekitar satu menit untuk membuat instance notebook yang dikelola pengguna. Jika instance notebook yang dikelola pengguna baru tetap berada dalam status pending tanpa batas waktu, itu mungkin karena akun layanan yang digunakan untuk memulai instance notebook yang dikelola pengguna tidak memiliki izin yang diperlukan di project Google Cloud Anda.

Anda dapat memulai instance notebook yang dikelola pengguna dengan akun layanan kustom yang Anda buat atau dalam mode satu pengguna dengan ID pengguna. Jika Anda memulai instance notebook yang dikelola pengguna dalam mode satu pengguna, instance notebook yang dikelola pengguna akan memulai proses booting menggunakan akun layanan default Compute Engine sebelum mengalihkan kontrol ke ID pengguna Anda.

Solusi

Untuk memverifikasi akun layanan memiliki izin yang sesuai, ikuti langkah-langkah berikut:

Konsol

  1. Buka halaman IAM di konsol Google Cloud.

    Buka halaman IAM

  2. Tentukan akun layanan yang digunakan dengan instance notebook yang dikelola pengguna, yang merupakan salah satu dari berikut:

    • Akun layanan kustom yang Anda tentukan saat membuat instance notebook yang dikelola pengguna.

    • Akun layanan default Compute Engine untuk project Google Cloud Anda, yang digunakan saat Anda memulai instance notebook yang dikelola pengguna dalam mode satu pengguna. Akun layanan default Compute Engine untuk project Google Cloud Anda diberi nama PROJECT_NUMBER-compute@developer.gserviceaccount.com. Contoh: 113377992299-compute@developer.gserviceaccount.com.

  3. Pastikan akun layanan Anda memiliki peran Notebooks Runner (roles/notebooks.runner). Jika tidak, berikan peran Notebooks Runner (roles/notebooks.runner) ke akun layanan.

Untuk mengetahui informasi selengkapnya, baca bagian Memberikan, mengubah, dan mencabut akses ke resource dalam dokumentasi IAM.

gcloud

  1. Jika Anda belum melakukannya, instal Google Cloud CLI.

  2. Dapatkan nama dan nomor project untuk project Google Cloud Anda dengan perintah berikut. Ganti PROJECT_ID dengan project ID untuk project Google Cloud Anda.

    gcloud projects describe PROJECT_ID
    

    Anda akan melihat output yang mirip dengan berikut ini, yang menampilkan nama (name:) dan nomor project (projectNumber:) untuk project Anda.

    createTime: '2018-10-18T21:03:31.408Z'
    lifecycleState: ACTIVE
    name: my-project-name
    parent:
     id: '396521612403'
     type: folder
    projectId: my-project-id-1234
    projectNumber: '113377992299'
    
  3. Tentukan akun layanan yang digunakan dengan instance notebook yang dikelola pengguna, yang merupakan salah satu dari berikut:

    • Akun layanan kustom yang Anda tentukan saat membuat instance notebook yang dikelola pengguna.

    • Akun layanan default Compute Engine untuk project Google Cloud Anda, yang digunakan saat Anda memulai instance notebook yang dikelola pengguna dalam mode satu pengguna. Akun layanan default Compute Engine untuk project Google Cloud Anda diberi nama PROJECT_NUMBER-compute@developer.gserviceaccount.com. Contoh: 113377992299-compute@developer.gserviceaccount.com.

  4. Tambahkan peran roles/notebooks.runner ke akun layanan dengan perintah berikut. Ganti project-name dengan nama project Anda, dan ganti service-account-id dengan ID akun layanan untuk instance notebook yang dikelola pengguna.

    gcloud projects add-iam-policy-binding project-name \
     --member serviceAccount:service-account-id \
     --role roles/notebooks.runner
    

Pembuatan instance akan menghasilkan error Permission denied

Masalah

Akun layanan pada instance menyediakan akses ke layanan Google Cloud lainnya. Anda dapat menggunakan akun layanan apa pun dalam project yang sama, tetapi Anda harus memiliki izin Service Account User (iam.serviceAccounts.actAs) untuk membuat instance. Jika tidak ditentukan, akun layanan default Compute Engine akan digunakan.

Solusi

Saat membuat instance, pastikan pengguna yang membuat instance memiliki izin iam.serviceAccounts.ActAsuntuk akun layanan yang ditentukan.

Contoh berikut menunjukkan cara menentukan akun layanan saat Anda membuat instance:

gcloud notebooks instances create nb-1 \
  --vm-image-family=tf-latest-cpu \
  --service-account=your_service_account@project_id.iam.gserviceaccount.com \
  --location=us-west1-a

Untuk memberikan peran Service Account User, lihat Mengelola akses ke akun layanan.

Membuat instance akan menghasilkan error already exists

Masalah

Saat membuat instance, pastikan instance notebook yang dikelola pengguna dengan nama yang sama tidak dihapus sebelumnya oleh Compute Engine dan masih ada di database Notebooks API.

Solusi

Contoh berikut menunjukkan cara membuat daftar instance menggunakan Notebooks API dan memverifikasi statusnya.

gcloud notebooks instances list --location=LOCATION

Jika status instance adalah DELETED, jalankan perintah berikut untuk menghapusnya secara permanen.

gcloud notebooks instances delete INSTANCE_NAME --location=LOCATION

Tidak dapat membuat instance di VPC Bersama

Masalah

Anda tidak dapat membuat instance di VPC Bersama.

Solusi

Jika menggunakan VPC Bersama, Anda harus menambahkan host dan project layanan ke perimeter layanan. Dalam project host, Anda juga harus memberikan peran Compute Network User (roles/compute.networkUser) ke Agen Layanan Notebooks dari project layanan. Untuk mengetahui informasi selengkapnya, lihat Mengelola perimeter layanan.

Pembuatan instance akan mengakibatkan error ketersediaan resource

Masalah

Anda tidak dapat membuat instance karena error ketersediaan resource.

Error ini dapat terlihat seperti berikut:

Creating notebook INSTANCE_NAME: ZONE does not have enough
resources available to fulfill the request. Retry later or try another zone in
your configurations.

Error resource terjadi saat Anda meminta resource baru di zona yang tidak dapat mengakomodasi permintaan karena saat ini tidak tersedianya resource Compute Engine, seperti GPU atau CPU.

Error resource hanya berlaku untuk permintaan resource baru di zona dan tidak memengaruhi resource yang ada. Error resource tidak terkait dengan kuota Compute Engine Anda. Error resource bersifat sementara dan dapat sering berubah berdasarkan permintaan yang berfluktuasi.

Solusi

Untuk melanjutkan, Anda dapat mencoba hal berikut:

  • Buat instance dengan jenis mesin yang berbeda.
  • Buat instance di zona lain.
  • Coba kirim permintaan lagi nanti.
  • Kurangi jumlah resource yang Anda minta. Misalnya, coba buat instance dengan lebih sedikit GPU, disk, vCPU, atau memori.

Memulai instance mengakibatkan error ketersediaan resource

Masalah

Anda tidak dapat memulai instance karena error ketersediaan resource.

Error ini dapat terlihat seperti berikut:

The zone ZONE_NAME doesn't have enough resources available to fulfill
the request. '(resource type:compute)'.

Error resource terjadi saat Anda mencoba memulai instance di zona yang tidak dapat mengakomodasi permintaan karena saat ini tidak tersedianya resource Compute Engine, seperti GPU atau CPU.

Error resource hanya berlaku untuk resource yang ditentukan dalam permintaan pada saat Anda mengirim permintaan, bukan untuk semua resource dalam zona. Error resource tidak terkait dengan kuota Compute Engine Anda. Error resource bersifat sementara dan dapat sering berubah berdasarkan permintaan yang berfluktuasi.

Solusi

Untuk melanjutkan, Anda dapat mencoba hal berikut:

  • Ubah jenis mesin instance Anda.
  • Migrasikan file dan data Anda ke instance di zona lain.
  • Coba kirim permintaan lagi nanti.
  • Kurangi jumlah resource yang Anda minta. Misalnya, mulai instance lain dengan lebih sedikit GPU, disk, vCPU, atau memori.

Mengupgrade instance notebook yang dikelola pengguna

Bagian ini menjelaskan pemecahan masalah terkait upgrade instance notebook yang dikelola pengguna.

Tidak dapat melakukan upgrade karena tidak dapat memperoleh informasi disk instance

Masalah

Upgrade tidak didukung untuk instance notebook yang dikelola pengguna dengan satu disk.

Solusi

Sebaiknya Anda memigrasikan data pengguna ke instance notebook yang dikelola pengguna baru.

Tidak dapat melakukan upgrade karena instance tidak kompatibel dengan UEFI

Masalah

Vertex AI Workbench bergantung pada kompatibilitas UEFI untuk menyelesaikan upgrade.

Instance notebook yang dikelola pengguna yang dibuat dari beberapa image lama tidak kompatibel dengan UEFI, sehingga tidak dapat diupgrade.

Solusi

Untuk memverifikasi bahwa instance Anda kompatibel dengan UEFI, ketik perintah berikut di Cloud Shell atau lingkungan mana pun tempat Google Cloud CLI diinstal.

gcloud compute instances describe INSTANCE_NAME \
  --zone=ZONE | grep type

Ganti kode berikut:

  • INSTANCE_NAME: nama instance Anda
  • ZONE adalah zona tempat instance Anda berada.

Untuk memverifikasi bahwa image yang Anda gunakan untuk membuat instance kompatibel dengan UEFI, gunakan perintah berikut:

gcloud compute images describe VM_IMAGE_FAMILY \
  --project deeplearning-platform-release | grep type

Ganti VM_IMAGE_FAMILY dengan nama kelompok gambar yang Anda gunakan untuk membuat instance.

Jika instance atau image Anda tidak kompatibel dengan UEFI, Anda dapat mencoba memigrasikan data pengguna ke instance notebook yang dikelola pengguna yang baru. Caranya, ikuti langkah-langkah berikut:

  1. Pastikan image yang ingin Anda gunakan untuk membuat instance baru kompatibel dengan UEFI. Untuk melakukannya, ketik perintah berikut di Cloud Shell atau lingkungan mana pun tempat Google Cloud CLI diinstal.

    gcloud compute images describe VM_IMAGE_FAMILY \
      --project deeplearning-platform-release --format=json | grep type

    Ganti VM_IMAGE_FAMILY dengan nama kelompok gambar yang ingin Anda gunakan untuk membuat instance.

  2. Migrasikan data pengguna Anda ke instance notebook yang dikelola pengguna baru.

Instance notebook yang dikelola pengguna tidak dapat diakses setelah upgrade

Masalah

Jika instance notebook yang dikelola pengguna tidak dapat diakses setelah upgrade, mungkin terjadi kegagalan selama penggantian image boot disk.

Instance notebook yang dikelola pengguna yang dapat diupgrade adalah dual-disk, dengan satu boot disk dan satu disk data. Proses upgrade mengupgrade boot disk ke image baru sekaligus mempertahankan data Anda di disk data.

Solusi

Selesaikan langkah-langkah berikut untuk melampirkan gambar baru yang valid ke disk booting.

  1. Untuk menyimpan nilai yang akan Anda gunakan guna menyelesaikan prosedur ini, ketik perintah berikut di Cloud Shell atau lingkungan mana pun dengan Google Cloud CLI diinstal.

    export INSTANCE_NAME=MY_INSTANCE_NAME
    export PROJECT_ID=MY_PROJECT_ID
    export ZONE=MY_ZONE

    Ganti kode berikut:

    • MY_INSTANCE_NAME: nama instance Anda
    • MY_PROJECT_ID: project ID Anda
    • MY_ZONE adalah zona tempat instance Anda berada.
  2. Gunakan perintah berikut untuk menghentikan instance:

    gcloud compute instances stop $INSTANCE_NAME \
      --project=$PROJECT_ID --zone=$ZONE
  3. Lepaskan disk data dari instance.

    gcloud compute instances detach-disk $INSTANCE_NAME --device-name=data \
      --project=$PROJECT_ID --zone=$ZONE
  4. Menghapus VM instance.

    gcloud compute instances delete $INSTANCE_NAME --keep-disks=all --quiet \
      --project=$PROJECT_ID --zone=$ZONE
  5. Gunakan Notebooks API untuk menghapus instance notebook yang dikelola pengguna.

    gcloud notebooks instances delete $INSTANCE_NAME \
      --project=$PROJECT_ID --location=$ZONE
  6. Buat instance notebook yang dikelola pengguna menggunakan nama yang sama seperti instance Anda sebelumnya.

    gcloud notebooks instances create $INSTANCE_NAME \
      --vm-image-project="deeplearning-platform-release" \
      --vm-image-family=MY_VM_IMAGE_FAMILY \
      --instance-owners=MY_INSTANCE_OWNER \
      --machine-type=MY_MACHINE_TYPE \
      --service-account=MY_SERVICE_ACCOUNT \
      --accelerator-type=MY_ACCELERATOR_TYPE \
      --accelerator-core-count=MY_ACCELERATOR_CORE_COUNT \
      --install-gpu-driver \
      --project=$PROJECT_ID \
      --location=$ZONE

    Ganti kode berikut:

    • MY_VM_IMAGE_FAMILY: nama kelompok gambar
    • MY_INSTANCE_OWNER: pemilik instance Anda
    • MY_MACHINE_TYPE: jenis mesin VM instance Anda
    • MY_SERVICE_ACCOUNT: akun layanan yang akan digunakan dengan instance ini, atau gunakan "default"
    • MY_ACCELERATOR_TYPE: jenis akselerator; misalnya, "NVIDIA_TESLA_T4"
    • MY_ACCELERATOR_CORE_COUNT: jumlah inti; misalnya, 1

Memantau status kondisi instance notebook yang dikelola pengguna

Bagian ini menjelaskan cara memecahkan masalah terkait error status kesehatan pemantauan.

Kegagalan status docker-proxy-agent

Ikuti langkah-langkah berikut setelah status docker-proxy-agent gagal:

  1. Pastikan agen Inverting Proxy sedang berjalan. Jika tidak, lanjutkan ke langkah 3.

  2. Mulai ulang agen Inverting Proxy.

  3. Daftar ulang ke server Inverting Proxy.

Kegagalan status docker-service

Ikuti langkah-langkah berikut setelah status docker-service gagal:

  1. Pastikan layanan Docker berjalan.

  2. Mulai ulang layanan Docker.

Kegagalan status jupyter-service

Ikuti langkah-langkah berikut setelah status jupyter-service gagal:

  1. Pastikan layanan Jupyter berjalan.

  2. Mulai ulang layanan Jupyter.

Kegagalan status jupyter-api

Ikuti langkah-langkah berikut setelah status jupyter-api gagal:

  1. Verifikasi bahwa API internal Jupyter aktif.

  2. Mulai ulang layanan Jupyter.

Persentase penggunaan boot disk

Status ruang boot disk dianggap tidak responsif jika kapasitas disk lebih dari 85% penuh.

Jika status ruang boot disk Anda tidak responsif, coba langkah berikut:

  1. Dari sesi terminal di instance notebook yang dikelola pengguna atau menggunakan ssh untuk terhubung, periksa jumlah ruang disk yang kosong menggunakan perintah df -H.

  2. Gunakan perintah find . -type d -size +100M untuk membantu Anda menemukan file besar yang mungkin dapat dihapus, tetapi jangan menghapusnya kecuali jika Anda yakin dapat melakukannya dengan aman. Jika tidak yakin, Anda bisa mendapatkan bantuan dari tim dukungan.

  3. Jika langkah-langkah sebelumnya tidak menyelesaikan masalah Anda, dapatkan dukungan.

Persentase penggunaan disk data

Status ruang disk data tidak responsif jika ruang disk lebih besar dari 85% penuh.

Jika status ruang disk data Anda tidak responsif, coba langkah berikut:

  1. Dari sesi terminal di instance notebook yang dikelola pengguna atau menggunakan ssh untuk terhubung, periksa jumlah ruang disk yang kosong menggunakan perintah df -h -T /home/jupyter.

  2. Menghapus file besar untuk meningkatkan kapasitas disk yang tersedia. Gunakan perintah find . -type d -size +100M untuk membantu Anda menemukan file berukuran besar.

  3. Jika langkah-langkah sebelumnya tidak menyelesaikan masalah Anda, dapatkan dukungan.

Tidak dapat menginstal ekstensi JupyterLab pihak ketiga

Masalah

Mencoba menginstal ekstensi JupyterLab pihak ketiga akan menghasilkan pesan Error: 500.

Solusi

Ekstensi JupyterLab pihak ketiga tidak didukung di instance notebook yang dikelola pengguna.

Memulihkan instance

Masalah

Pemulihan instance notebook yang dikelola pengguna setelah dihapus tidak didukung.

Solusi

Untuk mencadangkan data di instance, Anda dapat menyimpan notebook ke GitHub atau membuat snapshot disk.

Memulihkan data dari instance

Masalah

Pemulihan data dari instance notebook yang dikelola pengguna setelah dihapus tidak didukung.

Solusi

Untuk mencadangkan data di instance, Anda dapat menyimpan notebook ke GitHub atau membuat snapshot disk

Tidak dapat meningkatkan memori bersama

Masalah

Anda tidak dapat meningkatkan memori bersama di instance notebook yang dikelola pengguna yang ada.

Solusi

Namun, Anda dapat menentukan ukuran memori bersama saat membuat instance notebook yang dikelola pengguna menggunakan kunci metadata container-custom-params, dengan nilai seperti berikut:

--shm-size=SHARED_MEMORY_SIZE gb

Ganti SHARED_MEMORY_SIZE dengan ukuran yang Anda inginkan dalam GB.

Prosedur yang bermanfaat

Bagian ini menjelaskan prosedur yang mungkin berguna bagi Anda.

Menggunakan SSH untuk terhubung ke instance notebook yang dikelola pengguna

Gunakan ssh untuk terhubung ke instance Anda dengan mengetikkan perintah berikut di Cloud Shell atau lingkungan apa pun tempat Google Cloud CLI diinstal.

gcloud compute ssh --project PROJECT_ID \
  --zone ZONE \
  INSTANCE_NAME -- -L 8080:localhost:8080

Ganti kode berikut:

  • PROJECT_ID: project ID Anda.
  • ZONE: Zona Google Cloud tempat instance Anda berada
  • INSTANCE_NAME: Nama instance Anda

Anda juga dapat terhubung ke instance dengan membuka halaman detail Compute Engine instance, lalu mengklik tombol SSH.

Mendaftar ulang dengan server Inverting Proxy

Untuk mendaftarkan ulang instance notebook yang dikelola pengguna dengan server Inverting Proxy internal, Anda dapat menghentikan dan memulai VM dari halaman notebook yang dikelola pengguna atau Anda dapat menggunakan ssh untuk terhubung ke instance notebook yang dikelola pengguna dan masukkan:

cd /opt/deeplearning/bin
sudo ./attempt-register-vm-on-proxy.sh

Memverifikasi status layanan Docker

Untuk memverifikasi status layanan Docker, Anda dapat menggunakan ssh untuk terhubung ke instance notebook yang dikelola pengguna, lalu masukkan:

sudo service docker status

Memverifikasi bahwa agen Inverting Proxy sedang berjalan

Untuk memverifikasi apakah notebook Agen Inverting Proxy sedang berjalan, gunakan ssh untuk terhubung ke instance notebook yang dikelola pengguna, lalu masukkan:

# Confirm Inverting Proxy agent Docker container is running (proxy-agent)
sudo docker ps

# Verify State.Status is running and State.Running is true.
sudo docker inspect proxy-agent

# Grab logs
sudo docker logs proxy-agent

Verifikasi status layanan Jupyter dan kumpulkan log

Untuk memverifikasi status layanan Jupyter, Anda dapat menggunakan ssh untuk terhubung ke instance notebook yang dikelola pengguna dan masukkan:

sudo service jupyter status

Untuk mengumpulkan log layanan Jupyter:

sudo journalctl -u jupyter.service --no-pager

Memverifikasi bahwa API internal Jupyter aktif

Jupyter API harus selalu berjalan di port 8080. Anda dapat memverifikasinya dengan memeriksa syslog instance untuk menemukan entri yang mirip dengan:

Jupyter Server ... running at:
http://localhost:8080

Untuk memverifikasi bahwa API internal Jupyter aktif, Anda juga dapat menggunakan ssh untuk terhubung ke instance notebook yang dikelola pengguna, lalu masukkan:

curl http://127.0.0.1:8080/api/kernelspecs

Anda juga dapat mengukur waktu yang diperlukan API untuk merespons jika permintaan memerlukan waktu terlalu lama:

time curl -V http://127.0.0.1:8080/api/status
time curl -V http://127.0.0.1:8080/api/kernels
time curl -V http://127.0.0.1:8080/api/connections

Untuk menjalankan perintah ini di instance Vertex AI Workbench, buka JupyterLab, dan buat terminal baru.

Memulai ulang layanan Docker

Untuk memulai ulang layanan Docker, Anda dapat menghentikan dan memulai VM dari halaman notebook yang dikelola pengguna atau menggunakan ssh untuk terhubung ke pengguna instance notebook terkelola dan masukkan:

sudo service docker restart

Memulai ulang agen Inverting Proxy

Untuk memulai ulang agen Inverting Proxy, Anda dapat menghentikan dan memulai VM dari halaman notebook yang dikelola pengguna atau menggunakan ssh untuk terhubung ke pengguna -managed notebooks, lalu masukkan:

sudo docker restart proxy-agent

Mulai ulang layanan Jupyter

Untuk memulai ulang layanan Jupyter, Anda dapat menghentikan dan memulai VM dari halaman notebook yang dikelola pengguna atau menggunakan ssh untuk terhubung ke pengguna instance notebook terkelola dan masukkan:

sudo service jupyter restart

Memulai ulang Agen Pengumpulan Notebook

Layanan Agen Pengumpulan Notebook menjalankan proses Python di latar belakang yang memverifikasi status layanan inti instance Vertex AI Workbench.

Untuk memulai ulang layanan Agen Pengumpulan Notebook, Anda dapat menghentikan dan memulai VM dari konsol Google Cloud atau menggunakan ssh untuk terhubung ke instance Vertex AI Workbench, lalu masukkan:

sudo systemctl stop notebooks-collection-agent.service

diikuti dengan:

sudo systemctl start notebooks-collection-agent.service

Untuk menjalankan perintah ini di instance Vertex AI Workbench, buka JupyterLab, dan buat terminal baru.

Mengubah skrip Agen Pengumpulan Notebook

Untuk mengakses dan mengedit skrip, buka terminal di instance kami atau gunakan ssh untuk terhubung ke instance Vertex AI Workbench, lalu masukkan:

nano /opt/deeplearning/bin/notebooks_collection_agent.py

Setelah mengedit file, jangan lupa untuk menyimpannya.

Kemudian, Anda harus memulai ulang layanan Agen Pengumpulan Notebook.

Memverifikasi bahwa instance dapat me-resolve domain DNS yang diperlukan

Untuk memverifikasi bahwa instance dapat me-resolve domain DNS yang diperlukan, Anda dapat menggunakan ssh untuk terhubung ke instance notebook yang dikelola pengguna, lalu masukkan:

host notebooks.googleapis.com
host *.notebooks.cloud.google.com
host *.notebooks.googleusercontent.com
host *.kernels.googleusercontent.com

atau:

curl --silent --output /dev/null "https://notebooks.cloud.google.com"; echo $?

Jika instance mengaktifkan Dataproc, Anda dapat memverifikasi bahwa instance menyelesaikan *.kernels.googleusercontent.com dengan menjalankan:

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

Untuk menjalankan perintah ini di instance Vertex AI Workbench, buka JupyterLab, dan buat terminal baru.

Membuat salinan data pengguna pada instance

Untuk menyimpan salinan data pengguna instance di Cloud Storage, selesaikan langkah-langkah berikut.

Membuat bucket Cloud Storage (opsional)

Dalam project yang sama tempat instance Anda berada, buat bucket Cloud Storage tempat Anda dapat menyimpan data pengguna. Jika sudah memiliki bucket Cloud Storage, lewati langkah ini.

  • Create a Cloud Storage bucket:
    gcloud storage buckets create gs://BUCKET_NAME
    Replace BUCKET_NAME with a bucket name that meets the bucket naming requirements.

Salin data pengguna Anda

  1. Di antarmuka JupyterLab instance Anda, pilih File > New > Terminal untuk membuka jendela terminal. Untuk instance notebook yang dikelola pengguna, Anda dapat terhubung ke terminal instance dengan menggunakan SSH.

  2. 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/

Selidiki instance yang macet dalam penyediaan menggunakan gcpdiag

gcpdiag adalah alat open source. Ini bukan produk Google Cloud yang didukung secara resmi. Anda dapat menggunakan alat gcpdiag untuk membantu mengidentifikasi dan memperbaiki masalah project Google Cloud. Untuk mengetahui informasi selengkapnya, lihat project gcpdiag di GitHub.

Runbook gcpdiag ini menyelidiki potensi penyebab instance Vertex AI Workbench macet dalam status penyediaan, termasuk area berikut:
  • Status: Memeriksa status instance saat ini untuk memastikan bahwa instance tersebut macet dalam penyediaan dan tidak dihentikan atau aktif.
  • Image disk booting VM Compute Engine instance: Memeriksa apakah instance dibuat dengan penampung kustom, image workbench-instances resmi, Image VM Deep Learning, atau image yang tidak didukung yang dapat menyebabkan instance macet dalam status penyediaan.
  • Skrip kustom: Memeriksa apakah instance menggunakan skrip startup atau pasca-startup kustom yang mengubah port Jupyter default atau merusak dependensi yang dapat menyebabkan instance macet dalam status penyediaan.
  • Versi lingkungan: Memeriksa apakah instance menggunakan versi lingkungan terbaru dengan memeriksa kemampuan upgrade-nya. Versi sebelumnya dapat menyebabkan instance macet dalam status penyediaan.
  • Performa VM Compute Engine instance: Memeriksa performa VM saat ini untuk memastikan bahwa VM tidak terganggu oleh penggunaan CPU yang tinggi, memori yang tidak memadai, atau masalah ruang disk yang dapat mengganggu operasi normal.
  • Port serial Compute Engine atau logging sistem instance: Memeriksa apakah instance memiliki log port serial, yang dianalisis untuk memastikan Jupyter berjalan di port 127.0.0.1:8080.
  • Akses SSH dan terminal Compute Engine instance: Memeriksa apakah VM Compute Engine instance berjalan sehingga pengguna dapat SSH dan membuka terminal untuk memverifikasi bahwa penggunaan ruang di 'home/jupyter' lebih rendah dari 85%. Jika tidak ada ruang yang tersisa, hal ini dapat menyebabkan instance stuck dalam status penyediaan.
  • IP eksternal dinonaktifkan: Memeriksa apakah akses IP eksternal dinonaktifkan. Konfigurasi jaringan yang salah dapat menyebabkan instance macet dalam status penyediaan.

Konsol Google Cloud

  1. Selesaikan, lalu salin perintah berikut.
  2. gcpdiag runbook vertex/workbench-instance-stuck-in-provisioning \
        --parameter project_id=PROJECT_ID \
        --parameter instance_name=INSTANCE_NAME \
        --parameter zone=ZONE
  3. Buka konsol Google Cloud dan aktifkan Cloud Shell.
  4. Buka Cloud Console
  5. Tempel perintah yang disalin.
  6. Jalankan perintah gcpdiag, yang mendownload image docker gcpdiag, lalu melakukan pemeriksaan diagnostik. Jika berlaku, ikuti petunjuk output untuk memperbaiki pemeriksaan yang gagal.

Docker

Anda dapat menjalankan gcpdiag menggunakan wrapper yang memulai gcpdiag dalam penampung Docker. Docker atau Podman harus diinstal.

  1. Salin dan jalankan perintah berikut di workstation lokal Anda.
    curl https://gcpdiag.dev/gcpdiag.sh >gcpdiag && chmod +x gcpdiag
  2. Jalankan perintah gcpdiag.
    ./gcpdiag runbook vertex/workbench-instance-stuck-in-provisioning \
        --parameter project_id=PROJECT_ID \
        --parameter instance_name=INSTANCE_NAME \
        --parameter zone=ZONE

Lihat parameter yang tersedia untuk runbook ini.

Ganti kode berikut:

  • PROJECT_ID: ID project yang berisi resource.
  • INSTANCE_NAME: Nama instance Vertex AI Workbench target dalam project Anda.
  • ZONE: Zona tempat instance Vertex AI Workbench target Anda berada.

Flag yang berguna:

Untuk mengetahui daftar dan deskripsi semua flag alat gcpdiag, lihat petunjuk penggunaan gcpdiag.