【问题标题】:How can GKE create a reserved public or private gcp address for use in a LoadBalancer Service?GKE 如何创建保留的公共或私有 gcp 地址以用于 LoadBalancer 服务?
【发布时间】:2019-04-27 13:39:48
【问题描述】:

GKE 或 Helm 是否支持让 k8s 为我创建一个保留的 GCP 地址,我将在 externalIPs 中使用该地址?

我可以自己编写脚本,但我希望这个保留成为 Kubernetes 配置本身的一部分,而不是必须使用我自己的脚本或手动在 k8s 配置之外创建它。

也许新的 k8s 服务目录可以为我提供一个保留的静态 IP?

【问题讨论】:

    标签: kubernetes google-cloud-platform google-compute-engine google-kubernetes-engine


    【解决方案1】:

    编辑:

    对于传入流量:

    您可以为服务类型 LoadBalancer 定义静态 IP。您必须事先保留静态 IP,并且您可以定义 spec.loadBalancerIP 字段以使用保留的 IP 地址。

    您还可以使用 annotation 为 Ingress 资源分配静态 IP

    对于出站或出口流量:

    没有办法让 GKE 使用预定义的静态 IP,因为节点是从不能包含静态 IP 的单个模板创建的。

    与许多 k8s 组件一样,节点是短暂且无状态的。在大多数需要静态 IP 的情况下,这是因为集群将调用外部应用程序或端点,并且这些 IP 必须被列入白名单。在这些情况下,建议使用将使用静态 IP 的 NAT。

    您可以关注this tutorial 或考虑使用Cloud NAT with GKE

    【讨论】:

    • k8s 确实有这个能力,并且可以在配置中使用静态 IP。我的问题是 k8s 是否可以联系 GCP 并创建预订。 k8s Service Catalog 可以配置云资源,这就是这个操作的目的
    • 不,不能在 GKE 中完成。服务目录可以提供外部资源,而不是 GCP 中的节点本身。没有办法合并信息 GKE,允许在创建节点时为集群保留静态 IP。 IP需要保留或事后更改
    • 这将是 loadBalancer 类型的服务 - 编辑我的问题标题
    猜你喜欢
    • 2022-01-13
    • 1970-01-01
    • 1970-01-01
    • 2020-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多