Не могу понять nginx .ingress.kubernetes.io / app- root: "/ identity" с несколькими службами под ним - PullRequest
0 голосов
/ 19 марта 2020

У меня есть такое определение входа

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: {{ $fullName }}-stateful
  labels: 
    app: oxauth
  annotations:
    kubernetes.io/ingress.class: "nginx"
    nginx.org/ssl-services: "oxtrust"
    nginx.ingress.kubernetes.io/app-root: "/identity"    <------------------- CONFUSING
    nginx.ingress.kubernetes.io/affinity: "cookie"
spec:
{{- if .Values.ingress.tls }}
  tls:
  {{- range .Values.ingress.tls }}
    - hosts:
      {{- range .hosts }}
        - {{ . | quote }}
      {{- end }}
      secretName: {{ .secretName }}
  {{- end }}
{{- end }}
  rules:
  {{- range .Values.ingress.hosts }}
    - host: {{ . | quote }}
      http:
        paths:
          - path: /identity
            backend:
              serviceName: oxtrust
              servicePort: 8080
          - path: /idp
            backend:
              serviceName: oxshibboleth
              servicePort: 8080
          - path: /passport
            backend:
              serviceName: oxpassport
              servicePort: 8090

Я знаю, nginx.ingress.kubernetes.io/app-root должен перенаправлять запросы, поступающие из /, в одно определение. Мой вопрос так как теперь у нас есть несколько сервисов, определенных под этим входным объектом, что произойдет ?? Я очень смущен здесь. Помня, есть еще один вход, определенный как показано.

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: {{ $fullName }}-base
  labels:
    app: oxtrust
  annotations:
    kubernetes.io/ingress.class: "nginx"
    nginx.ingress.kubernetes.io/app-root: "/identity"
    nginx.ingress.kubernetes.io/affinity: "cookie"
    nginx.ingress.kubernetes.io/session-cookie-name: "route"
    nginx.ingress.kubernetes.io/session-cookie-hash: "sha1"

spec:
{{- if .Values.ingress.tls }}
  tls:
  {{- range .Values.ingress.tls }}
    - hosts:
      {{- range .hosts }}
        - {{ . | quote }}
      {{- end }}
      secretName: {{ .secretName }}
  {{- end }}
{{- end }}
  rules:
  {{- range .Values.ingress.hosts }}
    - host: {{ . | quote }}
      http:
        paths:
          - path: /
            backend:
              serviceName: oxtrust
              servicePort: 8080
  {{- end }}

Очень ценится.

1 Ответ

1 голос
/ 19 марта 2020

Любой запрос, поступающий через указанные маршруты в этом входном определении, должен быть переписан или направлен на /identity

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...