Panduan ini menjelaskan cara memecahkan masalah konfigurasi untuk Google Cloud Load Balancer Jaringan passthrough eksternal. Sebelum menyelidiki masalah, pahami halaman berikut:
- Ringkasan Load Balancer Jaringan passthrough eksternal
- Ringkasan Load Balancer Jaringan passthrough eksternal berbasis layanan backend
- Distribusi traffic untuk Load Balancer Jaringan passthrough eksternal berbasis layanan backend
- Ringkasan Load Balancer Jaringan passthrough eksternal berbasis kumpulan target
- Konsep failover untuk Load Balancer Jaringan passthrough eksternal
- Logging dan pemantauan Load Balancer Jaringan passthrough eksternal
Memecahkan masalah umum dengan Network Analyzer
Network Analyzer secara otomatis memantau konfigurasi jaringan VPC Anda dan mendeteksi konfigurasi yang kurang optimal dan kesalahan konfigurasi. Alat ini mengidentifikasi kegagalan jaringan, memberikan informasi penyebab utama, dan menyarankan kemungkinan solusi. Untuk mempelajari berbagai skenario kesalahan konfigurasi yang otomatis terdeteksi oleh Penganalisis Jaringan, lihat Insight load balancer dalam dokumentasi Penganalisis Jaringan.
Network Analyzer tersedia di konsol Google Cloud sebagai bagian dari Network Intelligence Center.
Buka Penganalisis JaringanMemecahkan masalah penyiapan
Backend memiliki mode load balancing yang tidak kompatibel
Saat membuat load balancer, Anda mungkin melihat error:
Validation failed for instance group INSTANCE_GROUP: backend services 1 and 2 point to the same instance group but the backends have incompatible balancing_mode. Values should be the same.
Hal ini terjadi saat Anda mencoba menggunakan backend yang sama di dua load balancer yang berbeda, dan backend tidak memiliki mode penyeimbangan yang kompatibel.
Untuk informasi selengkapnya, lihat referensi berikut:
Memecahkan masalah konektivitas umum
Jika Anda tidak dapat terhubung ke Load Balancer Jaringan passthrough eksternal, periksa masalah umum berikut:
Verifikasi aturan firewall.
- Pastikan aturan firewall izinkan masuk ditentukan untuk mengizinkan health check ke VM backend.
- Pastikan aturan firewall izinkan masuk mengizinkan traffic ke VM backend dari klien.
- Pastikan aturan firewall yang relevan ada untuk mengizinkan traffic mencapai VM backend di port yang digunakan oleh load balancer.
- Jika Anda menggunakan tag target untuk aturan firewall, pastikan VM backend load balancer diberi tag dengan tepat.
Untuk mempelajari cara mengonfigurasi aturan firewall yang diperlukan oleh Load Balancer Jaringan passthrough eksternal Anda, lihat Mengonfigurasi aturan firewall.
Pastikan agen tamu Google berjalan di VM backend. Jika Anda dapat terhubung ke VM backend yang berfungsi dengan baik, tetapi tidak dapat terhubung ke load balancer, mungkin agen tamu Google (sebelumnya, Lingkungan Tamu Windows atau Lingkungan Tamu Linux) di VM tidak berjalan atau tidak dapat berkomunikasi dengan server metadata (
metadata.google.internal,169.254.169.254).Periksa hal-hal berikut:
- Pastikan agen tamu Google diinstal dan berjalan di VM backend.
- Pastikan aturan firewall dalam sistem operasi tamu
VM backend (
iptablesatau Windows Firewall) tidak memblokir akses ke server metadata.
Verifikasi bahwa VM backend menerima paket yang dikirim ke load balancer. Setiap VM backend harus dikonfigurasi untuk menerima paket yang dikirim ke load balancer. Artinya, tujuan paket yang dikirim ke VM backend adalah alamat IP load balancer. Dalam sebagian besar situasi, hal ini diterapkan dengan rute lokal.
Untuk VM yang dibuat dari Google Cloud image, agen tamu akan menginstal rute lokal untuk alamat IP load balancer. Instance Google Kubernetes Engine berdasarkan Container-Optimized OS menerapkan hal ini dengan menggunakan
iptables.Di VM backend Linux, Anda dapat memverifikasi keberadaan rute lokal dengan menjalankan perintah berikut. Ganti
LOAD_BALANCER_IPdengan alamat IP load balancer:sudo ip route list table local | grep LOAD_BALANCER_IP
Verifikasi binding port dan alamat IP layanan pada VM backend. Paket yang dikirim ke Load Balancer Jaringan passthrough eksternal tiba di VM backend dengan alamat IP tujuan load balancer itu sendiri. Jenis load balancer ini bukan proxy, dan ini adalah perilaku yang diharapkan.
Untuk melihat layanan yang memproses di port, jalankan perintah berikut:
netstat -nl | grep ':PORT'
Software yang berjalan di VM backend harus melakukan hal berikut:
- Memproses permintaan (terikat ke) alamat IP load balancer atau alamat IP apa pun
(
0.0.0.0atau::) - Memproses permintaan pada (terikat ke) port yang disertakan dalam aturan penerusan load balancer
Untuk mengujinya, hubungkan ke VM backend menggunakan SSH atau RDP. Kemudian, lakukan pengujian berikut dengan menggunakan
curl,telnet, atau alat serupa:- Coba jangkau layanan dengan menghubunginya menggunakan alamat IP internal
VM backend itu sendiri,
127.0.0.1, atau localhost. - Coba jangkau layanan dengan menghubunginya menggunakan alamat IP aturan penerusan load balancer.
- Memproses permintaan (terikat ke) alamat IP load balancer atau alamat IP apa pun
(
Pastikan traffic health check dapat menjangkau VM backend. Untuk memverifikasi bahwa traffic health check mencapai VM backend Anda, aktifkan logging health check dan cari entri log yang berhasil.
Memecahkan masalah VPC Bersama
Jika Anda menggunakan VPC Bersama dan tidak dapat membuat Network Load Balancer passthrough eksternal baru di subnet tertentu, kebijakan organisasi mungkin menjadi penyebabnya. Di kebijakan organisasi, tambahkan subnet ke daftar subnet yang diizinkan atau hubungi administrator organisasi Anda. Untuk mengetahui informasi selengkapnya, lihat
batasan
constraints/compute.restrictSharedVpcSubnetworks.
Memecahkan masalah pengalihan
Jika Anda telah mengonfigurasi failover untuk Load Balancer Jaringan passthrough eksternal, gunakan langkah-langkah berikut untuk memverifikasi konfigurasi Anda:
- Pastikan Anda memahami konsep Pelacakan pemilihan dan koneksi backend dan Pengalihan otomatis.
- Pastikan Anda telah menetapkan setidaknya satu backend failover.
- Tinjau backend mana yang responsif menggunakan konsol Google Cloud atau
gcloud compute backend-services get-healthsehingga Anda dapat menentukan VM mana yang merupakan backend yang memenuhi syarat. - Pastikan rasio failover ditetapkan dengan tepat.
- Sebaiknya jangan gunakan grup instance terkelola yang mengaktifkan penskalaan otomatis bersama dengan failover karena penskalaan otomatis mengubah jumlah backend utama, backend failover, atau keduanya. Hal ini dapat menyebabkan set backend yang memenuhi syarat berubah secara tidak terduga karena rasio failover tetap.
- Jika VM klien juga merupakan VM backend yang di-load balance, koneksi ke alamat IP aturan penerusan load balancer akan dikirim ke VM backend itu sendiri. Untuk mengetahui informasi selengkapnya, lihat Menguji dari satu klien.
Memecahkan masalah logging
Jika Anda mengonfigurasi logging untuk Load Balancer Jaringan passthrough eksternal, masalah berikut mungkin terjadi:
- Pengukuran RTT seperti nilai byte mungkin tidak ada di beberapa log jika sampel paket yang diambil tidak cukup untuk merekam RTT. Hal ini lebih mungkin terjadi untuk koneksi bervolume rendah.
- Nilai RTT hanya tersedia untuk alur TCP.
- Beberapa paket dikirim tanpa payload. Jika paket khusus header diambil sampelnya,
nilai byte-nya adalah
0.