Jak zdefiniować Ingress w GKE za pomocą kontenerów Spring Cloud Netflix
Mam architekturę mikrousług zbudowaną na Spring Cloud Netflix:
- business-owner-service wskazuje na aplikację Spring Boot, która działa na porcie 8763. Przekierowanie portu jest zakończone, business-owner-service: 80 przekierowuje na port 8763.
- Customer-service wskazuje na aplikację Spring Boot, która działa na porcie 8766. customer-service: 80 -> 8766
Architektura działa poprawnie, jeśli wywołam ją przez bramę Spring Cloud Zuul, ale chcę skonfigurować Ingress.
Moja dokładna konfiguracja jest następująca:
ingres
konfiguracja ścieżki wejściowej

Problem polega na tym, że ruch przychodzący ma wszystkie usługi backendu w złym stanie i nie wiem, co robię źle. Co muszę zrobić, aby mieć działający Ingress?
Edycja: Zgodnie z komentarzami próbowałem zdefiniować gotowość, dla modułu obsługi klienta, w następujący sposób:

To nie działa, a kiedy próbuję dwukrotnie sprawdzić zaktualizowaną konfigurację, readinessProbe nie jest widoczny. Myślę, że to błąd, ale nie jestem pewien, jak sprawdzić, czy sonda jest zaktualizowana, czy nie.
Ponadto element wykonawczy / kondycja GET działa przez bramę Zuul:

Odpowiedzi
W moim przypadku rozwiązaniem okazała się konfiguracja kontroli stanu, a nie gotowość do pracy. Zaktualizowałem kontrolę stanu, która została automatycznie utworzona dla usług wewnętrznej bazy danych wejściowych, aby wskazywała na / siłownik / kondycję. To zadziałało
Kontroler GKE ruchu przychodzącego przeprowadza kontrolę stanu za pomocą sondy gotowości zdefiniowanej we wdrożeniu pod. Dodaj sondę gotowości, jak poniżej, używając siłownika sprężynowego
spec:
containers:
- name: name
readinessProbe:
httpGet:
port: 8080
path: /actuator/health
initialDelaySeconds: 10