我已经使用所有默认设置使用 eksctl 设置了 EKS 集群,现在需要与使用 IP 白名单的外部服务进行通信。显然,从我的集群向服务发出的请求来自发出请求的任何节点,但是节点列表(及其 ips)可以并且会经常更改,因此我无法为它们提供单个 IP 地址以将其列入白名单。在查看了这个之后,我发现我需要使用 NAT 网关。
我在让它工作时遇到了一些麻烦,我尝试将 AWS_VPC_K8S_CNI_EXTERNALSNAT 设置为 true 但是这样做会阻止我的集群上的所有传出流量,我认为是因为返回的数据包不知道去哪里所以我永远不会得到响应。我试过玩路由表无济于事。
非常感谢任何帮助。
最佳答案
您可以关注 this guide在您的 VPC 中创建公有子网和私有(private)子网。
然后在公共(public)子网中创建 NAT 网关。还要在私有(private)子网中运行所有 EKS 节点。 K8S 中的 Pod 将使用 NAT 网关访问互联网服务。
关于networking - 使用 EKS 与 IP 白名单服务通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56974480/