Ich folgte dem Load Balancer-Tutorial: https://cloud.google.com/container-engine/docs/tutorials/http-balancer das funktioniert gut, wenn ich das Nginx-Image verwende, wenn ich versuche, mein eigenes Anwendungsbild zu verwenden, obwohl das Backend auf ungesund umschaltet.kubernetes ungesund ingress backend
Meine Anwendung umleitet auf/(eine 302 gibt), aber ich hinzugefügt Definition ein livenessProbe
in der Hülse:
livenessProbe:
httpGet:
path: /ping
port: 4001
httpHeaders:
- name: X-health-check
value: kubernetes-healthcheck
- name: X-Forwarded-Proto
value: https
- name: Host
value: foo.bar.com
Mein Eintritt wie folgt aussieht:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: foo
spec:
backend:
serviceName: foo
servicePort: 80
rules:
- host: foo.bar.com
Service-Konfiguration ist:
kind: Service
apiVersion: v1
metadata:
name: foo
spec:
type: NodePort
selector:
app: foo
ports:
- port: 80
targetPort: 4001
Backends Gesundheit in ingress describe ing
sieht aus wie:
backends: {"k8s-be-32180--5117658971cfc555":"UNHEALTHY"}
und die Regeln für das Eindringen wie folgt aussehen:
Rules:
Host Path Backends
---- ---- --------
* * foo:80 (10.0.0.7:4001,10.0.1.6:4001)
Alle Zeiger stark empfangen, ich habe versucht, dies ohne Glück stundenlang zu erarbeiten.
aktualisiert
Ich habe die readinessProbe
meine Bereitstellung hinzugefügt, aber etwas scheint immer noch zu schlagen/und der Eintritt ist immer noch ungesund. Meine Sonde wie folgt aussieht:
readinessProbe:
httpGet:
path: /ping
port: 4001
httpHeaders:
- name: X-health-check
value: kubernetes-healthcheck
- name: X-Forwarded-Proto
value: https
- name: Host
value: foo.com
ich meinen Dienst geändert:
kind: Service
apiVersion: v1
metadata:
name: foo
spec:
type: NodePort
selector:
app: foo
ports:
- port: 4001
targetPort: 4001
Update2
Nachdem ich die benutzerdefinierten Header aus dem readinessProbe
entfernt fing es an zu arbeiten! Danke vielmals.
Ich habe gerade meinen ursprünglichen Kommentar aktualisiert –
Ich hatte das gleiche Problem, Ihre Antwort, plus die Antwort hier: http://stackoverflow.com/questions/42967763/kubernetes-ingress-gce-keeps-returning-502- Fehler/42971328 hat mir geholfen, dies zu lösen – GrandVizier