google cloud http (s) load balancer mengembalikan 502 meskipun layanan backend sehat


11

Saya punya penyeimbang beban GCE http yang dikonfigurasi untuk mengarahkan lalu lintas ke 2 backend: - backend default - backend kedua dengan aturan host / path yang terpisah ( <host>:/*)

Kedua backend ada di grup instance yang sama - cluster kontainer yang menjalankan dua layanan kubernetes yang mengekspos NodePort yang berbeda.

Grup instance memiliki dua port bernama, satu untuk masing-masing NodePorts yang terbuka.

Meskipun kedua backend melaporkan sehat, semua permintaan ke backend kedua kembali 502.

Layanan itu sendiri bukan masalah - jika saya mengganti layanan di belakang backend 2 menjadi default, itu berfungsi dengan baik.

CATATAN : Saya telah memperbarui / menyederhanakan deskripsi ini sejak pertama kali diposting, karena saya dapat mereproduksi masalah dengan konfigurasi yang jauh lebih sederhana.


1

Tanggapan dalam masalah google ini menunjukkan bahwa ini adalah konfigurasi. masalah dengan aturan host / path.
hawkett

Jawaban:


4

Lalu lintas dari penyeimbang beban ke instance Anda tidak diaktifkan secara default. Sayangnya ini tidak didokumentasikan dengan baik, dan sungguh, ketika Anda membuat penyeimbang beban ini harus terjadi secara otomatis.

Coba tambahkan firewall ini untuk mengatur jaringan penyeimbang beban dan VM Anda:

130.211.0.0/22   tcp:1-5000   Apply to all targets

1
Masalahnya bukan aturan firewall - layanan bekerja secara individual. Dari respons dalam masalah google yang tercantum dalam komentar OP, sepertinya masalah konfigurasi pada aturan host / path.
hawkett
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.