本页面简要介绍了与为从标准同构 PostgreSQL 迁移到 Cloud SQL for PostgreSQL 配置网络连接相关的概念。如需了解快速启动迁移连接,请参阅 使用快速启动迁移指南。
网络组件介绍了同构 PostgreSQL 迁移的端到端网络配置。
方法可用性说明了哪些方法可用,具体取决于您的场景。
方法比较提供了可用连接性的比较表。
针对每种可用连接方法的专用部分:
IP 许可清单描述了与源数据库公共 IP 的网络连接。
反向 SSH 隧道简要介绍了专用 Secure Shell (SSH) 隧道。
通过 Private Service Connect 接口建立专用连接介绍了如何通过网络连接连接到源专用 IP。
仅适用于 Cloud SQL for PostgreSQL 来源: 专用 VPC 对等互连介绍了一种专为在两个 PSA Cloud SQL 实例之间迁移而定制的网络方法。
使用 VPC 对等互连的专用连接介绍了如何通过对等互连的 VPC 网络建立与源数据库的专用 IP 的连接。
熟悉不同的连接方法及其连接性要求后,您可以使用 决策树图表为您的场景选择合适的解决方案。
迁移过程中涉及的网络组件
对于同构 PostgreSQL 到 Cloud SQL 的迁移,Database Migration Service 会连接到目标 Cloud SQL for PostgreSQL 实例,然后代表该实例管理迁移过程。目标实例会建立与源实例的连接,而 Database Migration Service 会监控该过程。
在规划迁移的网络连接设置时,请务必仔细考虑基础架构要求,包括网络决策可能会对迁移后的数据库实例的最终状态带来哪些限制。例如,如果您想使用专用连接进行网络连接,则需要使用启用了专用 IP 的目标 Cloud SQL 实例。
连接方法可用性
不同的源数据库可以使用不同的连接方法,具体取决于您是要迁移到新的目标实例还是现有的目标实例。下表概述了哪种场景支持哪种方法:
| 源数据库产品 | 迁移到新目标实例的方法 | 迁移到现有目标实例的方法 |
|---|---|---|
| 自托管、Amazon Aurora、Amazon RDS、Azure Database for PostgreSQL | IP 许可清单、反向 SSH 隧道、VPC 对等互连 | IP 许可清单、反向 SSH 隧道、VPC 对等互连(需要 PSA 目标实例)、PSC 接口(需要启用 PSC 的目标实例) |
| Cloud SQL for PostgreSQL | IP 许可清单(不推荐)、专用 VPC 对等互连 | IP 许可清单(不推荐)、专用 VPC 对等互连、PSC 接口(需要启用 PSC 的目标实例) |
连接方法比较
每种连接方法都有不同的优势和要求。 您可以使用下表快速比较这些方法,然后在专门介绍每种方法的部分中了解更多详情。
| 网络方法 | 优点 | 缺点 |
|---|---|---|
| IP 许可清单 |
|
|
| 反向 SSH 隧道 |
|
|
| Private Service Connect 接口 |
|
|
| 仅适用于 Cloud SQL for PostgreSQL 来源: 专用 VPC 对等互连 | 此连接方法专门用于在不使用共享 VPC 的情况下,在 PSA Cloud SQL for PostgreSQL 实例之间进行迁移。 | 要求两个实例都是已启用专用 IP 的 PSA 实例。 不支持启用了 PSC 的目标位置。 |
| 通过虚拟私有云对等互连实现专用连接 | 系统会通过 VPC 对等互连建立与源数据库的专用 IP 地址的连接。如果您的 VPC 没有足够的对等互连配额,则可能很难使用此连接方法。对于从 Cloud SQL for PostgreSQL 源迁移的大多数场景,我们建议您改用 使用 Private Service Connect 接口的专用连接。 |
|
用于源数据库连接的 IP 许可清单
使用 IP 许可清单连接方法时,Cloud SQL 会尝试在 PostgreSQL 端口 5432 上建立与源数据库服务器的公开可用 IP 地址的连接。
IP 许可清单连接的要求
概括来讲,如需使用此连接方法,您需要确保以下事项:
您必须向公共互联网公开源数据库 IP 地址(直接公开,或通过域名服务器 [DNS] 使用公开认可的主机名公开)。
您的目标 Cloud SQL 实例必须启用公共 IP。您的源数据库必须允许来自目标实例的出站公共 IP 的传入连接。
配置 IP 许可清单连接
配置公共 IP 连接需要执行不同的步骤,具体取决于源数据库类型。有关详情,请参阅:
反向 SSH 隧道数据库连接
此连接方法是公共网络连接和专用网络连接的混合。连接本身是通过 Secure Shell (SSH) 端口建立到隧道主机服务器的公共 IP 地址。连接处于活跃状态后,所有流量都会通过安全隧道传输到源数据库的专用 IP 地址(端口 5432)。
对于位于 Google Cloud内部的 Cloud SQL 数据源或自托管式解决方案,我们建议您使用 通过 Private Service Connect 接口建立专用连接或 通过虚拟私有云对等互连建立专用连接的方法。
反向 SSH 隧道的要求
如需创建连接,您需要在隧道服务器(也称为堡垒主机)上向公共互联网公开 SSH 端口。建立连接后,所有流量都会通过专用隧道连接进行路由。
此方法需要额外的网络组件:
- Google Cloud 中的虚拟机 (VM),用作反向 SSH 机器。
- 网络中可连接到源数据库的其他机器。
配置反向 SSH 隧道连接
Database Migration Service 可以生成设置脚本来创建反向 SSH 虚拟机,但完整的端到端流程因源数据库类型而异。如需了解详情,请参阅 配置反向 SSH 连接。
使用 Private Service Connect 接口的专用连接
通过此连接方法,您可以连接到源数据库的专用 IP,而无需消耗 VPC 对等互连配额。Private Service Connect 接口是专用 IP 连接的推荐方法,但仅在 迁移到现有实例时可用。
使用 Private Service Connect 接口时,目标实例不会消耗更多对等互连配额。而是利用 Private Service Connect 接口访问可访问源数据库专用 IP 的虚拟私有云。根据您的网络架构,您可能需要使用其他组件,例如 Cloud VPN 或 Cloud Interconnect。
对于从 Cloud SQL for PostgreSQL 实例进行的迁移,您的源实例需要启用专用服务访问通道,并与您创建网络连接的虚拟私有云建立对等互连,但目标 Cloud SQL for PostgreSQL 实例不会消耗更多对等互连配额。而是利用 Private Service Connect 接口。
Private Service Connect 接口的要求
此连接方法需要满足以下条件:
目标数据库实例必须是启用了 PSC 的 Cloud SQL for PostgreSQL 实例。
您需要拥有 已启用专用服务访问通道的虚拟私有云网络。
这是您在其中创建网络连接的网络。源数据库的 IP 必须可从该虚拟私有云访问。例如,对于 Cloud SQL for PostgreSQL 来源,这是您与启用了 PSA 的来源 Cloud SQL 实例建立对等互连的网络。
使用 Private Service Connect 接口配置专用 IP 连接
如需将专用 IP 连接与 Private Service Connect 接口搭配使用,您的源数据库专用 IP 必须可从您的虚拟私有云访问。根据您的网络架构,您可能需要使用其他组件,例如 Cloud VPN 或 Cloud Interconnect。
如需详细了解如何为不同的数据库来源配置专用 IP 连接,请参阅:
为 Amazon RDS 和 Amazon Aurora 数据源配置 Private Service Connect 接口的专用 IP 连接。
为 Azure Database for PostgreSQL 源配置使用 Private Service Connect 接口的专用 IP 连接。
仅限 Cloud SQL for PostgreSQL 来源:专用 VPC 对等互连
此方法专用于在 PSA Cloud SQL for PostgreSQL 实例之间进行迁移。 在标准网络场景中,通过虚拟私有云对等互连连接两个 Cloud SQL 实例需要使用共享 VPC。对于使用 Database Migration Service 进行的同构 PostgreSQL 迁移,您可以在不使用共享 VPC 的情况下连接两个 PSA 实例。
专用 VPC 对等互连的要求
此连接方法需要满足以下条件:
源数据库实例必须是启用了 PSA 的 Cloud SQL for PostgreSQL 实例。
目标数据库实例必须是启用了 PSA 的 Cloud SQL for PostgreSQL 实例。
您需要拥有 已启用专用服务访问通道的虚拟私有云网络。
这是 Database Migration Service 与目标 Cloud SQL 实例对等互连的网络。您需要有足够的空间来分配所需的 IP 范围。
配置专用 IP 连接专用 VPC 对等互连
如需详细了解如何为源 PSA Cloud SQL for PostgreSQL 实例配置专用 VPC 对等互连,请参阅 为 Cloud SQL for PostgreSQL 配置专用虚拟私有云对等互连。
通过 VPC 对等互连建立专用连接
通过此方法,您可以使用虚拟私有云 (VPC) 中的专用 IP 地址连接到来源。您无需向公共互联网公开任何接口即可使用此方法,但它要求您的源数据库 IP 地址或主机名可以从 Google Cloud VPC 访问。对于位于 Google Cloud外部的来源,您可能需要额外的网络组件,例如 Cloud VPN 或 Cloud Interconnect。
通过 VPC 对等互连实现专用 IP 连接的要求
通过 VPC 对等互连建立专用 IP 连接需要满足以下条件:
- 您需要拥有 已启用专用服务访问通道的虚拟私有云网络。您的源数据库的专用 IP 必须可在该网络中访问。
通过 VPC 对等互连配置专用 IP 连接
如需将专用 IP 连接与虚拟私有云对等互连搭配使用,您的源数据库专用 IP 必须可从虚拟私有云访问。根据您的网络架构,您可能需要使用其他组件,例如 Cloud VPN 或 Cloud Interconnect。
如需详细了解如何为不同的数据库来源配置专用 IP 连接,请参阅:
网络连接决策树
熟悉所有受支持的连接方法及其要求后,您可以按照图表中的问题来帮助您选择适合您的场景的连接方法。
后续步骤
如需查看完整的逐步迁移演示,请参阅 开始使用 Cloud SQL for PostgreSQL 迁移。
如需配置源数据库前提条件和复制权限,请参阅 配置源数据库。