通过公网NAT网关实现本地IDC与DTS云服务互通

本文为您介绍如何配置公网NAT网关,将具备公网地址的自建数据库接入到阿里云,并通过专有网络(VPC)配置DTS实例。

背景信息

在创建源库或目标库为具备公网地址的DTS实例时,若选择以公网IP接入方式连接该数据库,则需要将DTS服务器的IP地址段加入到相应数据库的安全设置(防火墙、白名单、安全组等)中。由于DTS服务器的IP地址不仅数量较多,操作过程中可能会遗漏某些IP地址;同时,随着业务的发展,IP地址可能会发生变化,导致无法成功连接到数据库,从而造成实例失败。

前提条件

数据库需具备公网地址。

配置流程

  1. 创建专有网络

    创建中转VPC及其交换机。

  2. 购买公网NAT网关

    在中转VPC内购买公网NAT网关。

  3. 购买弹性公网IP

  4. 给公网NAT网关绑定弹性公网IP

  5. 给公网NAT网关配置SNAT条目

  6. 在云监控平台配置报警规则

    给公网NAT网关绑定的弹性公网IP创建报警规则,以便监控指标动态并及时进行处理。

  7. 配置数据库白名单

    将弹性公网IP地址添加至数据库的安全设置中。

  8. 创建DTS实例

注意事项

  • 本方案需要购买公网NAT网关和弹性公网IP,会产生相关费用。更多信息,请参见公网NAT网关计费计费方式

  • 由于受到公网质量等因素的限制,此方案可能会导致实例出现不稳定的情况,该问题不在DTSSLA保障范围内。

  • 在使用此方案配置的DTS实例运行期间,请勿修改或删除中转VPC、删除或修改公网NAT网关、删除或修改绑定的弹性公网IP,否则会导致DTS实例出现延迟或中断。

  • 请确保公网数据库的白名单中包含所有与公网NAT网关绑定的弹性公网IP,以避免无法通过中转公网NAT网关访问数据库。

  • 请勿在公网数据库的白名单增加超过弹性公网IP范围的IP地址,否则可能会导致数据库面临来自其他公网访问的安全风险。

  • 请在购买弹性公网IP时合理选择带宽峰值,以确保弹性公网IP的流量上限可以满足DTS实例的需求。

    说明

    DTS每个线程仅有一个连接,每个连接仅通过一个弹性公网IP访问数据库。

  • 请保持公网NAT网关的EIP亲和性开关为关闭状态,以确保DTS可以使用所有绑定的弹性公网IP。否则可能会导致DTS仅能使用部分公网IP,从而使多个线程的流量无法有效分散到多个弹性公网IP上,进而造成流量瓶颈。

  • 请确保公网NAT网关中绑定的每个弹性公网IP出方向限速丢包速率入方向限速丢包速率指标始终为0,否则可能会导致DTS实例出现延迟或者中断。若指标大于0,您可以对弹性公网IP流量上限(带宽峰值)进行扩容、或者增加公网NAT网关上绑定的弹性公网IP数量。流量上限扩容操作,请参见实例变配

    说明
    • 若对公网NAT网关新绑定的弹性公网IP,请确保公网数据库白名单中增加了新绑定的弹性公网IP。

    • 若在执行相关操作后丢包问题仍未得到改善,请联系公网NAT网关的技术支持进行处理。

  • 若您的数据库启用了SSL加密连接,则可能无法通过此方式接入到DTS。

操作步骤

步骤一:创建专有网络

  1. 登录专有网络管理控制台
  2. 在顶部菜单栏处,选择需要创建VPC和交换机的地域。

    说明

    VPC和交换机的地域与需要部署的云资源的地域必须相同。

  3. 专有网络页面,单击创建专有网络,根据以下信息配置VPC和交换机。

    配置

    说明

    地域

    显示要创建VPC的地域。

    IPv4网段

    选择分配IPv4网段的方式。

    • 手动输入IPv4地址段:手动输入VPCIPv4网段。

    • IPAM分配的IPv4地址段:从IPAM地址池分配IPv4网段。

      说明

      IPAM地址池分配IPv4网段功能支持的地域:华东1(杭州)华东2(上海)华北1(青岛)华北2(北京)华北3(张家口)华北5(呼和浩特)华北6(乌兰察布)华南1(深圳)中国香港新加坡马来西亚(吉隆坡)菲律宾(马尼拉)美国(硅谷)美国(弗吉尼亚)

    输入IPv4网段

    输入VPC的主IPv4网段。

    • 建议您使用RFC 1918标准中指定的私有IPv4地址作为VPC的主IPv4网段,网段掩码推荐使用16~28位。例如:10.0.0.0/16、172.16.0.0/16、192.168.0.0/16。

    • 您也可以使用除100.64.0.0/10、224.0.0.0/4、127.0.0.0/8169.254.0.0/16及其子网外的自定义地址段作为VPC的主IPv4网段。

    • 如果有多VPC场景或VPC与本地数据中心构建混合云场景,建议您做好网络规划,避免多个VPC间、VPC和本地数据中心的网段发生冲突。

    说明
    • 仅当IPv4网段选择手动输入IPv4地址段时,该参数必选。

    • VPC创建后,您可以添加附加IPv4网段。具体操作,请参见创建和管理专有网络

    选择地址池

    选择已创建的IPAM地址池。

    说明
    • 仅当IPv4网段选择IPAM分配的IPv4地址段时,该参数必选。

    • 确保选择的IPAM地址池已设置生效地域且已预置CIDR。更多信息,请参见创建IPAM地址池预置CIDR

    网络掩码

    选择网络掩码。仅当IPv4网段选择IPAM分配的IPv4地址段,且选择地址池已选择IPAM地址池时,该参数必选。

    若选择的地址池有多个CIDR,则设置网络掩码后,系统会选择符合地址池分配规则的可用CIDR。

    重要

    网络掩码的取值范围需要同时满足以下三个条件。

    • VPC网络掩码的范围内。

    • 在地址池分配规则的范围内。

    • 在地址池预置CIDR的范围内。

    通过以下示例进行说明:

    • VPC网络掩码推荐范围:16~28。

    • IPAM地址池最小网络掩码长度为/4,最大网络掩码长度为/27。

    • IPAM地址池预置CIDR10.0.0.0/16、10.16.0.0/17、10.20.0.0/18。

    则从IPAM地址池分配IPv4网段的网络掩码取值范围为:16~27。

    IPv6网段

    选择是否为VPC分配IPv6网段,本文选择分配BGP(多线)

    如果您选择分配IPv6网段,系统将为您的VPC自动创建1个免费版的IPv6网关,并分配掩码为/56IPv6网段,例如2408:4005:3c5:6e00::/56。默认IPv6地址只具备私网通信能力。如果您需要通过该IPv6地址访问互联网或被互联网中的IPv6客户端访问,您需要开通IPv6公网带宽

    说明

    交换机

    可用区

    在下拉列表选择交换机的可用区。同一VPC内不同可用区的交换机私网互通。

    下拉列表中可以查询各可用区支持创建的云服务器ECS、云数据库RDS、应用型负载均衡ALB、网络型负载均衡NLB、NAT网关、转发路由器TR的状态。不同时段各可用区下支持创建的云资源不同,具体实例规格的库存状况以售卖页为准。

    IPv4网段

    配置交换机的IPv4网段。交换机的网段限制如下:

    • 交换机的网段必须是其所属VPC网段的真子集。

      例如,VPC的网段是192.168.0.0/16,那么该VPC内交换机的网段必须是192.168.0.0/16的真子集,可以是192.168.0.0/17~192.168.0.0/29。

    • 每个交换机的第1个和最后3IP地址为系统保留地址。

      例如,交换机的网段为192.168.1.0/24,则192.168.1.0、192.168.1.253、192.168.1.254192.168.1.2554个地址是系统保留地址。

    • 如果交换机有和其他VPC的交换机或本地数据中心通信的需求,请确保交换机的网段和要通信的网段不冲突。

    说明

    交换机创建后,不能再修改网段。

    IPv6网段

    为交换机开启IPv6网段并配置交换机的IPv6网段。

    说明

    当您的VPC分配了IPv6网段,才需要配置交换机的IPv6网段信息。

    • 交换机的IPv6网段的掩码默认为/64,您可以输入十进制数字0~255,来自定义交换机IPv6网段的最后8个比特位。

      例如,VPCIPv6网段为2408:XXXX:XXXX:6e00::/56,在交换机的IPv6网段输入十进制数字255(对应十六进制为ff),则交换机的IPv6网段将为2408:XXXX:XXXX:6eff::/64。

    • 每个交换机的第1个和最后9IPv6 IP为系统保留IP。

      例如,交换机的IPv6网段为2408:XXXX:XXXX:6eff::/64,则第12408:XXXX:XXXX:6eff::和最后92408:XXXX:XXXX:6eff:ffff:ffff:ffff:fff7、2408:XXXX:XXXX:6eff:ffff:ffff:ffff:fff8、2408:XXXX:XXXX:6eff:ffff:ffff:ffff:fff9、2408:XXXX:XXXX:6eff:ffff:ffff:ffff:fffa、2408:XXXX:XXXX:6eff:ffff:ffff:ffff:fffb、2408:XXXX:XXXX:6eff:ffff:ffff:ffff:fffc、2408:XXXX:XXXX:6eff:ffff:ffff:ffff:fffd、2408:XXXX:XXXX:6eff:ffff:ffff:ffff:fffe2408:XXXX:XXXX:6eff:ffff:ffff:ffff:ffff为系统保留IP。

  4. 配置专有网络和交换机。

    1. 配置专有网络。

      1. 选择专有网络的地域

      2. 输入专有网络的名称

      3. 可选:IPv4网段选择为手动输入IPv4地址段

      4. 输入IPv4网段文本框填入10.0.0.0/8

    2. 配置交换机。

      1. 输入交换机的名称

      2. 选择交换机的可用区

        重要

        需选择支持NAT网关的可用区。

      3. 其他参数保持默认即可。

      更多参数信息,请参见创建和管理专有网络

    3. 单击确定

步骤二:购买公网NAT网关

  1. 登录NAT网关管理控制台

  2. 公网NAT网关页面,单击创建公网NAT网关

  3. 首次使用NAT网关时,在创建公网NAT网关页面关联角色创建区域,单击创建关联角色。角色创建成功后即可创建NAT网关。

    创建角色 关于NAT网关服务关联角色的更多信息,请参见服务关联角色

  4. 配置公网NAT网关的参数。

    1. 选择公网NAT网关的所属地域

      重要

      所属地域须与步骤一中创建的专有网络的地域保持一致。

    2. 所属专有网络选择为步骤一中创建的专有网络。

    3. 关联交换机选择为步骤一中创建的交换机。

    4. 可选:配置公网NAT网关的实例名称

    5. 访问模式选择为稍后配置

    更多参数信息,请参见使用公网NAT网关SNAT功能访问互联网

  5. 然后单击立即购买,并完成支付。

步骤三:购买弹性公网IP

  1. 登录弹性公网IP管理控制台
  2. 弹性公网IP页面,单击创建弹性公网IP

  3. 配置弹性公网IP的参数。

    选择弹性公网IP地域和可用区,其他参数保持默认即可。更多参数信息,请参见申请EIP

    重要

    地域和可用区须与步骤一中创建的专有网络的地域保持一致。

  4. 单击立即购买,并完成支付。

  5. 记录已购买弹性公网IP的地址。

    1. 购买成功后,返回弹性公网IP页面。

    2. 在顶部菜单栏处,选择EIP的地域。

    3. 记录IP地址列的地址。

