如何在Google Kubernetes Engine中设置特定节点的外部IP?

时间:2019-07-26 20:17:39

标签: networking kubernetes google-kubernetes-engine

不幸的是,我们必须与第三方服务交互,而不是执行身份验证,而是依靠请求IP来确定客户端是否被授权。

这是有问题的,因为节点是由Kubernetes启动和销毁的,并且每次外部IP发生变化时。有没有办法确保在一组固定IP中选择外部IP?这样,我们可以将这些IP传达给第三方,并且它们将被授权执行请求。我只找到一种修复服务IP的方法,但是在所有单个节点的IP上都不会改变。

要清楚一点,我们正在使用Google的Kubernetes Engine,因此针对该环境的自定义解决方案也将起作用。

2 个答案:

答案 0 :(得分:2)

是的,可以使用http://pdfkit.org/docs/getting_started.html

您可以创建一个共享IP地址的池,并使用KubeIP将IP地址从池中自动附加到Kubernetes节点。

可以通过以下方式创建IP地址:

  1. 打开Goog​​le Cloud Dashboard
  2. 进入VPC网络->外部IP地址
  3. 单击“保留静态地址”并按照向导进行操作(在网络服务层上,我认为它必须是“ Premium”才能生效)。

答案 1 :(得分:1)

为GKE节点或整个群集使用单个静态IP的最简单方法是使用NAT。

您可以使用自定义NAT解决方案,也可以将Google Cloud NAT与私有群集一起使用