Почему GKE дает мне разные IP-адреса для каждого входа, который я создаю? - PullRequest
0 голосов
/ 11 мая 2018

Я использую несколько входных ресурсов в моем GKE, скажем, у меня есть 2 входа в разных пространствах имен. Я создаю входной ресурс, как показано в yaml ниже. С аннотациями, использованными в приведенном ниже yaml, я четко отмечаю, что я использую контроллер GCE, который поставляется с GKE (https://github.com/kubernetes/ingress-gce).). Но каждый раз, когда я создаю вход, я получаю разные IP-адреса, например иногда я получаю 133.133.133. . 133 , а в остальное время я получаю 133.133.133. 134 . И он чередуется только между этими двумя IP-адресами (это, вероятно, между только двумя IP-адресами из-за ограничения квот.) Это проблема, когда я просто хочу зарезервировать один IP-адрес и распределить нагрузку / завершить работу нескольких приложений только на этом IP-адресе.

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    kubernetes.io/ingress.class: gce
  name: http-ingress
spec:
  backend:
    serviceName: http-svc
    servicePort: 80

1 Ответ

0 голосов
/ 11 мая 2018

В своем ресурсе Ingress вы можете указать, что вам нужен балансировщик нагрузки для использования определенного IP-адреса с аннотацией kubernetes.io/ingress.global-static-ip-name, например:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    kubernetes.io/ingress.class: gce
    kubernetes.io/ingress.global-static-ip-name: static-ip-name
  name: http-ingress
spec:
  backend:
    serviceName: http-svc
    servicePort: 80

Сначала вам нужно будет создать глобальный статический IP-адрес с помощью инструмента gcloud. См шаг 2 (б) здесь: https://cloud.google.com/kubernetes-engine/docs/tutorials/configuring-domain-name-static-ip.

...