Halaman ini memberikan panduan tentang mendiagnosis dan menyelesaikan masalah konektivitas jaringan umum untuk workload batch dan sesi interaktif Serverless for Apache Spark. Masalah ini dapat mencegah workload Anda mengakses sumber data, layanan eksternal, atau API yang diperlukan. Google Cloud
Gejala dan pesan error umum
Saat Serverless untuk Apache Spark mengalami masalah konektivitas, Anda mungkin mengalami error seperti:
Unable to connect to service_name.googleapis.com
Could not reach required Google APIs
Connection refused
Host unreachable
Operation timed out
Permission denied
(sering kali terkait jaringan jika memblokir panggilan API)
Anda juga dapat mengalami error terkait akses data di Cloud Storage, BigQuery, atau database lainnya.
Penyebab umum dan tips pemecahan masalah
Bagian ini mencantumkan penyebab umum masalah konektivitas Serverless for Apache Spark, dan memberikan tips pemecahan masalah untuk membantu Anda menyelesaikannya.
Konfigurasi jaringan
Kesalahan konfigurasi jaringan sering kali menjadi penyebab kegagalan konektivitas. Workload dan sesi Serverless untuk Apache Spark berjalan di VM dengan alamat IP internal, dengan Akses Google Pribadi (PGA) yang diaktifkan secara otomatis di subnet workload atau sesi untuk mengakses Google API dan layanan Google. Untuk mengetahui informasi selengkapnya, lihat Konfigurasi jaringan Serverless untuk Apache Spark.
Opsi akses:
Private Service Connect (PSC): Anda dapat membuat endpoint pribadi dalam jaringan VPC untuk mengakses Google API tertentu.
- Di konsol Google Cloud , buka
Private Service Connect > Endpoints.
Hubungkan endpoint atau konfirmasi bahwa endpoint terhubung untuk
semua API yang diperlukan, seperti
storage.googleapis.com
dandataproc.googleapis.com
serta pastikan endpoint terhubung ke jaringan Virtual Private Cloud sesi atau workload batch.
- Di konsol Google Cloud , buka
Private Service Connect > Endpoints.
Hubungkan endpoint atau konfirmasi bahwa endpoint terhubung untuk
semua API yang diperlukan, seperti
Cloud NAT: Jika beban kerja Anda perlu mengakses internet publik, Anda dapat mengonfigurasi Cloud NAT untuk beban kerja batch atau subnet sesi Anda:
- Di konsol Google Cloud , buka halaman
Cloud NAT.
Konfigurasi gateway atau konfirmasi bahwa
gateway dikonfigurasi untuk batch
workload atau jaringan VPC, region, dan subnet sesi. Pastikan juga aturan firewall mengizinkan keluar ke
0.0.0.0/0
. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan Cloud NAT.
- Di konsol Google Cloud , buka halaman
Cloud NAT.
Konfigurasi gateway atau konfirmasi bahwa
gateway dikonfigurasi untuk batch
workload atau jaringan VPC, region, dan subnet sesi. Pastikan juga aturan firewall mengizinkan keluar ke
Aturan firewall:
- Aturan firewall traffic keluar di jaringan VPC Anda (atau project host jaringan VPC bersama, jika berlaku) tidak boleh memblokir traffic keluar ke tujuan yang diperlukan.
- Jika berlaku, aturan keluar harus mengizinkan traffic ke layanan eksternal, seperti API publik dan database di luar Google Cloud. Jika beban kerja atau sesi batch Anda memerlukan akses internet, Anda dapat menggunakan Cloud NAT untuk menyediakan keluar subnet.
- Meskipun bukan penyebab umum masalah konektivitas, aturan ingress yang terlalu ketat dapat secara tidak sengaja memblokir traffic kembali yang diperlukan atau komunikasi internal.
- Aturan firewall traffic keluar di jaringan VPC Anda (atau project host jaringan VPC bersama, jika berlaku) tidak boleh memblokir traffic keluar ke tujuan yang diperlukan.
Resolusi DNS:
- Resolusi DNS harus dikonfigurasi dalam jaringan VPC. Workload dan sesi harus dapat menyelesaikan nama host untuk
Google API, seperti
storage.googleapis.com
ataubigquery.googleapis.com
dan layanan eksternal. - Server DNS kustom dan zona pribadi Cloud DNS harus meneruskan atau me-resolve kueri untuk domain Google.
- Jika Anda menggunakan Private Service Connect untuk akses pribadi ke Google API, catatan DNS untuk layanan Google harus di-resolve ke alamat IP pribadi dalam jaringan VPC Anda menggunakan endpoint PSC.
- Resolusi DNS harus dikonfigurasi dalam jaringan VPC. Workload dan sesi harus dapat menyelesaikan nama host untuk
Google API, seperti
Tips pemecahan masalah:
Identifikasi konfigurasi jaringan dan subnet:
- Dari detail batch atau sesi Serverless untuk Apache Spark, tinjau
networkUri
dansubnetUri
. - Di konsol Google Cloud , tinjau setelan untuk jaringan dan subnet VPC.
- Dari detail batch atau sesi Serverless untuk Apache Spark, tinjau
Uji konektivitas dari VM Proxy:
- Luncurkan VM Compute Engine pengujian di subnet batch atau sesi menggunakan akun layanan batch atau sesi.
- Dari VM pengujian, lakukan pengujian konektivitas berikut:
nslookup storage.googleapis.com
untuk memverifikasi resolusi DNS. Cari domain Google API lainnya, sepertibigquery.googleapis.com
dandataproc.googleapis.com
. Dengan Akses Google Pribadi, yang diaktifkan secara otomatis di subnet Serverless untuk Apache Spark, atau Private Service Connect, domain harus di-resolve ke alamat IP pribadi.curl -v https://storage.googleapis.com
untuk memverifikasi konektivitas HTTPS ke Google API. Coba juga hubungkan ke layanan Google lainnya.ping 8.8.8.8
untuk menguji konektivitas internet jika diperlukan oleh batch atau sesi Anda. Cobacurl -v https://example.com
jika Cloud NAT diharapkan.
- Jalankan Google Cloud Uji konektivitas Network Intelligence Center untuk mendiagnosis jalur jaringan dari subnet Anda ke endpoint yang relevan, seperti Google API dan alamat IP eksternal.
Tinjau Cloud Logging untuk mengetahui error jaringan:
- Tinjau Logging untuk workload atau sesi Serverless untuk Apache Spark Anda. Cari pesan
ERROR
atauWARNING
yang terkait dengan waktu tunggu jaringan habis, penolakan koneksi, atau kegagalan panggilan API. Filter menurutjsonPayload.component="driver"
ataujsonPayload.component="executor"
untuk masalah jaringan khusus Spark.
- Tinjau Logging untuk workload atau sesi Serverless untuk Apache Spark Anda. Cari pesan
Izin IAM
Izin IAM yang tidak memadai dapat mencegah workload atau sesi mengakses resource, sehingga menyebabkan kegagalan jaringan jika panggilan API ditolak.
Akun layanan yang digunakan oleh beban kerja atau sesi batch Anda harus memiliki peran yang diperlukan:
- Peran Pekerja Dataproc (
roles/dataproc.worker
). - Peran akses data, seperti
roles/storage.objectViewer
atauroles/bigquery.dataViewer
). - Logging: (
roles/logging.logWriter
).
Tips pemecahan masalah:
- Identifikasi akun layanan beban kerja atau sesi batch. Jika tidak ditentukan, akun layanan default Compute Engine akan digunakan.
- Buka halaman IAM & Admin > IAM di konsol Google Cloud , temukan akun layanan batch workload atau sesi, lalu verifikasi bahwa akun tersebut memiliki peran yang diperlukan untuk operasi workload. Berikan peran yang belum ada.
Konfigurasi layanan eksternal
Jika workload Anda terhubung ke database atau layanan di luar Google Cloud, verifikasi konfigurasinya:
- Verifikasi firewall atau grup keamanan layanan eksternal mengizinkan koneksi masuk dari rentang IP jaringan VPC Anda: jika berlaku, periksa alamat IP internal menggunakan VPC Peering, Cloud VPN, atau Cloud Interconnect, atau alamat IP Cloud NAT.
- Tinjau kredensial database atau string konektivitas. Periksa detail koneksi, nama pengguna, dan sandi.
Langkah berikutnya
- Pelajari jaringan Serverless untuk Apache Spark.
- Tinjau akun layanan Serverless untuk Apache Spark.
- Lihat panduan pemecahan masalah jaringan umum: