首页 文章

为什么GKE会为我创建的每个入口提供不同的IP?

提问于
浏览
0

我在我的GKE上使用多个ingresses资源,比如我在不同的命名空间中有2个入口 . 我创建了入口资源,如下面的yaml所示 . 使用下面的yaml中使用的注释,我清楚地提到我正在使用GKE附带的GCE控制器(https://github.com/kubernetes/ingress-gce) . 但每次我创建一个入口我都会获得不同的IP,例如有时我得到133.133.133 . 133 而其他时候我得到133.133.133 . 134 . 它只在这两个IP之间交替(由于配额限制,它可能只在两个IP之间) . 当我只想保留一个IP并仅在此IP上负载 balancer /终止多个应用程序时,这是一个问题 .

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

1 回答

  • 0

    在您的Ingress资源中,您可以指定您需要Load Balancer以使用具有 kubernetes.io/ingress.global-static-ip-name 注释的特定IP地址,如下所示:

    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
    

    您需要首先使用gcloud工具创建全局静态IP . 请参见步骤2(b):https://cloud.google.com/kubernetes-engine/docs/tutorials/configuring-domain-name-static-ip .

相关问题