Ingress не перенаправляет на мой сервис после AppID на IKS - PullRequest
1 голос
/ 20 июня 2019

У меня есть кластер IKS с привязанным к нему AppID. У меня проблема с перенаправлением приложения NodeJS при входе. Все остальные приложения работают как с AppID, так и с входом, но это дает 500 Internal Server error при перенаправлении обратно из AppID. Служба работает нормально, когда используется как NodePort и доступна по адресу сервера и этого узла порта.

При описании входа я получаю только успешные результаты обратно

Events:
  Type    Reason   Age    From                                                             Message
  ----    ------   ----   ----                                                             -------
  Normal  Success  58m    public-cr9c603a564cff4a27adb020dd40ceb65e-alb1-59fb8fc894-s59nd  Successfully applied ingress resource.

Мой вход выглядит так:


apiVersion: v1
items:
- apiVersion: extensions/v1beta1
  kind: Ingress
  metadata:
    annotations:
      ingress.bluemix.net/appid-auth: bindSecret=binding-raven3-app-id namespace=default
        requestType=web serviceName=r3-ui
      ingress.bluemix.net/rewrite-path: serviceName=r3-ui rewrite=/;
      kubectl.kubernetes.io/last-applied-configuration: |
        {"apiVersion":"extensions/v1beta1","kind":"Ingress","metadata":{"annotations":{"ingress.bluemix.net/appid-auth":"bindSecret=binding-raven3-app-id namespace=default requestType=api serviceName=r3-ui [idToken=false]"},"name":"myingress","namespace":"default"},"spec":{"rules":[{"host":"*host*","http":{"paths":[{"backend":{"serviceName":"r3-ui","servicePort":3000},"path":"/"}]}}],"tls":[{"hosts":["mydomain"],"secretName":"mytlssecret"}]}}
    creationTimestamp: "2019-06-20T10:31:57Z"
    generation: 21
    name: myingress
    namespace: default
    resourceVersion: "24140"
    selfLink: /apis/extensions/v1beta1/namespaces/default/ingresses/myingress
    uid: a15f74aa-9346-11e9-a9bf-f63d33811ba6
  spec:
    rules:
    - host: *host*
      http:
        paths:
        - backend:
            serviceName: r3-ui
            servicePort: 3000
          path: /
    tls:
    - hosts:
      - *host*
      secretName: raven3
  status:
    loadBalancer:
      ingress:
      - ip: 169.51.71.141
kind: List
metadata:
  resourceVersion: ""
  selfLink: ""

и мой сервис выглядит так:

apiVersion: v1
kind: Service
metadata:
  creationTimestamp: "2019-06-20T09:25:30Z"
  labels:
    app: r3-ui
    chart: r3-ui-0.1.0
    heritage: Tiller
    release: r3-ui
  name: r3-ui
  namespace: default
  resourceVersion: "23940"
  selfLink: /api/v1/namespaces/default/services/r3-ui
  uid: 58ff6604-933d-11e9-a9bf-f63d33811ba6
spec:
  clusterIP: 172.21.180.240
  ports:
  - name: http
    port: 3000
    protocol: TCP
    targetPort: http
  selector:
    app: r3-ui
    release: r3-ui
  sessionAffinity: None
  type: ClusterIP
status:

Что странно, так это то, что я получаю разные результаты на порте 80 и на порту 443. На порте 80 я получаю ошибку HTTP 500, а на порте 443 я получаю Invalid Host header

1 Ответ

0 голосов
/ 21 июня 2019

Используете ли вы https для доступа к своему приложению?Из соображений безопасности проверка подлинности по идентификатору приложения поддерживает только серверные части с включенным протоколом TLS / SSL.

Если вы используете SSL и у вас по-прежнему возникают проблемы, вы можете поделиться своими входными журналами и журналами приложений, чтобы мы могли выяснить, что пошло не так?

Спасибо.

...