RDS PostgreSQL实例跨地域迁移

RDS PostgreSQL的一键上云功能不仅支持阿里云ECSIDC自建PostgreSQL的一键上云,还支持RDS PostgreSQL实例跨地域迁移,本文介绍如何使用一键上云功能,实现RDS PostgreSQL实例间的跨地域迁移。

前提条件

RDS PostgreSQL实例需要满足以下条件:

  • 源实例与目标实例大版本相同,当前支持PostgreSQL 10或以上版本。

  • 目标实例为主实例,只读实例不支持一键上云。

  • 目标实例的存储类型为云盘。

  • 目标实例为空,无数据,可用存储空间大于等于源实例中数据大小的总和。

  • 源实例和目标实例所使用的VPC网段不能冲突。

注意事项

RDS PostgreSQL实例跨地域迁移时,需要使用云企业网实现跨地域内网互通,会产生相关费用,具体请参见计费概览

操作步骤

说明

本文以华北2(北京)的RDS PostgreSQL实例迁移到华东1(杭州)为例。

  1. 云企业网配置,使不同地域的两个RDS PostgreSQL实例内网互通。

    1. 创建云企业网实例。

      1. 登录云企业网管理控制台

      2. 云企业网实例页面,单击创建云企业网实例

      3. 创建云企业网实例页面,根据以下信息配置云企业网实例,然后单击确认

        配置

        说明

        名称

        云企业网实例的名称。

        描述

        云企业网实例的描述。

    2. 为云企业网实例添加VPC。

      1. 云企业网实例页面,单击已创建的云企业网实例ID。

      2. 基本信息页面,单击下图中VPC数量后的添加网络实例图标,为云企业网实例添加VPC。VPC后的加好

      3. 连接网络实例页面,配置网络实例信息后,单击确定创建

        说明

        本步骤需要分别添加源实例和目标实例的VPC,因此需要添加两次,下表以添加源实例的VPC为例,添加目标实例VPC的操作方法相同,地域网络实例参数,请修改为目标实例的地域和VPC。

        参数

        取值说明

        实例类型

        默认为专有网络(VPC),无需修改。

        地域

        选择源实例所在地域,本示例选择华北2(北京)

        转发路由器

        默认当前地域下无转发路由器,系统将默认创建,分别选择转发路由器的主可用区和备可用区。

        资源归属UID

        选择同账号

        连接名称

        自定义。

        网络实例

        选择源实例使用的VPC实例。可在RDS管理控制台的数据库连接中查看VPC ID。源实例VPC实例ID

        选择VPC后,分别选择转发路由器配置的主备可用区对应的交换机。

      创建成功后,可以在基本信息页查看已添加的VPC,并在转发路由器页签下查看对应的路由信息。

    3. 购买跨地域带宽。

      1. 云企业网实例页面,单击已创建的云企业网实例ID。

      2. 基本信息页面,切换到带宽包管理页签,单击购买带宽包(预付费)

      3. 在购买页面,根据以下信息配置带宽包,然后单击立即购买并完成支付。

        配置项

        说明

        商品类型

        • 非跨境:中国内地到中国内地的带宽包或非中国内地到非中国内地的带宽包。例如:中国内地到中国内地、亚太到北美。

        • 跨境:中国内地到非中国内地的带宽包,例如:中国内地到北美。

        本示例选择非跨境

        云企业网

        默认选择当前云企业网,无需修改。带宽包购买成功后,带宽包自动绑定至该云企业网实例。

        区域-A

        选择参与互通的网络实例所在区域。本示例选择中国内地

        说明

        带宽包创建后,不支持修改互通区域。

        区域-B

        选择参与互通的网络实例所在区域。本示例选择中国内地

        计费方式

        显示带宽包的计费方式。默认为按带宽计费。

        带宽值

        选择带宽值。单位:Mbps。

        带宽包名称

        输入带宽包的名称。

        购买时长

        选择带宽包的购买时长。

        选中到期自动续费可开启带宽包自动续费功能。

        资源组

        选择带宽包所属的资源组。

        仅购买非跨境的带宽包时,支持配置该项。

      购买完成后,可以在基本信息页的带宽包管理页签下,查看已购买的带宽包。

    4. 设置跨地域带宽。

      1. 云企业网实例页面,单击已创建的云企业网实例ID。

      2. 基本信息页面,切换到带宽包管理页签,单击设置跨地域带宽

      3. 连接网络实例页面,配置跨地域连接信息,然后单击确定创建

        配置项

        说明

        实例类型

        选择跨地域连接

        地域

        源实例的地域。本示例选择华北2(北京)

        转发路由器

        自动获取已创建的转发路由器,无需配置。

        对端地域

        目标实例的地域,本示例选择华东1(杭州)

        转发路由器

        自动获取已创建的转发路由器,无需配置。

        带宽包分配方式

        根据需要选择带宽包的分配方式。取值:

        • 从带宽包分配

        • 按流量付费

        本文以从带宽包分配为例。

        带宽包实例

        选择云企业网实例已绑定的带宽包实例。

        说明

        带宽包分配方式选择从带宽包分配时配置该参数。

        带宽

        输入允许使用的带宽值。单位:Mbps。

        默认链路类型

        默认使用的链接类型。取值

        • 铂金

        说明

        带宽包分配方式选择按流量付费时可配置为铂金

      设置成功后,可以在基本信息页的已分配带宽中,查看跨地域带宽。

  2. 源实例配置。

    1. 添加白名单。

      添加白名单的具体操作,请参见设置白名单组内白名单请填写目标实例的VPC网段。

      VPC网段查看方法

      1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

      2. 在左侧导航栏单击数据库连接,在网络类型中查看VPC网段。VPC网段

    2. 创建高权限账号。

      创建账号的具体操作,请参见创建账号账号类型请选择高权限账号。

      说明

      高权限账号用于迁移上云,需要具备CREATE ROLE、REPLICATIONpg_monitor权限。如果您已有高权限的账号,则无需重复创建。

  3. 目标实例配置。

    1. 上云评估。

      1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

      2. 在左侧导航栏单击一键上云/容灾搭建,单击可行性评估页签。

      3. 在配置向导的选择场景与源端类型步骤,选择场景为迁移上云,并选择源端为阿里云RDS实例,单击下一步

      4. 目标实例配置步骤,单击下一步

      5. 源实例配置步骤,选中所有配置准备项,单击下一步

      6. 发起可行性评估步骤,配置源库信息。

        参数

        取值说明

        迁移任务名

        系统自动生成,无需修改。

        源端 VPC IP/DNS

        填写源实例的内网连接地址。具体请参见查看内网地址

        源端Port

        填写源实例的端口,具体请参见查看端口

        用户名

        源实例中创建的高权限数据库账号。

        密码

        源实例中创建的高权限数据库账号的密码。

      7. 单击创建可行性评估任务

        说明

        迁移评估任务期间,实例状态将变更为维护实例中

        迁移评估完成后,您可以在可行性评估页面的迁移上云列表查看迁移评估任务的状态。

        • 只有状态成功,您才能进行迁移上云步骤。

        • 如果状态失败,请单击操作列的查看报告,根据报错进行处理,常见报错请参见解读上云评估报告

    2. 迁移上云。

      1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

      2. 在左侧导航栏单击一键上云/容灾搭建,切换至迁移上云页签,单击创建迁移上云任务。

      3. 创建迁移上云任务窗口中,从关联评估任务列表中选择已成功的上云评估任务。

        说明

        选择关联评估任务后,源库类型源端 IP/DNS源端Port用户名参数将会自动获取,无需配置。

      4. 单击发起迁移上云,系统将自动启动上云任务。

        重要

        上云任务期间,实例状态将变更为迁入数据中。您可以对源实例进行读写,但请勿执行迁移、重启、变配等操作。

    3. 将目标RDS PostgreSQL提升为主库。

      1. 在迁移上云任务中,单击上云阶段列的链接,查看当前上云任务进度。

      2. 当上云阶段为增量同步时,可单击操作列的上云切换,将目标RDS PostgreSQL提升为主库,正式提供服务。

      3. 切换上云窗口,根据上云须知提示,设置源实例只读或应用停止写入。

        说明

        参考如下步骤,设置源实例只读:

        1. 通过设置实例参数功能,修改源实例参数rds_force_trans_ro_non_sup取值为on

        2. 使用如下语句,中断所有现有会话。

          SELECT pg_terminate_backend(pid) FROM pg_stat_activity 
          WHERE usename not in ('replicator', 'monitor', 'pgsql', 'aurora') AND pid != pg_backend_pid();
      4. 选中所有复选框,单击立即切换,等待迁移完成。