本文介绍如何联动增强型公网NAT网关和传统型负载均衡CLB(Classic Load Balancer)实现互联网业务的高可用性,且通过增强型公网NAT网关绑定弹性公网IP(Elastic IP Address,简称EIP)实现统一云上出入口IP,帮助您高效地管理互联网业务。

配置场景

本文以下图场景为例。配置场景
某公司在华东2(上海)地域创建了两台ECS实例,并在两台ECS实例部署了业务系统。由于业务的特殊性,要求业务满足以下条件:
  • 业务具有高可用性,避免单ECS实例故障导致的业务中断。
  • 两台ECS实例均可以主动访问互联网。
  • 互联网访问ECS实例使用的公网IP与ECS实例主动访问互联网使用的公网IP一致。
您可以联动增强型公网NAT网关、CLB和EIP实现上述需求:
  • 公网NAT网关的DNAT功能与CLB组合使用可以增强业务的高可用性,当其中一台ECS实例出现故障时,CLB会自动屏蔽故障的ECS实例,并将请求分发给正常运行的ECS实例,保证业务系统仍能正常工作。
  • 公网NAT网关的SNAT功能可以实现ECS实例主动访问互联网。
  • 公网NAT网关的DNAT功能和SNAT功能同时使用一个EIP,可以实现CLB的后端服务器ECS实例访问互联网的出入口IP一致,有利于您更高效地管理互联网业务。

前提条件

开始前,请确保满足以下条件:
  • 您已经在华东2(上海)地域创建了VPC和交换机。具体操作,请参见搭建IPv4专有网络
  • 您已经在交换机中创建了两台ECS实例,名称分别为ECS01和ECS02,且在ECS实例中都部署了业务系统。具体操作,请参见使用向导创建实例
  • 您已经确认ECS实例的安全组规则允许ECS实例访问互联网和被互联网访问。具体操作,请参见添加安全组规则

配置步骤

配置步骤

步骤一:创建CLB实例

CLB是将访问流量根据转发策略分发到多台后端服务器ECS实例的流量分发控制服务。CLB扩展了应用的服务能力,增强了应用的可用性。

  1. 登录传统型负载均衡CLB控制台
  2. 实例管理页面,单击创建传统型负载均衡
  3. 在实例购买页面,配置以下信息,然后单击立即购买并完成支付。
    • 地域:由于CLB默认不支持跨地域部署,因此创建CLB实例时应选择与ECS实例相同的地域。本文选择华东2(上海)
    • 可用区类型:默认选择为多可用区
    • 主可用区:本文选择华东2可用区D
    • 备可用区:本文选择华东2可用区B
    • 实例名称:输入实例名称,或者使用系统自动创建的实例名称。
    • 实例类型:本文选择私网
    • 负载均衡规格:本文选择简约型I(slb.s1.small)
    • 网络类型:选择CLB实例的网络类型。本文选择专有网络
    • 功能特性:默认选择为功能特性
    • IP版本:默认选择为IPv4
    • 专有网络:本文选择已创建的VPC。
    • 虚拟交换机:本文选择已创建的交换机。
    • 计费类型:显示CLB实例的计费类型,默认为按使用流量计费
    • 资源组:选择负载均衡实例所属的资源组。
    • 购买数量:本文购买1个CLB实例。
CLB实例创建完成后,系统会为CLB实例分配一个私网IP地址,用于私网接入。创建SLB

步骤二:配置CLB实例

