HTTP-LoadBalancer, созданный с помощью Ingress on GKE, нестабилен между http-разрешением и НЕ http-разрешением - PullRequest
0 голосов
/ 07 февраля 2019

Я пытаюсь установить HTTPS-LB, который не позволяет использовать HTTP, в GKE с Ingress.

Теперь, как описано на официальном сайте, я развернул простое приложение в частном кластере,Это приложение работает с доступом через браузер.※ как по http-соединению, так и по https-соединению

Затем я запрещаю http-доступ к приложению, отключив протокол «http» внешнего интерфейса (удаление) в настройках LB.На самом деле сначала HTTP-соединение через браузер получало ошибку, а не connection-error.Через 5-10 минут настройка протокола http восстанавливается автоматически.

Вот файл yaml.

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: ingress-name
  annotations:
    # kubernetes.io/ingress.allow-http: "false" 
    kubernetes.io/ingress.global-static-ip-name: "ip-name" 
spec:
  #tls:
  #This assumes tls-secret exists.
  #- hosts:
  #  - XXXXXXXX.XXX.XXX
  #  secretName: ip-secret ← no use because of google-managed-ssl
  rules:
  - http:
      paths:
      # to app
      - path: /*
        backend:
          serviceName: XXXXX-backend
          servicePort: 80
      # to DS Export
      - path: /backend/*
        backend:
          serviceName: XXXXX-be-backend
          servicePort: 80

Эта проблема связана с браузером?или внутренние настройки, такие как http-health-checker в экземплярах gce?

1 Ответ

0 голосов
/ 09 февраля 2019

Если вы можете подтвердить, какой учебник вы читаете, мы можем подтвердить тест.Сказав это, я думаю, что поведение, которое вы видите, можно ожидать.

Согласно GKE Ingress doc , в нем говорится:

" Всякий раз, когда через Ingress настроен балансировщик нагрузки HTTP (S), вы не должны изменять илиобновите конфигурацию балансировщика нагрузки HTTP (S), то есть вы не должны редактировать какие-либо компоненты балансировщика нагрузки, включая целевые прокси, сопоставления URL-адресов и внутренние службы. Любые внесенные вами изменения будут перезаписаны GKE.."

Вы можете попытаться удалить вход, выполнить ручное редактирование файла YAML, заново создать его и посмотреть, работает ли удаление HTTP.

...