出口IP地址选择

时间:2018-08-21 07:46:44

标签: kubernetes cloud

我们正在运行一个SaaS服务,我们希望将其迁移到Kubernetes,最好迁移到超标量之一。我尚未找到一个解决方案的特定问题是需要从应用程序中选择出口IP地址。

我们处理大量的上游提供商,这些提供商具有基于源IP地址的访问控制和速率限制。此外,我们的一部分客户正在使用他们自己的一些上游提供商的帐户。要在其帐户的上下文中访问上游提供商,我们需要从应用程序内部控制用于连接的源IP。

我们目前正在负载平衡器后面的DMZ中运行我们的服务,因此直接选择网络接口已经不可能。我们在负载均衡器/网关上使用一些iptables规则,以根据映射的端口号进行地址选择。 (例如,到端口1081的出口连接映射到源地址B和目标端口80,端口1082映射到源地址C端口80)

但是,这是一个非常脆弱的设置,在尝试迁移到更标准化的* aaS产品时也无法很好地映射。

正在寻找更好的设置建议。

1 个答案:

答案 0 :(得分:2)

可以帮助您解决问题的一件事是Istio Egress Gateway,因此建议您研究一下。

否则,它仍然取决于特定的平台和部署集群的方式。例如,在AWS上,通过使用分配了弹性IP的实例来转发您的流量(无论是常规EC2还是AWS NAT网关),可以确保出口流量始终来自预定义的已知IP组。即使具有上述Egress,您仍需要为此定义一个固定IP的方法,因此必须使用AWS ElasticIP(或等效方法)。