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

为了将数据从源数据库服务器迁移到目标 AlloyDB for PostgreSQL 集群,Database Migration Service 需要连接到源实例。该连接可以通过公共互联网建立,也可以通过项目 Virtual Private Cloud (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 隧道机器)进行连接可能会增加延迟时间。
  • 您必须设置和维护转发 SSH 主机服务器。 服务器必须在整个迁移过程中保持在线状态。
通过 Virtual Private Cloud 对等互连实现专用连接
  • 系统会与源数据库的专用 IP 地址建立连接。
  • 此连接方法最适合专用 IP 地址可从您的 Google Cloud VPC 网络访问的来源。

源数据库连接的 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 隧道配置连接需要执行不同的步骤,具体取决于源数据库类型。有关详情,请参阅:

通过 VPC 对等互连实现专用连接

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

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

一张网络图,显示了通过专用 SSH 隧道服务器的高级连接设置。
图 3. 迁移网络示例:专用 IP 源连接,通过 Virtual Private Cloud 对等互连和 Cloud VPN 实现,适用于位于 Google Cloud之外的受管源。 (点击可放大)
一张网络图,显示了通过专用 SSH 隧道服务器的高级连接设置。

专用 IP 连接的要求

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

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

  • 您需要拥有 启用专用服务访问通道的虚拟私有云网络

    这是与 Database Migration Service 和源数据库服务器对等互连的网络。您需要有足够的空间来为这两个组件分配 IP 范围。

  • 对于 Amazon RDS for Oracle:您需要在同一 VPC 网络中配置 Cloud VPN 或 Cloud Interconnect,以便为 Database Migration Service 创建专用连接配置。如果您无法在同一 VPC 网络中创建专用连接配置,则需要在 Compute Engine 上 设置反向代理虚拟机 (VM)

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

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

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

来源网络连接决策树

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

决策树图,其中包含引导性问题,可帮助您选择合适的连接方法。
图 4. 来源网络连接决策树。 (点击可放大)

后续步骤