0

Ich habe auf der Google Container Engine-Plattform einen Eingang, dass ich einen Standard-Back-End-Dienst für fast alle meine Domains haben möchte (es gibt einige, aber haben Sie einen anderen, spezifischen Service für eine Domäne.Gehen Sie nach meinem Verständnis der ingress user guide (Suche nach "Default Backends:" dort), sollte die Konfiguration unten korrekt funktionieren.Ingress mit beiden Regeln und Standard-Backend in Google Container Engine

Allerdings wird es nie erstellen Das zweite Backend: kubectl describe ingress läuft auf dem Ingress, und wenn man auf der Google Console-Seite den LB ansieht, wird nur der erste "Standard" Backend-Dienst aufgelistet. Das Ändern des Standard-Bugs in eine Regel behebt das Problem, bedeutet aber, dass ich es explizit machen muss listet alle Domänen auf, die ich unterstützen möchte

Also nehme ich an, ich habe einen Fehler in der Konfiguration unten. Wenn ja, was ist das?

apiVersion: extensions/v1beta1 
kind: Ingress 
metadata: 
    name: boringsites 
spec: 
    backend: 
    serviceName: boringsites 
    servicePort: 80 
    tls: 
    - secretName: boringsites-tls 
    rules: 
    - host: subdomain.example.com 
     http: 
     paths: 
      - backend: 
       serviceName: other-svc 
       servicePort: 80 

Antwort

0

Ich habe gerade https://gist.github.com/bprashanth/9f4533b19fd864b723ba0720a3648fa3#file-default-basic-yaml-L94 auf Kubernetes 1.3 und es funktioniert wie erwartet. Vielleicht können Sie rückwärts debuggen? Wo fährst du kube und welche Version verwendest du? Es gibt ein bekanntes und festes Rennen in 1.2, in das Sie möglicherweise geraten, besonders wenn Sie den Eintritt aktualisiert haben. Beachten Sie außerdem, dass Sie Dienste vom Typ "nodeport" benötigen, oder dass der Ingress-Controller in gce den Service ignoriert, den Sie in die Ressource eingesteckt haben.

+0

Ah! Mein Service war immer noch ein ClusterIP. Ich musste es ersetzen, und dann entfernen Sie die Regel aus dem Eindringen und legen Sie es zurück (und warten Sie ein wenig) für das Eindringen, um das Backend wieder aufzunehmen. – jmhodges