Pemecahan masalah

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:

  • Versi rilis Dataproc 2.0.x
  • Versi rilis Dataproc 1.5.x
  • Versi rilis Dataproc 1.4.x

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