创建CLB实例后,您需要对CLB实例进行配置。配置完成后,CLB实例才能进行流量转发。在配置时,您至少需要添加一个监听和一组后端服务器。

  1. 登录传统型负载均衡CLB控制台
  2. 实例管理页面,找到步骤一创建的CLB实例,然后在操作列单击监听配置向导
  3. 协议&监听配置向导页面,配置以下信息,然后单击下一步
    • 选择负载均衡协议:本文选择TCP
    • 监听端口:用来接收请求并向后端服务器进行转发的CLB实例端口。

      本文输入80

    • 监听名称:本文不填写,系统默认定义为协议_端口。

    其余参数使用默认配置。

  4. 后端服务器配置向导页面,选择默认服务器组,然后单击继续添加,添加后端服务器。
    1. 我的服务器面板,选中ECS01和ECS02实例,然后单击下一步
    2. 配置权重,权重越大转发的请求越多,默认为100,本文使用默认值。
    3. 单击添加
    4. 后端服务器配置向导页面,配置后端协议端口,即ECS实例开放的用来接收请求的后端端口。后端端口在同一个CLB实例内可以重复。本文设置为80
  5. 后端服务器配置向导页面,单击下一步,配置健康检查,本文使用默认值。

    开启健康检查功能后,当后端服务器中某个ECS实例健康检查出现问题时,CLB会将请求转发到其它健康检查正常的ECS实例上;而当该ECS实例恢复正常运行时,CLB会自动将请求转发到该ECS实例。

  6. 健康检查配置向导页面,单击下一步,进入配置审核配置向导,确认配置无误后,单击提交
  7. 在弹出的对话框,单击知道了,返回实例管理页面,单击刷新图标查看CLB实例。
    当后端服务器中的ECS实例的健康检查状态为正常时,表示后端ECS实例可以正常处理CLB实例转发的请求。配置监听

步骤三:创建增强型公网NAT网关实例

  1. 登录NAT网关管理控制台
  2. 公网NAT网关页面,单击创建NAT网关
  3. 首次使用NAT网关时,在NAT网关创建页面关联角色创建须知区域,单击创建,创建服务关联角色。角色创建成功后即可创建NAT网关。
    创建角色
  4. NAT网关创建页面,配置以下购买信息,然后单击立即购买
    • 地域和可用区:选择需要创建NAT网关的地域。
    • 可用区:选择NAT网关实例所属的可用区。
    • VPC ID:选择NAT网关所属的VPC。创建NAT网关后,不能修改NAT网关所属的VPC。
    • 交换机ID:选择NAT网关实例所属的交换机。
    • 网关类型:默认选择为增强型
    • 计费类型:选择NAT网关实例的计费类型。

      目前,仅支持按使用量计费。更多信息,请参见按使用量计费

    • 计费周期:默认选择为按小时,即按使用量计费NAT网关的计费周期为1小时,不足1小时按1小时计算。
  5. 确认订单页面确认NAT网关的配置信息,选中服务协议并单击立即开通
    当出现恭喜,开通成功!的提示后,说明您创建成功。
创建成功后,您可以在公网NAT网关页面查看网关类型为增强型的公网NAT网关。创建增强型NAT网关

步骤四:绑定EIP

您可以将EIP绑定到增强型公网NAT网关上。增强型公网NAT网关绑定EIP后,可以使用EIP配置DNAT条目和SNAT条目。

  1. 登录NAT网关管理控制台
  2. 公网NAT网关页面,找到步骤三创建的增强型公网NAT网关实例,然后在操作列选择更多操作 > 绑定弹性公网IP
  3. 绑定弹性公网IP对话框,配置以下参数,然后单击确定
    • 所在资源组:选择EIP所在的资源组。
    • 选择弹性公网IP:选择要绑定到增强型公网NAT网关的EIP。
      • 从已有弹性公网IP中选择:在下拉列表中选择已有的EIP实例。
      • 新购弹性公网IP并绑定:系统将为您创建1个按使用流量计费的EIP实例,并绑定到增强型公网NAT网关。

      本文选择新购弹性公网IP并绑定

EIP绑定完成后,您可以在公网NAT网关页面查看绑定的EIP。绑定弹性公网IP

步骤五:创建DNAT条目

