NAT 网关支持跨可用区容灾和单可用区容灾两种部署模式。跨可用区容灾模式在两个可用区之间冗余部署,具备自动故障切换能力;单可用区容灾模式将 NAT 网关部署在用户指定的可用区内,可用区内具备设备级高可用。您可以根据业务分布和容灾策略选择适合的部署模式。公网 NAT 网关和 VPC NAT 网关均支持这两种模式。
单可用区容灾模式已在 NAT 网关支持的所有地域开放,如需使用请联系客户经理申请。
使用场景
故障域隔离:业务需要将网络出口的故障域限定在可用区级别,避免跨可用区级联故障。
流量分区独立管理:不同可用区的业务通过各自独立的 NAT 网关转发流量,互不影响。
降低成本:业务集中在单个可用区,无需跨可用区冗余,使用单可用区模式可降低约 50% 实例费以及 20% 的容量单位 CU 费。
建议业务侧实现可用区级别的冗余部署。在不同可用区分别部署单可用区 NAT 网关,使每个可用区的流量独立转发,确保单个可用区故障时存在其他可用区的业务可对外提供服务。
跨可用区容灾 NAT 网关跨可用区冗余部署,单可用区故障时自动容灾切换,适用于 ECS 等实例分布在多个可用区、需要共享同一 NAT 网关访问公网。 | 单可用区容灾 NAT网关部署在单一可用区内,只保障本可用区高可用,适用于业务集中在某一个可用区、使用独立 NAT 网关访问公网。 |
创建单可用区 NAT 网关
公网 NAT 网关和 VPC NAT 网关均支持单可用区容灾模式,本文以公网 NAT 网关为例。如需创建VPC NAT网关,请参考创建VPC NAT网关实例。
控制台
创建单可用区NAT网关:前往NAT网关 - 公网 NAT 网关购买页。
付费模式:选择按量付费。
地域:选择创建 NAT 网关的地域。
网络及可用区:NAT 网关将部署在所选交换机所在的可用区中,创建成功后无法修改。绑定 EIP 时将占用该交换机的一个私网 IP 地址,请确保交换机内有足够的可用 IP。
容灾类型:选择单可用区容灾。
如果购买页未显示容灾类型,请联系客户经理开通单可用区容灾功能。
弹性公网IP:根据是否已创建 EIP 等情况选择已有 EIP、新购 EIP 或暂不绑定。
选择已有:选择未绑定实例的EIP。
新购弹性公网IP:无可用 EIP 时选择。默认创建BGP(多线)类型的按使用流量计费的EIP,可根据自身业务需要选择带宽峰值。
如需绑定BGP(多线)_精品线路类型或其他计费类型的EIP,需先申请EIP,创建时选择已有进行绑定。
稍后配置:成功创建的NAT网关将不具备公网能力,用户需后续手动绑定EIP。
创建完成后,单击目标公网NAT网关实例弹性公网IP列的立即绑定,可从已有弹性公网IP中选择或新购弹性公网IP并绑定。
配置条目和路由:为 NAT 网关配置 SNAT 条目以访问公网,配置 DNAT 条目以对外提供服务,并在路由表中添加
0.0.0.0/0指向该 NAT 网关的路由条目。
API
调用CreateNatGateway创建 NAT 网关,配置容灾类型
AvailabilityMode为SingleAZ。调用CreateSnatEntry创建SNAT条目。
调用CreateForwardEntry创建DNAT条目。
调用AssociateEipAddress绑定EIP。
通过路由目标组实现主备高可用
单可用区容灾模式的故障域限定在一个可用区内。如需实现跨可用区级别的高可用,可以在同一个VPC的两个可用区分别部署单可用区 NAT 网关,并通过路由目标组的主备模式实现自动故障切换。路由目标组通过健康检查持续探测主备 NAT 网关的可用性,当主实例所在可用区发生故障时,系统在 30 秒内自动将流量切换到备实例。
为避免网络抖动引发主备间频繁切换,主实例恢复健康后流量不会自动回切,需在业务低峰期手动将流量切回主实例。
与跨可用区NAT的区别
跨可用区 NAT 网关与单可用区 NAT 网关结合路由目标组均可实现跨可用区容灾,但二者在容灾机制、故障域隔离粒度和用户可控程度上存在本质差异。
维度 | 跨可用区模式 | 单可用区结合路由目标组 |
部署形态 | 单实例跨两个可用区冗余部署,由系统自动管理资源调度。 | 两个独立实例分别部署在不同可用区,通过 VPC 路由目标组建立主备关系。 |
切换机制 | 实例内部自动完成容灾切换,用户无感知。 | 平台健康检查驱动自动切换,支持手动切换和手动回切。 |
切换时间 | 故障切换和恢复回切均为自动,< 10 分钟。 | 故障切换:< 30 秒(健康检查自动触发) 故障恢复回切:< 10 秒(手动回切) |
故障域 | 两个可用区共享同一实例,故障域为实例级。 | 两个实例完全独立,故障域严格隔离到可用区级。 |
可控性 | 开箱即用,无需额外配置,但无法指定流量优先经过哪个可用区。 | 可指定主备可用区,主动触发故障演练,在业务低峰期按需回切。 |
适用场景 | 配置简单,对容灾过程无额外管控要求。 | 要求故障域严格隔离,流量路径可预测,具备容灾演练能力。 |
配置路由容灾
已在同一 VPC 的不同可用区分别创建单可用区 NAT 网关。
两个单可用区 NAT 网关均已开启 ICMP 代回功能,以保证路由目标组可以通过健康检查探测实例可用性。
ICMP 代回功能默认开启,您可在NAT网关实例详情页面,查看ICMP代回是否开启。
控制台
创建路由目标组:前往专有网络 - 路由目标组页面,在顶部菜单栏选择 NAT 网关所在地域。单击创建路由目标组。
专有网络:选择两个 NAT 网关所属的 VPC。
配置模式:选择主备模式。
目标成员类型:选择NAT网关。
目标成员配置:
主实例:选择可用区,在下拉列表中选择对应的单可用区 NAT 网关。主实例权重固定为100,正常时承载所有流量。
备实例:选择另一个可用区,在下拉列表中选择对应的单可用区 NAT 网关。备实例权重固定为0,主实例故障后自动接管流量。
实例名称、所属资源组和标签:可结合使用,便于分类管理实例。
配置路由条目指向路由目标组:前往专有网络 - 路由表页面,单击目标路由表 ID。根据实际情况,选择以下方式配置:
新建路由条目:如果路由表中没有指向 NAT 网关的路由条目,在自定义路由条目页签选择添加路由条目,目标网段填写
0.0.0.0/0,下一跳类型选择路由目标组,在实例列表中选择创建的路由目标组。修改已有路由条目:在自定义路由条目页签找到对应的路由条目,单击编辑,将下一跳类型修改为路由目标组,选择对应的路由目标组实例。
API
调用CreateRouteTargetGroup创建路由目标组。
调用CreateRouteEntry创建自定义路由条目,配置
NextHopType为RouteTargetGroup。调用ModifyRouteEntry修改自定义路由条目的下一跳,配置
NextHopType为RouteTargetGroup。
手动执行主备切换(可选)
手动触发主备实例之间的流量切换,用于容灾演练或计划内维护。实例不健康时,不允许切换主备实例。
控制台
前往专有网络 - 路由目标组页面,单击路由目标组 ID。
单击页面右上方的切换目标成员。
API
调用SwitchActiveRouteTarget执行路由目标组主备切换。
资源清理
不再需要主备高可用方案时,按以下顺序清理资源。被路由目标组引用的 NAT 网关不允许直接删除,需先删除路由条目和路由目标组。
控制台
删除路由条目:前往专有网络 - 路由表页面,单击目标路由表 ID,在自定义路由条目页签找到下一跳为路由目标组的条目,单击删除。
删除路由目标组:前往专有网络 - 路由目标组页面,找到目标路由目标组,单击操作列的删除。
删除 NAT 网关:前往NAT 网关列表页,找到目标 NAT 网关,点击实例ID进入详情页。
删除配置条目:在SNAT管理和DNAT管理页签删除配置的条目。
解绑并释放 EIP:在绑定的弹性公网IP页签解除绑定。仅解绑 EIP,仍需支付 EIP 配置费,需前往EIP释放 EIP。
未删除配置条目时,可解除绑定。
删除NAT网关:单击目标 NAT 网关实例操作的。
未解绑EIP、删除配置条目时,可选择强制删除(删除 NAT 网关及其包含资源),由系统删除实例及相关资源。
为实例开启删除保护,可避免误删。删除实例前,需关闭删除保护。
API
调用 DeleteRouteEntry 删除下一跳为路由目标组的路由条目。
调用 DeleteRouteTargetGroup 删除路由目标组。
分别调用DeleteSnatEntry和DeleteDnatEntry删除SNAT条目和DNAT条目。
调用UnassociateEipAddress解绑EIP。
调用DeleteNatGateway删除NAT网关。
性能指标
部署模式 | 性能指标 | 新建连接速率(CPS) | 吞吐量 | 并发连接数 | 包处理速率(PPS) |
跨可用区容灾 | 初始指标 | 2万 | 5 Gbps | 50万 | 80万 |
弹性上限 | 10万 | 15 Gbps | 200万 | 250万 | |
单可用区容灾 | 初始指标 | 2万 | 10 Gbps | 50万 | 80万 |
弹性上限 | 10万 | 20 Gbps | 200万 | 250万 |
单可用区容灾模式的吞吐量为跨可用区容灾模式的 2 倍,原因是跨可用区模式下主备实例各承担一部分吞吐能力,而单可用区模式的全部资源集中在同一可用区内。其他指标(CPS、并发连接数、PPS)两种模式一致。
计费
单可用区 NAT 网关仅支持按量计费(实例费 + 容量单位 CU 费),不支持包年包月,暂不支持资源包抵扣。
实例费
实例费 = 实例单价(美元/小时) × 使用时长(小时)
地域 | 跨可用区容灾实例单价(美元/小时) | 单可用区容灾实例单价(美元/小时) |
华东1(杭州)、华东2(上海)、华北1(青岛)、华北2(北京)、华北3(张家口)、华北5(呼和浩特)、华北6(乌兰察布)、华南1(深圳)、华南2(河源)、华南3(广州)、西南1(成都) | 0.034 | 0.017 |
中国香港、日本(东京)、韩国(首尔)、新加坡、马来西亚(吉隆坡)、印度尼西亚(雅加达)、菲律宾(马尼拉)、泰国(曼谷)、马来西亚(柔佛州)、德国(法兰克福)、英国(伦敦)、美国(硅谷)、美国(弗吉尼亚)、阿联酋(迪拜) | 0.043 | 0.0215 |
沙特(利雅得)- 合作伙伴运营 | 0.052 | 0.026 |
表中价格仅供参考,实际价格请以购买页为准。
容量单位 CU 费
每小时 CU 费 = CU 单价(美元/个/小时) × 该小时处理流量 CU 个数
该小时处理流量 CU 个数 = 总处理流量 / 1 GB。
地域 | 跨可用区容灾 CU 单价(美元/个/小时) | 单可用区容灾 CU 单价(美元/个/小时) |
华东1(杭州)、华东2(上海)、华北1(青岛)、华北2(北京)、华北3(张家口)、华北5(呼和浩特)、华北6(乌兰察布)、华南1(深圳)、华南2(河源)、华南3(广州)、西南1(成都) | 0.034 | 0~100万CU:0.027 |
中国香港、日本(东京)、韩国(首尔)、新加坡、马来西亚(吉隆坡)、印度尼西亚(雅加达)、菲律宾(马尼拉)、泰国(曼谷)、马来西亚(柔佛州)、德国(法兰克福)、英国(伦敦)、美国(硅谷)、美国(弗吉尼亚)、阿联酋(迪拜) | 0.043 | 0~100万CU:0.034 |
沙特(利雅得)- 合作伙伴运营 | 0.052 | 0~100万CU:0.042 |
表中价格仅供参考,实际价格请以购买页为准。