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:
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 beradaINSTANCE_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.
-
Buat bucket Cloud Storage:
Gantigcloud storage buckets create gs://BUCKET_NAME
BUCKET_NAME
dengan nama bucket yang memenuhi persyaratan penamaan bucket.
Salin data pengguna Anda
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.
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 AndaPATH
: 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.
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
- Selesaikan, lalu salin perintah berikut.
- Buka konsol Google Cloud dan aktifkan Cloud Shell. Buka Cloud Console
- Tempel perintah yang disalin.
- Jalankan perintah
gcpdiag
, yang mendownload image dockergcpdiag
, lalu melakukan pemeriksaan diagnostik. Jika berlaku, ikuti petunjuk output untuk memperbaiki pemeriksaan yang gagal.
gcpdiag runbook vertex/workbench-instance-stuck-in-provisioning \
--parameter project_id=PROJECT_ID \
--parameter instance_name=INSTANCE_NAME \
--parameter zone=ZONE
Docker
Anda dapat
menjalankan gcpdiag
menggunakan wrapper yang memulai gcpdiag
dalam
penampung Docker. Docker atau
Podman harus diinstal.
- Salin dan jalankan perintah berikut di workstation lokal Anda.
curl https://gcpdiag.dev/gcpdiag.sh >gcpdiag && chmod +x gcpdiag
- 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:
--universe-domain
: Jika berlaku, domain Trusted Partner Sovereign Cloud yang menghosting resource--parameter
atau-p
: Parameter runbook
Untuk mengetahui daftar dan deskripsi semua flag alat gcpdiag
, lihat
petunjuk penggunaan gcpdiag
.