Halaman ini menjelaskan berbagai skenario error dan langkah-langkah pemecahan masalah untuk mengatasi error tersebut.
Skenario error konektivitas dan jaringan
Jika layanan Anda mengalami masalah konektivitas atau jaringan, periksa skenario di bagian berikut untuk melihat apakah salah satu skenario tersebut menyebabkan masalah.
Pembuatan layanan gagal karena batasan untuk membatasi peering VPC
Jangan menetapkan batasan kebijakan organisasi untuk membatasi peering VPC. Penetapan
constraints/compute.restrictVpcPeering
akan menyebabkan permintaan pembuatan Anda
gagal dengan error INVALID_ARGUMENT
. Jika Anda harus menetapkan batasan, gunakan
perintah berikut untuk mengizinkan under:folders/270204312590
:
gcloud resource-manager org-policies allow compute.restrictVpcPeering under:folders/270204312590 --organization ORGANIZATION_ID
Untuk informasi selengkapnya, lihat Batasan kebijakan organisasi.
Deployment lintas project gagal jika akun layanan mungkin tidak ada
Untuk membuat layanan Dataproc Metastore yang dapat diakses di jaringan milik project yang berbeda dengan yang dimiliki layanan tersebut, Anda harus memberikan roles/metastore.serviceAgent
ke agen layanan Dataproc Metastore (service-SERVICE_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com
) project layanan dalam kebijakan IAM project jaringan.
gcloud projects add-iam-policy-binding NETWORK_PROJECT_ID \
--role "roles/metastore.serviceAgent" \
--member "serviceAccount:service-SERVICE_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com"
Untuk informasi selengkapnya, lihat Menyiapkan deployment lintas project.
Layanan Dataproc Metastore multi-region gagal dibuat
Saat membuat layanan Dataproc Metastore multi-regional, Anda mungkin melihat error berikut:
The Dataproc Service Agent does not have permission to GET Dataproc Metastore service
'projects/<dpmsproject>/locations/nam7/services/<service>'. If using a service from the
cluster's project, please ensure the service agent has the Cloud IAM role
'roles/dataproc.serviceAgent'. Please see
https://cloud.google.com/dataproc/docs/concepts/iam/dataproc-
principals#service_agent_control_plane_identity for information on the Dataproc Service
Agent, and https://cloud.google.com/iam/docs/granting-changing-revoking-access#granting-
gcloud-manual for information on granting access.
Error ini terjadi jika cluster Dataproc Anda berada dalam project yang berbeda dengan Dataproc Metastore, tetapi Anda belum memberikan izin yang benar ke project.
Untuk mengatasi error ini, Anda harus memberikan izin metastore.services.get
ke akun layanan Dataproc yang terdapat dalam project Dataproc Metastore Anda.
IP pribadi diperlukan untuk konektivitas jaringan
Dataproc Metastore hanya menggunakan IP pribadi, sehingga tidak ada IP publik yang terekspos. Artinya, hanya VM di jaringan Virtual Private Cloud (VPC) yang disediakan atau infrastruktur lokal (terhubung melalui Cloud VPN atau Cloud Interconnect) yang dapat mengakses layanan Dataproc Metastore.
Untuk mengetahui informasi selengkapnya, lihat Akses layanan.
Aturan firewall masuk yang diizinkan untuk Kerberos
Kerberos memerlukan Dataproc Metastore untuk memulai koneksi ke host di jaringan project Anda. Anda harus membuat aturan firewall yang mengizinkan ingress TCP dan UDP di semua port dari blok IP /17
yang berisi IP Dataproc Metastore.
Untuk mengetahui informasi selengkapnya, lihat Aturan firewall di KDC dan Aturan firewall untuk layanan Anda.
Error koneksi yang disebabkan oleh resource yang disediakan di jaringan VPC Bersama
Jika Dataproc Metastore Anda. Jika itu terjadi, Dataproc Metastore akan mencoba mencadangkan rentang alamat IP pribadi di luar rentang RFC 1918 untuk pembuatan layanan. Untuk daftar rentang pribadi non-RFC 1918 yang didukung, lihat Rentang valid dalam dokumentasi jaringan VPC.} Layanan menggunakan jaringan yang termasuk dalam project berbeda, dan Compute Engine dilindungi oleh perimeter layanan, project metastore dan project jaringan harus berada di perimeter yang sama.
Untuk menambahkan project Dataproc Metastore yang ada ke perimeter, ikuti petunjuk dalam Mengupdate perimeter layanan.
Untuk informasi lebih lanjut, lihat Kontrol Layanan VPC dengan Dataproc Metastore.
Rentang IP yang dialokasikan habis
Jaringan VPC yang disediakan mungkin kehabisan alamat RFC 1918 yang tersedia, yang diperlukan oleh layanan Dataproc Metastore. Jika itu terjadi, Dataproc Metastore akan mencoba mencadangkan rentang alamat IP pribadi di luar rentang RFC 1918 untuk pembuatan layanan. Untuk mengetahui daftar rentang pribadi non-RFC 1918 yang didukung, lihat Rentang valid di dokumentasi jaringan VPC.
Alamat IP pribadi non-RFC 1918 yang digunakan di Dataproc Metastore mungkin bertentangan dengan rentang di jaringan lokal yang terhubung ke jaringan VPC yang disediakan. Untuk memeriksa daftar alamat IP pribadi RFC 1918 dan non-RFC 1918 yang disediakan oleh Dataproc Metastore:
gcloud compute addresses list \
--project NETWORK_PROJECT_ID \
--filter="purpose:VPC_PEERING AND name ~ cluster|resourcegroup"
Jika konflik ditentukan dan tidak dapat dimitigasi dengan mengonfigurasi ulang jaringan lokal, hapus layanan Dataproc Metastore yang melanggar dan buat ulang lagi setelah 2 jam.
Untuk mengetahui informasi selengkapnya, lihat Kehabisan rentang alamat IP.
Skenario error waktu tunggu operasi
Skenario error berikut menyebabkan waktu tunggu layanan atau operasi tidak responsif.
Menggunakan Log audit untuk memecahkan masalah waktu tunggu operasi
Untuk memecahkan masalah waktu tunggu operasi layanan, gunakan Logs Explorer di Konsol Google Cloud untuk mengambil entri log audit untuk project Cloud Anda.
Di panel Query builder, pilih Audited Resource atau audited_resource
sebagai
jenis resource Google Cloud, diikuti dengan Dataproc Metastore atau
metastore.googleapis.com
sebagai layanan. Memilih metode bersifat opsional.
Untuk informasi selengkapnya, lihat Melihat log.
Skenario error impor dan ekspor
Bagian ini menjelaskan masalah umum terkait impor dan ekspor Dataproc Metastore.
Impor gagal karena versi Hive tidak cocok
Saat Anda mengimpor metadata, versi metastore Hive dan Dataproc Metastore harus kompatibel. Impor Anda mungkin gagal jika keduanya tidak cocok.
Untuk mengetahui informasi selengkapnya tentang kompatibilitas, lihat kebijakan versi.
Anda dapat memeriksa Cloud Logging untuk melihat apakah Anda mengalami error ini. Pesan berikut adalah contoh error ini.
Metastore schema version is not compatible. Hive Version: 3.1.0, Database Schema Version: 2.3.0
Impor gagal karena file tabel Hive tidak ada
Saat menyiapkan impor untuk Avro, harus ada file untuk setiap tabel Hive, meskipun tabel tersebut kosong. Jika tidak, impor akan gagal.
Anda dapat menggunakan Dataproc Metastore Toolkit sebagai referensi untuk memeriksa skema metadata Hive yang benar.
Agen layanan atau pengguna tidak memiliki izin yang diperlukan
Agen layanan Dataproc Metastore (service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com
) dan pengguna yang mengimpor metadata harus memiliki izin baca berikut ke bucket Cloud Storage yang digunakan untuk impor:
Untuk MySQL, izin tersebut harus memiliki izin
storage.objects.get
pada objek Cloud Storage (file dump SQL) yang digunakan untuk impor.Untuk Avro, mereka harus memiliki izin
storage.objects.get
di bucket Cloud Storage yang digunakan untuk impor.
Untuk ekspor, agen layanan Dataproc Metastore (service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com
) dan pengguna yang membuat ekspor harus memiliki izin storage.objects.create
di bucket.
Tugas gagal karena file database terlalu besar
Jika ukuran file database Anda terlalu besar, proses impor atau ekspor dapat memerlukan waktu lebih dari batas waktu tunggu tugas. Jika impor tidak dapat diselesaikan dalam batas waktu tunggu tugas 3 jam, Anda dapat membagi metadata di beberapa instance Dataproc Metastore.
Skenario error pencadangan dan pemulihan
Bagian ini menguraikan masalah umum pencadangan dan pemulihan Dataproc Metastore.
Tidak dapat membuat cadangan baru untuk layanan
Jika sudah ada 7 cadangan dalam layanan, Anda harus menghapus cadangan secara manual terlebih dahulu sebelum membuat cadangan baru. Anda dapat menghapus cadangan yang ada dari tab Pencadangan/Pemulihan.
Pengguna tidak memiliki izin yang diperlukan
Untuk mencadangkan metadata, Anda harus meminta peran IAM yang berisi
izin IAM metastore.backups.create
.
Untuk memulihkan metadata, Anda harus meminta peran IAM yang berisi
izin IAM metastore.services.restore
dan metastore.backups.use
.
Tugas gagal karena file metadata layanan terlalu besar
Jika file metadata layanan Anda terlalu besar, batas waktu tunggu tugas mungkin lebih dari satu jam untuk menyelesaikan proses pencadangan atau pemulihan.
Skenario error cluster Dataproc
Bagian berikut menguraikan masalah umum Dataproc dan cluster yang dikelola sendiri.
Lampiran cluster Dataproc gagal karena versi tidak cocok
Saat Anda melampirkan cluster Dataproc, gambar Dataproc dan versi Dataproc Metastore Hive harus kompatibel. Periksa halaman pembuatan versi gambar berikut untuk memastikan versi Hive kompatibel:
Untuk mengetahui informasi selengkapnya, lihat daftar versi Image Dataproc.
Pembuatan cluster Dataproc gagal karena peran tidak memadai
Saat membuat cluster Dataproc, pembuatan cluster akan gagal dengan pesan error berikut:
gcloud.dataproc.clusters.create) INVALID_ARGUMENT: Default Service Account '**********-compute@developer.gserviceaccount.com' is missing required permissions: [dataproc.agents.create, dataproc.agents.delete, dataproc.agents.get, dataproc.agents.update, dataproc.tasks.lease, dataproc.tasks.listInvalidatedLeases, dataproc.tasks.reportStatus]. Service Accounts must have either 'Dataproc/Dataproc Worker' role or all permissions granted by the role.
Hal ini dapat terjadi saat Anda mencoba membuat cluster Dataproc dan melampirkannya ke Dataproc Metastore.
Untuk memperbaiki masalah ini, berikan roles/dataproc.worker
ke akun layanan Anda.
Contoh berikut mengilustrasikan cara melakukannya menggunakan beberapa nilai sampel.
gcloud projects add-iam-policy-binding my_project \ --member=219315-compute@developer.gserviceaccount.com \ --role=roles/dataproc.worker
Koneksi ke metastore gagal karena masalah zona waktu
File Hive Anda menampilkan error The server time zone value 'CDT' is
unrecognized or represents more than one time zone
.
Jika Anda tidak dapat terhubung ke metastore dari Dataproc, Anda harus menghapus cluster saat ini dan memperbarui perintah gcloud dataproc clusters create
atau alat otomatisasi untuk menyertakan parameter zona waktu berikut:
--metadata "hive-metastore-uri=jdbc:mysql://10.207.26.77:3306/hive_metastore?serverTimezone=CST6CDT"
Memecahkan masalah Google Cloud CLI
Jika Anda mengalami masalah di mana perintah gcloud CLI tidak tersedia, atau jika perintah berperilaku berbeda dengan yang didokumentasikan, coba update gcloud CLI:
gcloud components update
Langkah selanjutnya
- Untuk mengatasi error, lihat Pesan error.