增强型公网NAT网关支持DNAT功能,将增强型公网NAT网关绑定的EIP映射给私网CLB实例使用,使私网CLB实例的后端服务器能够提供互联网服务。

  1. 登录NAT网关管理控制台
  2. 公网NAT网关页面,找到步骤三创建的增强型公网NAT网关实例,然后在操作列单击设置DNAT
  3. DNAT条目列表区域,单击创建DNAT条目
  4. 创建DNAT条目页面,根据以下信息配置DNAT条目,然后单击确定创建
    • 选择公网IP地址:选择要提供互联网通信的EIP。本文选择步骤四中绑定到增强型公网NAT网关的EIP。
      说明 本文DNAT条目使用的EIP与SNAT条目使用的EIP相同。
    • 选择私网IP地址:本文选择通过手动输入,然后输入CLB实例的私网IP地址192.168.24.206
    • 端口设置:选择DNAT映射的方式:
      • 任意端口:该方式属于IP映射,即任何访问该EIP的请求都将转发到目标ECS实例上。
      • 具体端口:该方式属于端口映射,增强型公网NAT网关会将以指定协议和端口访问该EIP的请求转发到目标ECS实例的指定端口上。

      本文选择具体端口,然后将公网端口设置为80私网端口设置为80协议类型设置为TCP

    • 条目名称:输入DNAT条目的名称。

      名称长度为2~128个字符,以大小写字母或中文开头, 可包含数字、下划线(_)和短划线(-)。

DNAT条目创建成功后,您可以在DNAT条目列表区域查看状态为可用的DNAT条目。创建DNAT条目

步骤六:创建SNAT条目

增强型公网NAT网关支持SNAT功能,为VPC中无公网IP的ECS实例提供访问互联网的代理服务。

  1. 登录NAT网关管理控制台
  2. 公网NAT网关页面,找到步骤三创建的增强型公网NAT网关实例,然后在操作列单击设置SNAT
  3. SNAT条目列表区域,单击创建SNAT条目
  4. 创建SNAT条目页面,根据以下信息配置SNAT条目,然后单击确定创建
    • SNAT条目粒度:本文选择VPC粒度,即增强型公网NAT网关实例所属VPC下的所有ECS实例都可以通过配置的SNAT规则访问互联网。
    • 选择公网IP地址:选择用来提供互联网访问的EIP。本文选择使用单IP,然后在下拉列表选择步骤四中绑定到增强型公网NAT网关的EIP。
      说明 本文SNAT条目使用的EIP与DNAT条目使用的EIP相同。
    • 条目名称:SNAT条目的名称。

      名称长度为2~128个字符,以大小写字母或中文开头, 可包含数字、下划线(_)和短划线(-)。

步骤七:访问测试

SNAT条目和DNAT条目创建成功后,您可以测试ECS实例的网络连通性。

  1. 测试ECS实例是否可以访问互联网。
    1. 登录ECS01。具体操作,请参见ECS连接方式概述
    2. 如下图所示,执行ping命令测试网络连通性。
      经测试,ECS01可以访问互联网。测试连通性
      说明 您可以参考上述操作,登录ECS02测试网络连通性。
    3. 执行curl myip.ipip.net命令探测ECS01的公网出口IP。
      经测试,ECS01公网出口IP与增强型公网NAT网关实例中SNAT条目中的IP一致,即ECS01通过增强型公网NAT网关的SNAT功能主动访问互联网。IP
  2. 测试部署在ECS实例的业务是否可以被互联网访问。
    1. 打开互联网中任意一台电脑的浏览器。
    2. 输入绑定到增强型公网NAT网关的EIP地址访问部署在ECS实例上的业务服务。
      经验证,互联网可以访问部署在ECS实例上的业务服务,即ECS实例通过增强型公网NAT网关的DNAT功能提供互联网访问服务,且公网出入口IP相同,都是绑定到增强型公网NAT网关的EIP。访问测试
  3. 测试CLB实例是否能够提供流量分发服务。
    1. 停止ECS01。具体操作,请参见停止实例
    2. 打开互联网中任意一台电脑的浏览器。
    3. 输入绑定到增强型公网NAT网关的EIP地址访问部署在ECS实例上的业务服务。
      经验证,互联网可以访问部署在ECS实例上的业务服务,此时提供业务服务的是ECS02,即当ECS01故障时,CLB将互联网访问转发至正常的ECS02,实现了业务的高可用性。ecs2