NAT Gateway的高可用实现

下图是一个常见的应用架构,公有子网中的实例通过 IGW 路由到 Internet, 私有子网中的实例可以通过 NAT 网关访问 Internet。但我们只在AZ A里部署了NAT Gateway

img

创建 NAT Gateway时必须指定其所在的公有子网,所以NAT Gateway在特定的AZ中创建的

NAT Gateway它所在的AZ具有高可用性(底层是一个EC2集群,可自动伸缩)

但如果在多个AZ中部署了资源,且共享一个 NAT Gateway —— 就像上图一样,AZ BAZ C里也使用AZ A的NAT,如果 NAT Gateway所在的可用区(AZ A)挂掉,则其他AZ中的资源将无法访问公网

NAT Gateway的高可用实现

根据业务需求和容错架构,建议在至少两个AZ中创建 NAT Gateway

img

如上图,现在我们在每个AZ都有 NAT 网关,可提供对AZ故障的容错能力,此时如果AZ A出故障,不会影响到B和C的机器。


参考: https://packetswitch.co.uk/aws-nat-gateway-high-availability/