我们的NAT服务器到目前为止已经失败了3次 – 一次是由于它的EIP问题,另一次是由于主机被CPU绑定了。 虽然我理解这些事情发生,但我们不能承受停电。 我们如何才能为我们的VPC实现冗余,永续的NAT解决scheme? 例如,是否可以使用多个NAT服务器?
我的VPC(亚马逊虚拟私有云)由2个子网组成,1个公共和1个私有。 私有子网中的实例通过公有子网中的NAT服务器进行路由。 从我读过的内容来看,每个VPC只能有一个NAT服务器。
鉴于您更新的问题,大概是使用configuration为作为NAT实例运行的官方Amazon Linux AMI('ami-vpc-nat')并根据NAT实例进行设置? 这显然不是必需的,但提供了一个良好的基线来实现期望的稳定性当然。 关于你的问题:
幸运的是,AWS最近在虚拟私有云中宣布了弹性networking接口 ,它允许您创build一个低预算高可用性解决scheme (有关详细信息,请参阅Elastic Network Interfaces用户指南):
如果其中一个实例发生故障,则可以将其networking接口连接到为相同angular色预configuration的replace或热备份实例 ,以快速恢复该服务。 例如,您可以将ENI用作关键服务(如数据库实例或NAT实例)的主要或辅助networking接口。 如果实例失败,那么您(或者更可能是以您的名义运行的代码)可以将ENI附加到热备份实例。 由于接口维护其私有IP地址,弹性IP地址和MAC地址, 只要将ENI附加到replace实例 , networkingstream量就会开始stream向备用实例 。 […] [我的重点] 。
所以你应该能够用适量的自动化代码实现你的目标 – 取决于你有多less重视冗余/弹性你有两个select:
你的问题太模糊,太广泛。 您需要提供更多关于您的设置,做什么以及您想要实现的信息。
但看起来你正在寻找的是负载平衡。 看看haproxy: http ://haproxy.1wt.eu/
每个VPC可以有多个NAT。 您可以configuration您的VPC路由表,将0/0路由指向NAT服务器的networking接口。 如果该NAT实例需要潜水,则可以将该networking接口从实例中分离出来,并将其连接到热备份NAT实例。 这将使你再次运行,只有一点点stream量。
ELB不会帮你做你想做的事情。