Menggunakan alat gcpdiag
gcpdiag
adalah sebuah alat {i>open source<i}. Ini bukan produk Google Cloud yang didukung secara resmi.
Anda dapat menggunakan alat gcpdiag
untuk membantu mengidentifikasi dan memperbaiki Google Cloud
permasalahan proyek. Untuk informasi selengkapnya, lihat
gcpdiag project di GitHub.
Alat gcpdiag
membantu Anda mempelajari Dataproc berikut
masalah pembuatan cluster dengan melakukan pemeriksaan berikut:
- Error kehabisan stok: Mengevaluasi log Logs Explorer untuk menemukan kehabisan stok di region dan zona.
- Kuota tidak mencukupi: Memeriksa ketersediaan kuota di Dataproc project cluster Anda.
- Konfigurasi jaringan tidak lengkap: Melakukan uji konektivitas jaringan,
termasuk pemeriksaan untuk aturan firewall yang diperlukan serta IP eksternal dan internal
konfigurasi Anda. Jika cluster telah dihapus, alat
gcpdiag
tidak dapat melakukan pemeriksaan konektivitas jaringan. - Konfigurasi lintas project salah: Pemeriksaan layanan lintas project akun Anda dan meninjau peran tambahan serta penegakan kebijakan organisasi.
- Peran IAM VPC bersama tidak ada: Jika cluster Dataproc menggunakan jaringan VPC Bersama, memeriksa penambahan layanan yang diperlukan peran akun.
- Kegagalan tindakan inisialisasi: Mengevaluasi Logs Explorer log untuk menemukan kegagalan dan waktu tunggu skrip tindakan inisialisasi.
Untuk mengetahui daftar gcpdiag
langkah pembuatan cluster, lihat
Langkah-langkah yang dapat dilakukan.
Menjalankan perintah gcpdiag
Anda dapat menjalankan perintah gcpdiag
dari Cloud Shell di
Konsol Google Cloud atau dalam container 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 akan mendownload image Dockergcpdiag
. dan kemudian melakukan pemeriksaan diagnostik. Jika ada, ikuti petunjuk output untuk memperbaiki pemeriksaan yang gagal.
gcpdiag runbook dataproc/cluster-creation \
--project=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 \ --project=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 target Cluster Dataproc dalam project Anda
- OPTIONAL_PARAMETERS: Menambahkan satu atau beberapa
parameter opsional berikut. Parameter tersebut diperlukan jika
cluster telah dihapus.
cluster_uuid
: UUID Dataproc target cluster dalam project Andaservice_account
: Cluster Dataproc Akun layanan VMsubnetwork
: Subnetwork cluster Dataproc jalur URI lengkapinternal_ip_only
: Benar atau Salahcross_project
: ID lintas project jika Cluster Dataproc menggunakan akun layanan VM dalam project lain
Tanda yang berguna:
--project
: PROJECT_ID--universe-domain
: Jika berlaku, Cloud Berdaulat Partner Tepercaya yang menghosting resource--parameter
atau-p
: Parameter runbook
Untuk daftar dan deskripsi semua flag alat gcpdiag
, lihat
Petunjuk penggunaan gcpdiag
.
Memahami dan memperbaiki error pembuatan cluster
Bagian ini mencantumkan pesan error Dataproc, dan penyebab umumnya dan solusi.
Waktu operasi habis: Hanya 0 dari 2 node data/pengelola node minimum yang diperlukan yang berjalan.
Penyebab: Node master tidak dapat membuat cluster karena dan tidak dapat berkomunikasi dengan worker node.
Solusi:
- Periksa peringatan aturan firewall.
- Pastikan aturan firewall yang benar telah diterapkan. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall Dataproc default.
- Lakukan uji konektivitas di Konsol Google Cloud untuk menentukan memblokir komunikasi antara node master dan worker.
Izin
compute.subnetworks.use
yang diperlukan untukprojects/{projectId}/regions/{region}/subnetworks/{subnetwork}
Penyebab: Error ini dapat terjadi saat Anda mencoba menyiapkan Dataproc cluster menggunakan jaringan VPC di project lain dan Dataproc Agen Layanan akun layanan tidak memiliki izin yang diperlukan di 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 cukup resource untuk memenuhi permintaan(resource type:compute)
Penyebab: Zona yang digunakan untuk membuat cluster tidak memiliki resource yang cukup.
Solusi:
- Buat cluster di zona berbeda.
- Menggunakan Dataproc Penempatan Zona Otomatis baru.
Error Kuota Terlampaui
Kuota CPUS/CPUS_ALL_REGIONS tidak cukup
'DISKS_TOTAL_GB' tidak cukup kuota
'IN_USE_ADDRESSES' tidak memadai kuotaPenyebab: CPU, disk, atau alamat IP pengguna melebihi kuota yang tersedia.
Solusi: Minta kuota tambahan dari Konsol Google Cloud.
Tindakan inisialisasi gagal
Penyebab: Tindakan inisialisasi yang diberikan saat pembuatan cluster gagal yang perlu diinstal
Solusi:
- Lihat pertimbangan dan panduan tindakan inisialisasi.
- Periksa log output. Pesan {i>error<i} harus menyediakan tautan ke log di Cloud Storage.
Gagal menginisialisasi node {cluster-name}: {component}
Penyebab: Komponen Dataproc gagal diinisialisasi.
Solusi: Lihat:
Pembuatan cluster gagal: Ruang alamat IP habis
Penyebab: Perlu ruang alamat IP untuk menyediakan node cluster yang diminta tidak tersedia.
Solusi:
- Buat cluster di subnetwork atau jaringan yang berbeda.
- Kurangi penggunaan di jaringan untuk mengosongkan ruang alamat IP.
- Tunggu hingga ruang IP yang cukup tersedia di jaringan.
Pesan error skrip inisialisasi: Repositori REPO_NAME tidak lagi memiliki file Rilis
Penyebab: Repositori backport oldstable Debian telah dihapus permanen.
Solusi:
Tambahkan kode berikut sebelum kode yang menjalankan
apt-get
di 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 persyaratan rute ke internet. Agen Dataproc yang berjalan di VM cluster memerlukan rute ke internet untuk mengakses API kontrol Dataproc untuk 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.