Anda dapat mendiagnosis dan menyelesaikan masalah konektivitas masuk dan keluar yang umum untuk instance Looker (Google Cloud core) di seluruh konfigurasi jaringan publik, pribadi, dan hybrid. Memecahkan masalah domain kustom, Private Service Connect, akses layanan pribadi, dan keluar yang dikontrol membantu Anda memulihkan akses pengguna ke instance dan mempertahankan koneksi ke penyedia identitas, layanan eksternal, dan backend database.
Verifikasi domain kustom gagal dengan error kode 9
Saat Anda mengonfigurasi domain kustom untuk instance Looker (Google Cloud core) yang menggunakan koneksi publik, verifikasi domain mungkin gagal dengan error code: 9.
Gejala
Saat Anda mengklik VERIFIKASI DOMAIN di tab DOMAIN KUSTOM pada instance Looker (inti Google Cloud), verifikasi akan gagal dan menampilkan pesan error yang mirip dengan berikut ini:
DNS record is not created or not the same as public IP address (code: 9)
Status domain kustom juga tetap Belum diverifikasi atau ditampilkan sebagai Tidak tersedia.
Penyebab
Meskipun pesan error menunjukkan bahwa data A DNS tidak ada atau salah, error ini biasanya terjadi karena salah satu alasan berikut:
- Data CAA yang ketat: Konfigurasi DNS domain Anda menyertakan data Certification Authority Authorization (CAA) yang tidak mengizinkan Certificate Authority (CA) Google menerbitkan sertifikat SSL/TLS. Karena Looker (inti Google Cloud) menggunakan sertifikat yang dikelola Google untuk instance publik, penyediaan sertifikat gagal.
- CDN atau proxy pihak ketiga: Instance Looker (Google Cloud core) dengan koneksi publik secara eksklusif menggunakan otorisasi Load Balancer (LB) untuk sertifikat yang dikelola Google. Otorisasi LB mengharuskan data A DNS domain kustom Anda ditetapkan langsung ke alamat IP publik ingress Looker (inti Google Cloud). Jika Anda merutekan traffic melalui Jaringan Penayangan Konten (CDN), firewall aplikasi web (WAF), atau proxy terbalik (seperti Akamai atau Cloudflare) pihak ketiga, otorisasi LB otomatis akan gagal.
Resolusi
Bergantung pada penyebab kegagalan, gunakan metode berikut untuk mengatasi masalah:
Memberi otorisasi kepada Otoritas Sertifikat Google dalam data CAA
Jika domain Anda menggunakan data CAA, verifikasi dan perbarui data DNS Anda untuk mengizinkan penyedia sertifikat Google:
Periksa data CAA yang ada di domain Anda menggunakan alat pencarian DNS seperti
dig:dig CAA DOMAIN_NAME +shortGanti
DOMAIN_NAMEdengan nama domain kustom Anda (misalnya,example.comataulooker.example.com).Tambahkan data CAA untuk mengizinkan
pki.googdanletsencrypt.org:DOMAIN_NAME. IN CAA 0 issue "pki.goog" DOMAIN_NAME. IN CAA 0 issue "letsencrypt.org"Mengizinkan kedua CA memastikan penyediaan dan perpanjangan otomatis yang andal.
Setelah memperbarui data CAA, tunggu propagasi DNS, lalu klik VERIFIKASI DOMAIN lagi di konsol Google Cloud .
Menggunakan Private Service Connect untuk CDN dan proxy pihak ketiga
CDN pihak ketiga dan reverse proxy tidak dapat ditempatkan langsung di depan instance Looker (Google Cloud core) publik karena otorisasi load balancer otomatis memerlukan resolusi DNS langsung ke alamat IP publik instance.
Untuk merutekan traffic masuk melalui CDN atau WAF pihak ketiga, deploy Looker (inti Google Cloud) menggunakan arsitektur Private Service Connect alih-alih koneksi publik:
- Men-deploy instance Looker (Google Cloud core) dengan Private Service Connect yang diaktifkan.
- Konfigurasi Load Balancer Aplikasi eksternal dengan backend Private Service Connect di jaringan VPC Anda.
- Sediakan dan lampirkan sertifikat SSL yang dikelola sendiri atau dikelola Google ke Load Balancer Aplikasi eksternal. Arsitektur ini memberi Anda kontrol atas penghentian TLS dan memungkinkan Anda merutekan traffic melalui CDN atau WAF.
Kegagalan autentikasi OpenID Connect dengan keluar yang dikontrol
Saat Anda menyiapkan autentikasi OpenID Connect di instance Looker (Google Cloud core) yang dikonfigurasi dengan Private Service Connect dan egress yang dikontrol diaktifkan, autentikasi mungkin gagal.
Gejala
Jika autentikasi gagal, Anda mungkin mengalami salah satu gejala berikut:
- Endpoint
/openidconnectLooker mengalami hang selama sekitar 60 detik di browser sebelum menampilkan error atau waktu tunggu habis dengan error504 Upstream Request Timeoutatau504 Gateway Timeout. Penyedia identitas Anda menampilkan pesan error yang menunjukkan bahwa URI pengalihan tidak cocok, seperti:
AADSTS50011: The redirect URI specified in the request does not match the redirect URIs configured for the applicationPesan error ini menyesatkan karena URI pengalihan yang Anda konfigurasi di penyedia identitas Anda mungkin sudah benar. Kegagalan sebenarnya terjadi saat Looker (Google Cloud core) tidak dapat menghubungi endpoint token penyedia identitas selama pertukaran backend.
Penyebab
Alur kerja penyediaan otomatis untuk keluar yang terkontrol terkadang gagal membuat rute jaringan Secure Web Proxy (looker-swp-route) yang diperlukan di project tenant Looker (inti Google Cloud).
Jika rute ini tidak ada, permintaan backend dari Looker (inti Google Cloud) ke endpoint token penyedia identitas akan kehabisan waktu karena instance tidak dapat merutekan traffic keluar ke internet publik melalui Secure Web Proxy.
Resolusi
Untuk mengatasi masalah ini, ikuti langkah-langkah berikut untuk mereset konfigurasi keluar yang dikontrol guna memaksa sistem membuat ulang rute jaringan yang hilang:
Di konsol Google Cloud , buka halaman Looker:
Klik nama instance yang ingin Anda perbarui.
Klik Edit.
Luaskan bagian Connections dan buka bagian Configure outbound connections.
Catat semua nama domain yang sepenuhnya memenuhi syarat (FQDN) yang ada dan tercantum di bagian FQDN Global (seperti endpoint penyedia identitas Anda).
Hapus semua FQDN yang tercantum di bagian FQDN Global.
Hapus centang pada kotak Izinkan Looker terhubung ke layanan eksternal untuk menonaktifkan egress yang dikontrol.
Klik Simpan.
Tunggu hingga update instance selesai dan perubahan konfigurasi dihapus.
Klik Edit lagi.
Luaskan bagian Connections dan centang kotak Enable Looker to connect to external services.
Di bagian FQDN Global, tambahkan kembali FQDN yang diperlukan untuk penyedia identitas dan layanan eksternal lainnya.
Klik Simpan.
Mereset egress yang dikontrol akan memicu proses penyediaan otomatis untuk
membuat ulang rute jaringan looker-swp-route yang hilang. Setelah rute dibuat, permintaan backend keluar ke penyedia identitas dapat diselesaikan.
Error 504 Upstream Request Timeout
Saat Anda melakukan panggilan API, menjalankan kueri yang berjalan lama, atau mengautentikasi dengan layanan eksternal di instance Looker (Google Cloud core), permintaan mungkin gagal dengan error waktu tunggu HTTP 504.
Gejala
Anda mungkin menerima error 504 Upstream Request Timeout atau 504 Gateway Timeout
dalam salah satu skenario berikut:
- Panggilan atau kueri API masuk: Panggilan API ke endpoint Looker, seperti
/result_format, atau kueri yang berjalan lama di UI Looker gagal dengan error504setelah sekitar 30 detik di instance yang di-proxy oleh load balancer. - Autentikasi keluar atau koneksi layanan eksternal: Anda menerima error
504di browser setelah kembali dari halaman login penyedia identitas atau saat terhubung ke layanan eksternal di instance dengan keluar yang dikontrol diaktifkan.
Penyebab
Error waktu tunggu 504 biasanya terjadi karena salah satu alasan berikut:
- Waktu tunggu layanan backend load balancer untuk permintaan masuk: Saat instance Looker (Google Cloud core) Anda diakses melalui load balancer Cloud Load Balancing, layanan backend load balancer memiliki waktu tunggu layanan backend default 30 detik. Jika waktu eksekusi kueri database gabungan dan waktu rendering payload Looker melebihi batas waktu ini, load balancer akan menutup koneksi dan menampilkan error HTTP
504. - Domain keluar yang diblokir dengan keluar yang dikontrol: Instance Looker (inti Google Cloud) tidak dapat menjangkau domain eksternal melalui keluar yang dikontrol. Tidak seperti error rute yang tidak ada, error
504selama permintaan keluar biasanya berarti jalur jaringan ada, tetapi domain yang diperlukan tidak ada dalam daftar yang diizinkan FQDN Global dan diblokir, atau waktu permintaan habis di gateway.
Resolusi
Bergantung pada penyebab error, selesaikan langkah-langkah di bagian berikut untuk mengatasi masalah.
Menyelesaikan masalah waktu tunggu load balancer pada panggilan atau kueri API
Untuk mengatasi error 504 yang disebabkan oleh waktu tunggu layanan backend load balancer habis, gunakan salah satu atau kedua metode berikut:
Tingkatkan waktu tunggu layanan backend load balancer:
Di konsol Google Cloud , buka halaman Load balancing:
Klik Backend, lalu klik nama layanan backend yang terkait dengan instance Looker (Google Cloud core) Anda.
Klik Edit.
Di kolom Waktu tunggu, tingkatkan nilai waktu tunggu, misalnya dari 30 detik menjadi 300 detik, untuk mengakomodasi kueri dan permintaan API yang berjalan paling lama.
Klik Simpan.
Gunakan alur kerja API asinkron: Jika Anda memanggil Looker API untuk mengambil data kueri dan tidak dapat mengubah waktu tunggu load balancer, gunakan endpoint asinkron, bukan permintaan sinkron. Panggil
create_query_taskuntuk memulai kueri secara asinkron, lalu pollingquery_task_resultsuntuk mengambil hasil setelah kueri selesai.
Mengatasi waktu tunggu traffic keluar yang dikontrol
Untuk mengatasi error 504 yang terjadi saat Looker (Google Cloud core) gagal terhubung ke layanan eksternal atau penyedia identitas dengan egress yang dikontrol diaktifkan, ikuti langkah-langkah berikut:
- Verifikasi FQDN yang diperlukan: Di konsol Google Cloud , verifikasi bahwa semua domain yang diperlukan oleh penyedia identitas atau layanan eksternal Anda telah ditambahkan ke daftar FQDN Global. Alur autentikasi OIDC sering kali memerlukan beberapa endpoint (seperti endpoint otorisasi, token, dan informasi pengguna) yang mungkin menggunakan domain yang berbeda.
- Merekam pelacakan jaringan: Jika error berlanjut, rekam pelacakan jaringan browser (file HAR) saat merekonstruksi masalah. Telusuri rekaman aktivitas untuk kode status
504atau permintaan HTTP yang gagal untuk mengidentifikasi domain yang dihubungi selama alur, tetapi tidak disertakan dalam daftar FQDN Global Anda. - Reset konfigurasi: Jika FQDN yang diperlukan ada, tetapi permintaan terus mengalami waktu tunggu habis, ikuti langkah-langkah di Penyelesaian untuk kegagalan autentikasi OpenID Connect guna mereset konfigurasi egress yang dikontrol.
Masa berlaku eksekusi HttpClient:ConnectTimeoutError telah berakhir
Saat menguji koneksi OpenID Connect atau koneksi jaringan eksternal lainnya di panel Admin Looker, uji koneksi mungkin gagal dengan error waktu tunggu.
Gejala
Saat Anda menjalankan uji koneksi di panel Admin Looker (seperti di halaman OpenID Connect Authentication), Looker akan menampilkan error berikut:
HttpClient:ConnectTimeoutError execution expired
Penyebab
Error ini menunjukkan bahwa instance Looker (inti Google Cloud) tidak memiliki jalur jaringan yang diperlukan untuk berkomunikasi dengan layanan eksternal atau penyedia identitas. Masalah ini biasanya terjadi saat salah satu kondisi berikut terpenuhi:
- Propagasi rute tidak ada: Cloud Router menggunakan setelan default dan tidak mempropagasi rute jaringan VPC (seperti rute yang diiklankan kustom) ke instance Looker (inti Google Cloud).
- NEG internet tidak ada: Grup endpoint jaringan (NEG) internet tidak dikonfigurasi di jaringan VPC Anda untuk merutekan traffic ke layanan eksternal.
Resolusi
Untuk menyelesaikan masalah ini, ikuti langkah berikut:
- Konfigurasi propagasi rute Cloud Router: Pastikan Cloud Router dikonfigurasi untuk menyebarkan rute jaringan VPC yang diperlukan ke instance Looker (Google Cloud core) Anda dengan menyiapkan rute yang diiklankan kustom.
- Konfigurasi NEG internet: Siapkan NEG internet di jaringan VPC Anda untuk memungkinkan instance Looker (inti Google Cloud) merutekan traffic keluar ke penyedia atau layanan identitas eksternal.
- Verifikasi akses layanan pribadi: Untuk instance yang menggunakan akses layanan pribadi, pastikan jaringan VPC Anda di-peering dengan benar ke layanan Google. Untuk mengetahui informasi selengkapnya, lihat Mengakses layanan eksternal menggunakan akses layanan pribadi.
Masalah koneksi Private Service Connect ke selatan
Untuk instance Looker (Google Cloud core) yang menggunakan Private Service Connect untuk koneksi keluar ke backend database atau layanan yang dipublikasikan, Anda mungkin mengalami error koneksi meskipun status endpoint adalah Accepted.
Masalah umum meliputi:
- Error resolusi nama host: Jika Looker (inti Google Cloud) menampilkan error
Unknown hostsaat menguji koneksi, verifikasi bahwa nama host yang dikonfigurasi cocok dengan data DNS di jaringan pribadi Anda dan load balancer backend berfungsi dengan baik. - Waktu tunggu koneksi habis: Jika waktu tunggu koneksi habis, periksa aturan firewall VPC Anda untuk memverifikasi bahwa traffic masuk diizinkan dari subnet NAT Private Service Connect ke backend load balancer Anda.
- Status Tertunda atau Ditutup: Jika status lampiran layanan adalah
PendingatauClosed, periksa apakah project konsumen berada dalam daftar yang diizinkan lampiran layanan dan apakah pemeriksaan kondisi TCP wajib dikonfigurasi. - Kegagalan update dengan error internal 13: Saat Anda mengupdate lampiran layanan keluar menggunakan Terraform atau API, update mungkin gagal dengan
Internal error 13jika konfigurasi masuk Anda dalam status error. Untuk informasi selengkapnya, lihat Error internal 13 saat mengupdate lampiran layanan keluar.
Untuk mengetahui alur kerja diagnostik mendetail dan diagram alir, lihat Memecahkan masalah koneksi Private Service Connect ke selatan.
Error internal 13 saat memperbarui lampiran layanan keluar
Saat Anda menggunakan Terraform atau Looker (Google Cloud core) API untuk menambahkan, mengupdate, atau menghapus lampiran layanan keluar (egress) Private Service Connect di instance Looker (Google Cloud core) yang ada, update mungkin gagal karena error internal.
Gejala
Anda mungkin mengalami gejala berikut:
Update Terraform atau API gagal dengan error yang mirip dengan berikut ini:
Error: Error waiting for Updating Instance: Error code 13, message: an internal error has occurredInstance Looker (Google Cloud core) gagal membuat koneksi ke layanan target, meskipun lampiran layanan di jaringan VPC produsen menampilkan status koneksi
Accepted.
Penyebab
Error ini terjadi saat konfigurasi masuk Private Service Connect instance (allowed_vpcs) memasuki status error di backend.
Saat Anda menggunakan Terraform atau klien API untuk memperbarui lampiran layanan keluar (psc_service_attachments), payload permintaan biasanya mencakup seluruh blok psc_config, yang berisi parameter allowed_vpcs.
Looker (Google Cloud core) API mencoba memvalidasi konfigurasi inbound selama update. Karena allowed_vpcs berada dalam status error,
validasi gagal, sehingga seluruh update instance gagal dengan kode error
13 dan mencegah perubahan lampiran layanan keluar diterapkan.
Resolusi
Untuk melewati error validasi konfigurasi inbound dan menerapkan pembaruan lampiran layanan outbound, selesaikan solusi berikut:
- Dalam konfigurasi Terraform atau payload API, jadikan sebagai komentar atau hapus sementara parameter
allowed_vpcsdari blokpsc_config. Terapkan konfigurasi Terraform atau kirim ulang permintaan API untuk memperbarui lampiran layanan keluar (
psc_service_attachments).Karena payload permintaan tidak menyertakan
allowed_vpcs, API akan melewati validasi untuk konfigurasi inbound dan menerapkan perubahan lampiran layanan outbound.Setelah lampiran layanan keluar di-deploy dan koneksi dibuat, pulihkan parameter
allowed_vpcsdalam konfigurasi Terraform atau payload API Anda.Terapkan kembali konfigurasi Terraform.
Masalah konektivitas dan rute akses layanan pribadi
Untuk instance Looker (inti Google Cloud) yang menggunakan akses layanan pribadi, komunikasi keluar ke layanan eksternal memerlukan propagasi rute dan infrastruktur jaringan yang tepat:
- Penyebaran rute: Pastikan Cloud Router dikonfigurasi untuk menyebarkan rute jaringan VPC ke instance Looker (inti Google Cloud), seperti rute kustom yang diiklankan.
- Grup endpoint jaringan internet: Jika instance Anda perlu menjangkau endpoint eksternal melalui akses layanan pribadi, pastikan grup endpoint jaringan (NEG) internet dikonfigurasi di jaringan VPC Anda.
Jika rute atau grup endpoint ini tidak ada, uji koneksi ke endpoint eksternal akan gagal dengan error
HttpClient:ConnectTimeoutError execution expired.
Untuk mengetahui informasi selengkapnya, lihat Mengakses layanan eksternal menggunakan akses layanan pribadi.
Alat dan log diagnostik
Gunakan alat dan log berikut untuk membantu mendiagnosis masalah jaringan:
- Cloud Logging: Lihat log tingkat instance di Cloud Logging untuk mengidentifikasi kegagalan koneksi dan peristiwa sistem. Untuk mengetahui informasi selengkapnya, lihat Melihat log instance.
- Aktivitas Sistem Looker: Jika Anda dapat login sebagai administrator, tinjau dasbor Aktivitas Pengguna di Aktivitas Sistem. Dasbor ini menampilkan kegagalan login terbaru, metode autentikasi yang digunakan, dan pesan error. Untuk mengetahui informasi selengkapnya, lihat Dasbor Aktivitas Pengguna.
- VPC Flow Logs: Periksa VPC Flow Logs untuk menentukan apakah traffic jaringan dari Looker (inti Google Cloud) mencapai subnet tujuan Anda atau diblokir oleh aturan firewall.
- Cloud Customer Care: Jika Anda telah menyelesaikan langkah-langkah pemecahan masalah dan masalah berlanjut, hubungi Cloud Customer Care untuk mendapatkan bantuan.