gcp为节点池中的节点分配外部IP地址



我有一个节点池(在terraform中创建),并且我在我的项目中保留了一个外部IP。

我希望节点池中的一个节点始终被分配特定的IP地址。

有办法在GCP上做到这一点吗?

您可以为实例分配静态外部IP地址,但这对于GKE节点是不可能的,因为节点本质上是致命的,可以重新分配。这里需要为每个节点保留一个静态IP地址,这是不可能的。如果不使用预留的静态IP地址,可能会造成静态IP资源的浪费。你还是得付钱的。

您还可以选择使用入口配置HTTP负载均衡器并为您的负载均衡器保留静态IP地址。您可以使用ClusterIP类型的服务,并创建一个将流量转发到这些服务的入口规则,而不是使用NodePort。通过使用云Nat,可以将出接口流量路由到静态IP地址。

Kubernetes基于这样的理念:你的节点(基础设施)是一次性的,应该没有任何意义。

任何节点都可能在任何时候发生故障或被cloudder关闭(想想那些短暂的实例)。

大多数人只需要公开一些部署或pod。

为了使生活更简单(不仅对于SRE,对于调度器软件也是如此),我们通常每个节点有一个pod。

我猜你认为你需要给一个节点一个特定的地址,因为它里面有一个pod,必须有这个地址。

如果您需要为开发提供特定的IP地址,则需要公开它(kubectl expose使用--external-ip选项)。

我相信你可能需要一个固定的IP绑定到一个节点的唯一情况是,如果你需要在那个节点上运行一些软件,这些软件是为那个IP地址许可的,但我不确定用例。

最新更新