Menggunakan alat 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.
Alat gcpdiag
membantu Anda menemukan masalah pembuatan cluster Dataproc berikut dengan melakukan pemeriksaan berikut:
- Error kehabisan stok: Mengevaluasi log Logs Explorer untuk menemukan kehabisan stok di wilayah dan zona.
- Kuota tidak mencukupi: Memeriksa ketersediaan kuota di project cluster Dataproc.
- Konfigurasi jaringan tidak lengkap: Melakukan pengujian konektivitas jaringan,
termasuk pemeriksaan aturan firewall yang diperlukan dan konfigurasi IP
eksternal dan internal. Jika cluster telah dihapus, alat
gcpdiag
tidak dapat melakukan pemeriksaan konektivitas jaringan. - Konfigurasi lintas project salah: Memeriksa akun layanan lintas project dan meninjau peran tambahan serta penerapan kebijakan organisasi.
- Peran IAM VPC bersama tidak ada: Jika cluster Dataproc menggunakan jaringan VPC Bersama, periksa penambahan peran akun layanan yang diperlukan.
- Kegagalan tindakan inisialisasi: Mengevaluasi log Logs Explorer untuk menemukan kegagalan skrip tindakan inisialisasi dan waktu tunggu habis.
Untuk mengetahui daftar langkah pembuatan cluster gcpdiag
, lihat
Langkah potensial.
Jalankan perintah gcpdiag
Anda dapat menjalankan perintah gcpdiag
dari Cloud Shell di
konsol Google Cloud atau dalam penampung Docker.
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 dataproc/cluster-creation \
--parameter project_id=PROJECT_ID \
--parameter cluster_name=CLUSTER_NAME \
--parameter OPTIONAL_FLAGS
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 dataproc/cluster-creation \ --parameter project_id=PROJECT_ID \ --parameter cluster_name=CLUSTER_NAME \ --parameter OPTIONAL_FLAGS
Lihat parameter yang tersedia untuk runbook ini.
Ganti kode berikut:
- PROJECT_ID: ID project yang berisi resource
- CLUSTER_NAME: Nama cluster Dataproc target di project Anda
- OPTIONAL_PARAMETERS: Tambahkan satu atau beberapa parameter opsional berikut. Parameter ini diperlukan jika
cluster telah dihapus.
cluster_uuid
: UUID cluster Dataproc target di project Andaservice_account
: Akun layanan VM cluster Dataprocsubnetwork
: Jalur URI lengkap subnetwork cluster Dataprocinternal_ip_only
: Benar atau Salahcross_project
: ID lintas project jika cluster Dataproc menggunakan akun layanan VM di project lain
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
.
Memahami dan memperbaiki error pembuatan cluster
Bagian ini mencantumkan pesan error Dataproc, serta penyebab dan solusinya yang umum.
Waktu operasi habis: Hanya 0 dari 2 datanode/pengelola node minimum yang berjalan.
Penyebab: Node master tidak dapat membuat cluster karena tidak dapat berkomunikasi dengan node pekerja.
Solusi:
- Periksa peringatan aturan firewall.
- Pastikan aturan firewall yang benar diterapkan. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall Dataproc default.
- Lakukan pengujian konektivitas di konsol Google Cloud untuk menentukan apa yang memblokir komunikasi antara node master dan pekerja.
Izin
compute.subnetworks.use
yang diperlukan untukprojects/{projectId}/regions/{region}/subnetworks/{subnetwork}
Penyebab: Error ini dapat terjadi saat Anda mencoba menyiapkan cluster Dataproc menggunakan jaringan VPC di project lain dan akun layanan Agen Layanan Dataproc tidak memiliki izin yang diperlukan di project VPC Bersama yang menghosting jaringan.
Solusi: Ikuti langkah-langkah yang tercantum dalam Membuat cluster yang menggunakan jaringan VPC di project lain.
Zona
projects/zones/{zone}
tidak memiliki resource yang memadai untuk memenuhi permintaan(resource type:compute)
Penyebab: Zona yang digunakan untuk membuat cluster tidak memiliki resource yang memadai.
Solusi:
- Buat cluster di zona lain.
- Gunakan fitur Penempatan Zona Otomatis Dataproc.
Error Kuota Terlampaui
Kuota CPUS/CPUS_ALL_REGIONS tidak mencukupi
Kuota 'DISKS_TOTAL_GB' tidak mencukupi
Kuota 'IN_USE_ADDRESSES' tidak mencukupiPenyebab: Permintaan CPU, disk, atau alamat IP Anda melebihi kuota yang tersedia.
Solusi: Minta kuota tambahan dari konsol Google Cloud.
Tindakan inisialisasi gagal
Penyebab: Tindakan inisialisasi yang diberikan selama pembuatan cluster gagal diinstal.
Solusi:
- Lihat pertimbangan dan panduan tindakan inisialisasi.
- Periksa log output. Pesan error akan memberikan link ke log di Cloud Storage.
Gagal melakukan inisialisasi node {cluster-name}: {component}
Penyebab: Komponen Dataproc gagal diinisialisasi.
Solusi: Lihat:
Pembuatan cluster gagal: Ruang alamat IP habis
Penyebab: Ruang alamat IP yang diperlukan untuk menyediakan node cluster yang diminta tidak tersedia.
Solusi:
- Buat cluster di subnet atau jaringan yang berbeda.
- Kurangi penggunaan di jaringan untuk mengosongkan ruang alamat IP.
- Tunggu hingga ruang IP yang memadai tersedia di jaringan.
Pesan error skrip inisialisasi: Repositori REPO_NAME tidak lagi memiliki file Rilis
Penyebab: Repositori backport Debian oldstable telah dihapus.
Solusi:
Tambahkan kode berikut sebelum kode yang menjalankan
apt-get
dalam skrip inisialisasi Anda.oldstable=$(curl -s https://deb.debian.org/debian/dists/oldstable/Release | awk '/^Codename/ {print $2}'); stable=$(curl -s https://deb.debian.org/debian/dists/stable/Release | awk '/^Codename/ {print $2}'); matched_files="$(grep -rsil '\-backports' /etc/apt/sources.list*)" if [[ -n "$matched_files" ]]; then for filename in "$matched_files"; do grep -e "$oldstable-backports" -e "$stable-backports" "$filename" || \ sed -i -e 's/^.*-backports.*$//' "$filename" done fi
Jaringan tidak dapat dijangkau: dataproccontrol-REGION.googleapis.com/...*
Penyebab: Jaringan VPC cluster Dataproc mungkin tidak memiliki rute ke internet yang diperlukan. Agen Dataproc yang berjalan di VM cluster memerlukan rute ke internet untuk mengakses API kontrol Dataproc guna mendapatkan tugas dan melaporkan status. Rute default yang dibuat sistem ke internet mungkin telah dihapus.
Solusi:
Tambahkan rute ke internet ke jaringan VPC cluster Anda:
0.0.0.0/0
untuk IPv4 dan::/0
untuk IPv6 dengan--next-hop-gateway=default-internet-gateway
. Tambahkan aturan firewall untuk kontrol akses.