将弹性 IP 与 EKS 工作节点相关联?

Associate Elastic IPs with EKS worker nodes?

我刚刚成功跟进 AWS EKS Getting Started Guide,现在我有 3 个工作节点的运行 Kubernetes 集群。

工作节点 EC2 实例已自动分配 public 个 IP:

IPv4 Public IP: 18.197.201.199
Private IPs: 192.168.180.57, 192.168.148.90
Secondary private IPs: 192.168.170.137, 192.168.180.185, 192.168.161.170, 192.168.133.109, 192.168.182.189, 192.168.189.234, 192.168.166.204, 192.168.156.144, 192.168.133.148, 192.168.179.151

为了连接到私有的 AWS 外资源,防火墙规则要求节点 public IP 来自特定的弹性 IP 池。 (更具体地说,工作节点必须访问公司防火墙后面的私有 Docker 注册表,它将几个 AWS Elastic IP 列入白名单。)最简单的似乎是用预定义的 Elastic 覆盖自动分配的 public 节点 IP知识产权;但是 AWS 只允许将弹性 IP 与特定的私有 IP 相关联。

如何将自动分配的 public IP 替换为弹性 IP?

请记住,节点可以来来去去。

您不希望将集群中的特定节点配置为已为您的 AWS 外资源清除的弹性 IP。

相反,您可以让 NAT 网关分配一个弹性 IP 和私有子网中的集群节点,使用该 NAT 网关进行出站通信。

从本 pdf 的第 85 页开始描述了此配置。 https://docs.aws.amazon.com/eks/latest/userguide/eks-ug.pdf