【发布时间】:2015-11-22 19:41:18
【问题描述】:
我有一个在 Google Compute Engine 上运行的 Kubernetes 集群,我想将静态 IP 地址分配给我的外部服务 (type: LoadBalancer)。我不确定目前这是否可行。我找到了关于该主题的以下来源:
- Kubernetes Service Documentation 允许您定义一个外部 IP 地址,但它失败了 cannot unmarshal object into Go value of type []v1.LoadBalancerIngress
- publicIPs field 似乎可以让我指定外部 IP,但它似乎也不起作用
- This Github issue 表示我正在尝试做的事情尚不支持,但将在 Kubernetes v1.1 中
- clusterIP field 还允许我指定 IP 地址,但失败并显示“提供的 IP 不在有效范围内”
我觉得在设置 Web 服务时使用静态 IP 非常重要。我在这里错过了什么吗?如果有人能在这里启发我,我将非常感激!
编辑:澄清一下:我没有使用 Container Engine,我自己使用 Compute Engine 的官方安装说明设置了一个集群。与我的 k8s 服务关联的所有 IP 地址都标记为“临时”,这意味着重新创建 kubernetes 服务可能会导致不同的外部 IP 地址(这就是为什么我需要它们是静态的)。
【问题讨论】:
-
你到底做了什么来解决这个问题?和你一样,恐怕如果 IP 发生变化,每次重新创建部署时,我都必须更改 godaddy 记录以指向新的 IP 地址。
-
在您的服务声明中使用
loadBalancerIP字段,如当前文档中所述:kubernetes.io/docs/user-guide/services/#type-loadbalancer
标签: load-balancing google-compute-engine kubernetes