AWS Load Balancer具有静态IP地址

时间:2012-12-07 16:45:26

标签: amazon-web-services amazon-ec2 load-balancing elastic-beanstalk static-ip-address

我在亚马逊云上运行了一个设置,其中有几个EC2实例正在通过负载均衡器运行。

当我插入第三方API时,网站具有唯一(静态)IP或IP集非常重要,因为第三方API仅接受已添加到其白名单中的IP请求。

所以基本上除非我们能够给这些第三方提供静态IP或IP范围,否则网站的请求将始终来自我们,我们将无法对它们进行任何调用。

任何人都知道如何实现这一点,因为我知道弹性IP与负载均衡器不兼容?

如果我要查找负载均衡器DNS名称的IP(例如dualstack.awseb-BAMobile-ENV-xxxxxxxxx.eu-west-1.elb.amazonaws.com解析为200.200.200.200)那么IP是静态?

非常感谢任何帮助/建议。

8 个答案:

答案 0 :(得分:18)

负载均衡器的IP地址不是静态的。无论如何,您的传入负载均衡器IP不会用于传出连接。

您可以将弹性IP分配给负载均衡器后面的实际实例,然后将其用于传出请求。你得到5个弹性ips,我相信你可以在需要时申请更多。

此外,如果使用VPC并且您的实例位于私有子网中,那么他们将只能通过您设置的NAT实例访问互联网,您当然可以为NAT实例分配弹性IP

答案 1 :(得分:8)

您可以将附加 ENI(弹性网络接口)附加到VPC中的实例。这样,ELB(Elastic Load Balancer)将传入的Internet请求路由到Web服务器,并且附加的ENI将用于连接到您的第三方(或内部)请求(管理网络

您可以在VPC documentations

中查看有关它的更多详细信息

答案 2 :(得分:5)

我真正了解这一点的唯一方法是在VPC中设置实例,并拥有专用的NAT实例,通过该实例路由所有出站流量。

以下是有关如何设置NAT实例的AWS文档的链接:

http://docs.amazonwebservices.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html

答案 3 :(得分:5)

这是一个老问题,但现在情况发生了变化。

现在,您可以创建网络ELB以获取具有静态IP的LB.

来自https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html

  • 支持负载均衡器的静态IP地址。你也可以 为每个为负载启用的子网分配一个弹性IP地址 平衡器。

https://aws.amazon.com/blogs/aws/new-network-load-balancer-effortless-scaling-to-millions-of-requests-per-second/

答案 4 :(得分:4)

您可以将弹性IP附加到实例但不附加到ELB(客户端看到的内容)。

您可以使用完整的反向代理图层7负载均衡器,例如HAProxy

或商业实施,如Loadbalancer.org或Riverbed(Zeus)

他们都在AWS Marketplace

答案 5 :(得分:0)

您可以使用DNSMadeeasy等DNS服务,该服务允许" ANAME"记录。这些行为类似于A记录,但可以指向FQDN或IP。因此,在这种情况下,您可以将其指向ELB DNS。

戴夫

答案 6 :(得分:0)

您可以在AWS中使用已经提到的loadbalancer.org设备。它将取代AWS NAT实例并提供更多功能,包括Layer4和Layer7,以及SSL终止和WAF。

最重要的是,您在AWS的30天试用版中获得免费支持,以帮助您启动和运行。

是的,我在为loadbalancer.org工作时有偏见但是我会说没有什么冒险没有获得。

答案 7 :(得分:0)

您对第三方API的出站请求不会通过ELB / ALB发出。这是用于传入连接。如果您需要入站静态IP,则可能需要放弃负载均衡器(或弄清楚如何执行Anshu的建议将弹性IP附加到负载均衡器上,有关详细信息,请参见文档)。更新:我找到了一些有关ALB使用静态地址的文档(我只是尝试将一个弹性IP绑定到一个IP,以确保失败)。 如果您在谈论出站连接,请参见以下内容:

  • 如果您的服务器部署在公共子网中,则可以附加一个 该主机的弹性IP。出站通信将结束 该地址。
  • 如果您的服务器部署在专用子网中, 与其连接的NAT网关。来自您私人的所有出站流量 子网将通过该接口退出。