用于源数据库连接的网络方法

为了将数据从源数据库服务器移至 AlloyDB for PostgreSQL 目标集群,Database Migration Service 需要连接到您的源实例。该连接可通过公共互联网建立,也可通过项目虚拟私有云 (VPC) 中的一系列专用连接来建立。

本页面简要介绍了每种可用的源数据库连接方法,并提供了建议部分,以帮助您为迁移选择合适的解决方案:

熟悉不同的连接方法及其连接性要求后,您可以使用 决策树图表为您的场景选择合适的解决方案。

方法比较

每种连接方法都有不同的优势和要求。 您可以使用下表快速比较这些方法,然后在专门介绍每种方法的部分中了解更多详情。

网络方法 优点 缺点
IP 许可清单
  • 最容易设置的连接方法。
  • 当无法通过 Google Cloud中的专用网络访问源数据库时,此方法非常有用。
  • 需要您向公共互联网公开源数据库服务器的 IPv4 地址。这需要采取额外的安全措施。 例如,我们建议您使用 TLS 证书和防火墙规则来保护连接。
  • 配置防火墙规则可能需要 IT 部门的协助。
  • Database Migration Service 不支持在 Oracle Real Application Clusters (RAC) 环境中使用单客户端访问名称 (SCAN) 功能直接连接到数据库。如需了解在此类环境中使用公共 IP 许可清单连接的潜在解决方案,请参阅 排查 Oracle SCAN 错误。
正向 SSH 隧道
  • 比通过公共 IP 并使用 IP 许可清单进行连接更安全。

    初始连接是通过公共互联网上的 Secure Shell (SSH) 端口建立的。连接处于活跃状态后,所有流量都会通过安全的专用连接传输。

  • 当无法通过 Google Cloud中的专用网络访问源数据库,但您不想将源数据库服务器直接公开到公共互联网时,此方法非常有用。
  • 使用中间服务器(正向 SSH 隧道机器)进行连接可能会导致额外的延迟时间。
  • 您必须设置并维护 forward-ssh 主机服务器。 在整个迁移过程中,服务器必须保持在线状态。
Private Service Connect 接口
  • 使用网络连接建立与来源专用 IP 的连接。 此方法不会消耗 VPC 中的对等互连配额。
  • 最容易配置的来源专用连接方法。
  • 需要设置网络连接并调整防火墙规则。
  • 建立连接后,您将无法修改网络连接。
通过虚拟私有云对等互连实现专用连接 系统会通过 VPC 对等互连建立与源数据库的专用 IP 地址的连接。如果您的 VPC 没有足够的对等互连配额,则可能很难使用此连接方法。在大多数情况下,我们建议您改用 使用 Private Service Connect 接口的专用连接。

用于源数据库连接的 IP 许可清单

使用 IP 许可清单连接方法时,Database Migration Service 会尝试建立与源数据库服务器的公开可用 IP 地址的连接。

IP 许可清单连接的要求

概括来讲,如需使用此连接方法,您需要确保以下事项:

  • 您必须向公共互联网公开来源的 IP 地址(直接公开,或通过域名服务器 [DNS] 使用公开认可的主机名公开)。

  • Database Migration Service 不支持在 Oracle Real Application Clusters (RAC) 环境中使用单客户端访问名称 (SCAN) 功能直接连接到数据库。如需了解将公共 IP 许可清单连接方法与此类环境搭配使用的潜在解决方案,请参阅 排查 Oracle SCAN 错误。
  • 您需要允许来自 Database Migration Service 公共 IP 地址的传入连接。

  • 可选:IP 许可清单连接默认使用未加密的连接。 我们建议您使用 TLS 证书来保护连接。 Database Migration Service 支持不同的 TLS 类型,以便您根据源数据库可以支持的内容选择最佳解决方案。如需了解详情,请参阅 使用 SSL/TLS 证书加密网络连接。

配置 IP 许可清单连接

配置公共 IP 连接需要执行不同的步骤,具体取决于源数据库类型。有关详情,请参阅:

用于源数据库连接的正向 SSH 隧道

此连接方法是公共网络连接和专用网络连接的混合。连接本身是通过 Secure Shell (SSH) 端口建立到隧道主机服务器的公共 IP 地址。连接处于活跃状态后,所有流量都会通过安全隧道传输到源数据库的专用 IP 地址。

一张网络图,展示了通过专用 SSH 隧道服务器建立的高级连接设置。
图 2. 迁移网络示例:通过 SSH 隧道建立源连接。(点击可放大)
一张网络图,展示了通过专用 SSH 隧道服务器建立的高级连接设置。

