k8s входной множественный с хостами tls - PullRequest
0 голосов
/ 06 ноября 2018

Я пытаюсь настроить вход на gke для обслуживания двух разных ssl-сертификатов на двух разных хостах.

Мои сертификаты SSl хранятся как секреты, и моя версия k8s - 1.10.9-gke.0 (в настоящее время я пытаюсь перейти на 1.11, чтобы посмотреть, изменит ли это что-нибудь).

Вот моя входная конфигурация:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    ingress.kubernetes.io/backends: '{"k8s-be-30086--b1574396a1d7162f":"HEALTHY","k8s-be-31114--b1574396a1d7162f":"HEALTHY"}'
    ingress.kubernetes.io/forwarding-rule: k8s-fw-default-si-preproduction-ingress--b1574396a1d7162f
    ingress.kubernetes.io/https-forwarding-rule: k8s-fws-default-si-preproduction-ingress--b1574396a1d7162f
    ingress.kubernetes.io/https-target-proxy: k8s-tps-default-si-preproduction-ingress--b1574396a1d7162f
    ingress.kubernetes.io/ssl-cert: k8s-ssl-default-si-preproduction-ingress--b1574396a1d7162f
    ingress.kubernetes.io/static-ip: k8s-fw-default-si-preproduction-ingress--b1574396a1d7162f
    ingress.kubernetes.io/target-proxy: k8s-tp-default-si-preproduction-ingress--b1574396a1d7162f
    ingress.kubernetes.io/url-map: k8s-um-default-si-preproduction-ingress--b1574396a1d7162f
  creationTimestamp: 2018-10-26T09:45:46Z
  generation: 9
  name: si-preproduction-ingress
  namespace: default
  resourceVersion: "1846219"
  selfLink: /apis/extensions/v1beta1/namespaces/default/ingresses/si-preproduction-ingress
  uid: e9bba9ad-d903-11e8-872e-42010a840feb
spec:
  tls:
  - hosts:
    - domain_1
    secretName: cert_1
  - hosts:
    - domain_2
    secretName: cert_2
  rules:
  - host: domain_1
    http:
      paths:
      - backend:
          serviceName: si-preproduction-service
          servicePort: 80
        path: /*
  - host: domain_2
    http:
      paths:
      - backend:
          serviceName: si-preproduction-service
          servicePort: 80
        path: /*
status:
  loadBalancer:
    ingress:
    - ip: our_ip

Мой cert_1 правильно обслуживается на domain_1, но он также обслуживается на domain_2 (вместо cert_2) и, следовательно, не защищает мои соединения, как предполагается.

Я также открываю вопрос о github здесь .

1 Ответ

0 голосов
/ 07 ноября 2018

Обновление до k8s 1.11+ решило проблему.

...