步骤四:给公网NAT网关绑定弹性公网IP

  1. 登录NAT网关管理控制台

  2. 在顶部菜单栏,选择公网NAT网关的地域。

  3. 公网NAT网关页面,找到目标公网NAT网关实例,然后在弹性公网IP列单击立即绑定

    说明

    您也可以在目标公网NAT网关实例的操作列,选择image > 绑定弹性公网IP

  4. 绑定弹性公网IP对话框,勾选从已有弹性公网IP中选择,并选择步骤三购买的弹性公网IP。

    说明

    若您购买了多个弹性公网IP实例,请重复操作进行绑定。

  5. 单击确定

    绑定成功后,在公网NAT网关实例的弹性公网IP列将会显示出绑定的EIP。绑定EIP

步骤五:给公网NAT网关配置SNAT条目

  1. 登录NAT网关管理控制台

  2. 在顶部菜单栏,选择公网NAT网关的地域。

  3. 公网NAT网关页面,找到目标公网NAT网关实例,然后在操作列单击设置SNAT

  4. SNAT管理页签,单击创建SNAT条目

  5. 配置SNAT条目的参数。

    说明

    若您已配置VPC粒度的SNAT条目,可以单击操作列的编辑进行修改。

    1. SNAT条目粒度选择为VPC粒度

    2. 选择公网IP地址选择为步骤四绑定的弹性公网IP。

      说明

      请选择所有已购买并绑定至公网NAT网关的弹性公网IP实例。

    3. EIP亲和性开关保持在关闭状态。

  6. 然后单击确定创建

    等待该SNAT条目的状态变为可用

步骤六:给公网NAT网关绑定的弹性公网IP创建报警规则

  1. 登录云监控控制台

  2. 在左侧导航栏,选择报警服务 > 报警规则

  3. 报警规则页面,单击创建报警规则

  4. 配置报警规则。

    参数

    说明

    产品

    选择弹性公网IP

    资源范围

    选择实例

    关联资源

    1. 单击添加实例

    2. 在弹出的添加实例对话框,通过地域等筛选步骤四绑定的弹性公网IP。

    3. 勾选目标弹性公网IP。

      说明

      请选择所有已购买并绑定至公网NAT网关的弹性公网IP实例。

    4. 单击确定

    规则描述

    1. 单击添加规则,并选择组合指标

    2. 设置规则描述面板,先输入规则名称

    3. 多指标报警描述区域,为出方向限速丢包速率入方向限速丢包速率设置报警规则。

      说明
      • 将指标设置为平均值大于(>)0pps。

      • 您可以单击添加指标,添加多个指标报警规则。

    4. 多指标关系选择为有一个满足条件就报警(||)

    5. 根据实际情况,选择报警阈值触发次数

    6. 单击确定

    报警联系人组

    选择发送报警的联系人组。

    说明

    创建报警联系人和报警联系人组的方法,请参见创建报警联系人或报警联系人组

    其他参数

    根据实际情况,配置其他参数。更多信息,请参见创建报警规则

  5. 单击确认

步骤七:将弹性公网IP地址添加至数据库的安全设置

步骤四绑定的弹性公网IP地址,加入到相应数据库的安全设置(防火墙、白名单、安全组等)中。

步骤八:创建DTS实例

在配置DTS实例的源库信息目标库信息时进行如下配置,并根据实际情况完成后续配置。

  1. 根据实际情况,选择数据库类型

  2. 接入方式选择为专线/VPN网关/智能网关

  3. 实例地区选择为步骤一中创建的专有网络的地域。

  4. 已和源端数据库联通的VPC选择为步骤一中创建的专有网络。

  5. 域名或IP地址选择为数据库服务器的域名或IP地址。