正向 SSH 隧道的要求

如需创建连接,您需要在隧道服务器上向公共互联网公开 SSH 端口。建立连接后,所有流量都会通过专用隧道连接进行路由。

您可以在托管源数据库的同一服务器上终止隧道,但我们建议您使用专用隧道服务器。 这样,您就不会将源数据库直接公开到公共互联网。隧道服务器可以是任何可使用 SSH 从互联网访问并可访问源数据库的 Unix 或 Linux 主机。

对于某些连接场景,我们建议您使用 通过 Virtual Private Cloud 对等互连建立专用连接的网络方法,而不是正向 SSH 隧道:

  • 对于位于 Google Cloud内部的自托管来源,Database Migration Service 可以通过专用连接配置访问来源数据库的专用 IP。您无需设置单独的 SSH 服务器即可建立连接。

配置正向 SSH 隧道连接

通过正向 SSH 隧道配置连接性需要执行不同的步骤,具体取决于源数据库类型。有关详情,请参阅:

使用 Private Service Connect 接口的专用连接

Private Service Connect 接口可让 Database Migration Service 发起到源数据库专用 IP 的连接,而无需为其自己的 IP 地址消耗对等互连配额。而是利用您在 VPC 中创建的网络连接。

一张网络图,展示了通过专用 SSH 隧道服务器和 Private Service Connect 接口实现的高层级连接设置。
图 3. 迁移网络示例:使用 Private Service Connect 接口和 Cloud VPN 为位于其他云产品中的来源提供专用 IP 来源连接。 (点击可放大)
一个网络图,展示了通过专用 SSH 隧道服务器和 Private Service Connect 接口实现的高级连接设置。

Private Service Connect 接口的要求

此连接方法要求您在可访问源数据库的 VPC 网络中创建网络连接。网络连接的子网必须有 6 个可用 IP 地址(也就是说,您必须使用 /29 范围,总共 8 个 IP 地址)。您可以将同一网络连接用于多个迁移作业,前提是您的 AlloyDB for PostgreSQL 集群至少有一个可用 IP 地址(AlloyDB for PostgreSQL 仅支持主集群的 Private Service Connect 接口)。

使用 Private Service Connect 接口配置专用 IP 连接

如需将专用 IP 连接与 Private Service Connect 接口搭配使用,您的源数据库专用 IP 必须可从您创建网络连接的虚拟私有云访问。如需详细了解如何为不同的数据库来源配置此专用 IP 连接方法,请参阅:

通过 VPC 对等互连建立专用连接

通过此方法,您可以使用虚拟私有云 (VPC) 中的专用 IP 地址连接到来源。您无需向公共互联网公开任何接口即可使用此方法,但它要求您的源数据库 IP 地址或主机名可以从 Google Cloud VPC 访问。

根据您拥有的源数据库,此连接方法可能需要您设置其他网络组件(例如 Cloud VPN 或反向代理虚拟机):

一张网络图,展示了通过专用 SSH 隧道服务器建立的高级连接设置。
图 4. 迁移网络组建和管理示例:通过虚拟私有云对等互连和 Cloud VPN 为 Google Cloud外部的代管式来源提供专用 IP 连接性。(点击可放大)
一张网络图,展示了通过专用 SSH 隧道服务器建立的高级连接设置。

专用 IP 连接的要求

此连接方法最适合可从您的 Google Cloud VPC 网络访问其专用 IP 地址的来源。对于位于 Google Cloud中的自托管来源,您可以使用 Database Migration Service 中的 专用连接配置建立直接对等互连连接。对于其他类型的来源,您可能需要额外的网络组件,例如 Cloud VPN 或 反向代理虚拟机(或两者)。

专用 IP 连接需要满足以下条件:

通过 VPC 对等互连配置专用 IP 连接

如需将专用 IP 连接与虚拟私有云对等互连搭配使用,您的源数据库专用 IP 必须可从虚拟私有云访问。根据您的网络架构,您可能需要使用其他组件,例如反向代理虚拟机或 Cloud VPN。

如需详细了解如何为不同的数据库来源配置专用 IP 连接,请参阅:

来源网络连接决策树

熟悉所有受支持的来源连接方法及其要求后,您可以按照图表中的问题来帮助您为场景选择正确的连接方法。

包含引导性问题的决策树图,可帮助您选择合适的连接方法。
图 5. 来源网络连接决策树。

后续步骤