本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
为复制实例设置网络
Amazon DMS始终在VPC基于 Amazon 的中创建复制实例VPC。您可以指定VPC复制实例所在的位置。你可以使用你的账户VPC的默认设置和 Amazon 区域,或者你可以创建一个新的VPC。
确保为您的复制实例分配的 elastic network inter VPC face 与安全组关联。此外,请确保此安全组的规则允许所有端口上的所有流量离开(出口)。VPC使用此方法,如果端点上启用了正确的传出规则,就允许从复制实例与您的源和目标数据库端点通信。我们建议您为终端节点使用默认设置,这允许在所有端口上传出到所有地址。
源端点和目标终端节点通过连接VPC或位于内部来访问内部的复制实例VPC。VPC数据库端点必须包括允许从复制实例进行传入访问的网络访问控制列表 (ACLs) 和安全组规则(如果适用)。如何进行此项设置取决于您使用的网络配置。您可以使用复制实例VPC安全组、复制实例的私有或公有 IP 地址或NAT网关的公有 IP 地址。这些连接构成了您用于数据迁移的网络。
注意
数据库迁移的网络配置
您可以将几种不同的网络配置与 Amazon 数据库迁移服务。以下是用于数据库迁移的常见网络配置。
主题
如果可行,我们建议您在与目标终端节点相同的区域、与目标终端节点相同的VPC子网中创建DMS复制实例。
将所有数据库迁移组件合而为一的配置 VPC
最简单的数据库迁移网络是源端点、复制实例和目标终端节点都位于同一个网络中VPC。如果您的源端点和目标终端节点位于亚马逊RDS数据库实例或亚马逊实例上,则此配置不错。EC2
下图显示了一种配置,在该配置中,Amazon EC2 实例上的数据库连接到复制实例,并将数据迁移到 Amazon RDS 数据库实例。
此配置中使用的VPC安全组必须允许从复制实例进入数据库端口。可以通过多种方式执行此操作。您可以确保复制实例使用的安全组可以传入端点。或者,如果您正在使用复制实例,则可以允许复制实例的VPCCIDR范围、NAT GW Elastic IP 或私有 IP 地址。但是我们不建议您使用复制实例的私有 IP 地址,因为如果复制 IP 地址发生变化,它可能中断您的复制。
具有多个的配置 VPCs
如果您的源终端节点和目标终端节点不同VPCs,则可以在其中一个中创建复制实例VPCs。然后,您可以使用对等互连将两VPCs者联系起来VPC。
VPC对等连接是两者之间的网络连接VPCs,它允许使用各自VPC的私有 IP 地址进行路由,就像它们在同一个网络中一样。你可以在自己的VPC对等连接之间创建对等连接VPCs,也可以创建另一个对VPC等连接 Amazon 账户,或者使用VPC其他账户 Amazon 区域。有关对VPC等的更多信息,请参阅《A mazon VPC VPC 用户指南》中的对等互联。
下图显示了使用对等互VPC连的示例配置。在这里,中 Amazon EC2 实例上的源数据库通过VPC对等VPC连接到。VPC它VPC包含 Amazon 数据库实例上的复制RDS实例和目标数据库。
要实现对VPC等互连,请按照 Amazon Virtual VPC Private Cloud、VPC P eering 文档中的使用对等连接中的说明进行操作。确保其中一个的路由表VPC包含另一个的CIDR路由。例如,如果 VPC A 使用目标 10.0.0.0/16,VPCB 使用目标 172.31.0.0,则 A 的路由表应包含 172.31.0.0,B 的VPC路由表必须包含 10.0.0.0/16。VPC有关更多详细信息,请参阅 Amazon Virtual VPC Private Cloud《对等互连》文档中的更新VPC对等连接的路由表。
此配置中使用的VPC安全组必须允许从复制实例进入数据库端口,或者应该允许对等访问CIDR块VPC的入口。
共享配置 VPCs
Amazon DMS 将共享给组织中参与客户账户的子网视为同一账户中的普通子网。以下是对如何操作的描述 Amazon DMS 句柄VPCs、子网以及如何使用共享VPCs。
您可以将网络配置配置为在自定义子网中运行,也可以VPCs通过创建ReplicationSubnetGroup
对象进行配置。创建时ReplicationSubnetGroup
,您可以选择指定账户VPC中特定子网。您指定的子网列表必须包括至少两个位于不同可用区的子网,并且所有子网都必须位于同一可用区中。VPC在创建时ReplicationSubnetGroup
,客户只能指定子网。 Amazon DMS 将VPC代表您确定,因为每个子网都恰好链接到一个子网VPC。
当你创建 Amazon DMS ReplicationInstance
或者 Amazon DMS ReplicationConfig
,您可以选择指定在ReplicationSubnetGroup
其中运行ReplicationInstance
或无服务器复制VPC的安全组。如果未指定, Amazon DMS 选择客户默认值ReplicationSubnetGroup
(其中 Amazon DMS 代表您创建(如果未为所有子网指定VPC(默认)和默认VPC安全组。
您可以选择在您指定的可用区中运行迁移,也可以选择在 ReplicationSubnetGroup
中的任何可用区中运行迁移。时间 Amazon DMS 尝试创建复制实例或启动无服务器复制,它会将您的子网的可用区转换为核心服务账户中的可用区,以确保即使两个账户之间的可用区域映射不相同,我们也能在正确的可用区中启动实例。
如果您使用共享的VPC,则需要确保创建的ReplicationSubnetGroup
对象可以映射到共享VPC中要使用的子网。创建ReplicationInstance
或时ReplicationConfig
,必须ReplicationSubnetGroup
为共享指定VPC,并在 “创建” 请求中指定您为VPC共享创建VPC的安全组。
请注意以下有关使用共享内容的注意事项VPC:
VPC所有者不能与参与者共享资源,但参与者可以在所有者的子网中创建服务资源。
VPC所有者无法访问参与者创建的资源(例如复制实例),因为所有资源都是特定于账户的。但是,只要您在共享中创建复制实例VPC,只要复制终端节点或任务具有正确的权限,它就可以访问其中的资源,VPC而不论其拥有者是谁。
由于资源是特定于账户的,因此其他参与者无法访问其他账户拥有的资源。您无法向其他账户授予任何权限,允许他们访问在VPC与您的账户共享的资源中创建的资源。
为用户VPC配置网络 Amazon Direct Connect 或者 VPN
远程网络VPC可以使用多种选项连接到,例如 Amazon Direct Connect 或软件或硬件VPN连接。这些选项通常用于通过将内部网络扩展到内部网络来集成现有的现场服务,例如监控、身份验证、安全、数据或其他系统 Amazon 云。通过使用这种类型的网络扩展,您可以无缝连接到 Amazon托管的资源,VPC例如.
下图显示了源终端节点是公司数据中心内本地数据库的配置。它是通过使用连接的 Amazon Direct Connect 或者 a VPN VPC 到 a,其中包含复制实例和 Amazon 数据库RDS实例上的目标数据库。
在此配置中,VPC安全组必须包含一条路由规则,该规则将发往某个VPCCIDR范围或特定 IP 地址的流量发送到主机。该主机必须能够桥接从到本地的VPC流量VPN。在这种情况下,NAT主机包括自己的安全组设置。这些设置必须允许来自复制实例VPCCIDR范围、私有 IP 地址或安全组的流量进入该NAT实例。但是我们不建议您使用复制实例的私有 IP 地址,因为如果复制 IP 地址发生变化,它可能中断您的复制。
VPC使用互联网连接网络的配置
如果你不使用VPN或 Amazon Direct Connect 要连接到 Amazon 资源,你可以使用互联网来迁移你的数据库。在这种情况下,您可以迁移到亚马逊EC2实例或亚马逊RDS数据库实例。此配置涉及一个公共复制实例,该实例VPC带有包含目标终端节点和复制实例的 Internet 网关。
要向您的添加互联网网关VPC,请参阅《Amazon VPC 用户指南》中的连接互联网网关。
VPC路由表必须包含路由规则,这些规则将VPC默认情况下不发往的流量发送到 Internet 网关。在此配置中,与终端节点的连接将显示为来自复制实例的公有 IP 地址,而非私有 IP 地址。有关更多信息,请参阅 Amazon VPC 用户指南中的VPC路由表。
使用不在RDS数据库实例中的配置VPC到VPC正在使用的数据库实例 ClassicLink
我们将于 2022 年 8 月 15 日退役 EC2 ——经典版。我们建议您从 EC2-Classic 迁移到。VPC有关更多信息,请参阅《亚马逊EC2用户指南》VPC中的从 EC2-Classic迁移到a,以及博客—— EC2经典网络即将停用——准备方法如下 |
要将不在中的 A VPC mazon RDS 数据库实例连接到DMS复制服务器和中的数据库实例VPC,可以 ClassicLink 与代理服务器一起使用。
ClassicLink 允许您将 EC2-Classic 数据库实例关联到您账户VPC中的同一个实例 Amazon 区域。创建链接后,源数据库实例VPC可以使用其私有 IP 地址与内部的复制实例进行通信。
由于中的复制实例VPC无法使用直接访问 EC2-Classic 平台上的源数据库实例 ClassicLink,因此您使用代理服务器。代理服务器将源数据库实例连接到VPC包含复制实例和目标数据库实例的。代理服务器用于连接 ClassicLink 到VPC。代理服务器上的端口转发允许源数据库实例和中的目标数据库实例之间进行通信VPC。
ClassicLink 与一起使用 Amazon Database Migration Service
您可以将不在 a 中的 Amazon RDS 数据库实例连接VPC到 Amazon DMS中的复制服务器和数据库实例VPC。为此,您可以将 Amazon EC2 ClassicLink 与代理服务器一起使用。
以下过程说明如何 ClassicLink 用于此目的。此过程将不在 a VPC 中的 Amazon RDS 源数据库实例连接到VPC包含 Amazon DMS复制实例和目标数据库实例。
创建一个 Amazon DMS中的复制实例VPC。(所有复制实例都是在中创建的VPCs。)
将VPC安全组关联到复制实例和目标数据库实例。默认情况下,当两个实例共享一个VPC安全组时,它们可以相互通信。
在 C EC2 lassic 实例上设置代理服务器。
在代理服务器和 ClassicLink 之间使用创建连接VPC。
创建 Amazon DMS源数据库和目标数据库的端点。
创建一个 Amazon DMS任务。
用于 ClassicLink 将不在中的数据库实例上的数据库迁移VPC到中数据库实例上的数据库 VPC
-
创建一个 Amazon DMS复制实例并分配VPC安全组:
-
登录 Amazon Web Services Management Console 然后打开 Amazon DMS https://console.aws.amazon.com/dms/v2
/的主机。 如果你以以下身份登录 Amazon Identity and Access Management (IAM) 用户,请确保您拥有相应的访问权限 Amazon DMS。 有关数据库迁移所需权限的更多信息,请参阅IAM使用所需的权限 Amazon DMS。
-
在控制面板页中,选择复制实例。按照步骤 1:使用 Amazon DMS 控制台创建复制实例中的说明操作来创建复制实例。
-
在你创建之后 Amazon DMS复制实例,打开EC2服务控制台。从导航窗格中选择网络接口。
-
选择 DMSNetworkInterface,然后从 “操作” 菜单中选择 “更改安全组”。
-
选择要用于复制实例和目标数据库实例的安全组。
-
-
将最后一步中的安全组与目标数据库实例关联:
打开亚马逊RDS服务控制台。从导航窗格中选择实例。
选择目标数据库实例。在实例操作中,选择修改。
对于安全组参数,请选择在上一步中使用的安全组。
选择继续,然后选择修改数据库实例。
-
步骤 3:使用在 C EC2 lassic 实例上设置代理服务器NGINX。使用您选择AMI的启动EC2经典实例。以下示例基于 AMI Ubuntu 服务器 14.04 LTS ()。HVM
在 C EC2 lassic 实例上设置代理服务器
-
NGINX使用以下命令连接到 EC2 Classic 实例并进行安装:
Prompt> sudo apt-get update Prompt> sudo wget http://nginx.org/download/nginx-1.9.12.tar.gz Prompt> sudo tar -xvzf nginx-1.9.12.tar.gz Prompt> cd nginx-1.9.12 Prompt> sudo apt-get install build-essential Prompt> sudo apt-get install libpcre3 libpcre3-dev Prompt> sudo apt-get install zlib1g-dev Prompt> sudo ./configure --with-stream Prompt> sudo make Prompt> sudo make install
-
使用以下代码编辑NGINX守护程序文件:
/etc/init/nginx.conf
# /etc/init/nginx.conf – Upstart file description "nginx http daemon" author "email" start on (filesystem and net-device-up IFACE=lo) stop on runlevel [!2345] env DAEMON=/usr/local/nginx/sbin/nginx env PID=/usr/local/nginx/logs/nginx.pid expect fork respawn respawn limit 10 5 pre-start script $DAEMON -t if [ $? -ne 0 ] then exit $? fi end script exec $DAEMON
-
在创建NGINX配置文件
/usr/local/nginx/conf/nginx.conf
。在配置文件中,添加以下内容:# /usr/local/nginx/conf/nginx.conf - NGINX configuration file worker_processes 1; events { worker_connections 1024; } stream { server { listen
DB instance port number
; proxy_passDB instance identifier
:DB instance port number
; } } -
在命令行中,开始NGINX使用以下命令:
Prompt> sudo initctl reload-configuration Prompt> sudo initctl list | grep nginx Prompt> sudo initctl start nginx
-
-
在代理服务器与VPC包含目标数据库实例和复制实例的目标服务器之间创建 ClassicLink 连接:
打开EC2控制台并选择运行代理服务器的 EC2 Classic 实例。
对于 “操作”,选择 ClassicLink,然后选择 “链接到” VPC。
-
选择本过程中前面使用的安全组。
选择 “链接到” VPC。
-
步骤 5:创建 Amazon DMS使用以下步骤的终端节点步骤 2:指定源和目标端点。指定源端点时,请务必使用代理的内部EC2DNS主机名作为服务器名称。
-
创建一个 Amazon DMS使用中的过程执行任务步骤 3:创建任务并迁移数据。
创建复制子组
作为用于数据库迁移的网络的一部分,您需要指定计划在虚拟私有云 (VPC) 中使用哪些子网。这VPC必须基于 Amazon VPC 服务。子网是您在给定可用区VPC内的一系列 IP 地址。这些子网可以分布在可用区之间 Amazon 您所在VPC的地区。
当您在中创建复制实例或实例配置文件时 Amazon DMS控制台,你可以使用你选择的子网。
您创建复制子网组来定义要使用的子网。您必须指定至少位于两个可用区中的子网。
创建复制子网组
-
登录 Amazon Web Services Management Console 然后打开 Amazon DMS https://console.aws.amazon.com/dms/v2
/的主机。 如果您以IAM用户身份登录,请确保您拥有相应的访问权限 Amazon DMS。 有关数据库迁移所需权限的更多信息,请参阅IAM使用所需的权限 Amazon DMS。
-
在导航窗格中,选择子网组。
-
选择 Create subnet group (创建子网组)。
-
在创建复制子网组页中,指定您的复制子网组信息。下表描述了设置。
选项 操作 名称
输入包含 8 到 16 ASCII 个可打印字符(不包括/、” 和 @)的复制子网组的名称。您的账户的名称应该是唯一的 Amazon 您选择的区域。您可以选择在名称中添加一些情报,例如包括 Amazon 例如,您正在执行的区域和任务
DMS-default-VPC
。描述
输入复制子网组的简短说明。
VPC
选择VPC要用于数据库迁移的。请记住,VPC必须在至少两个可用区中至少有一个子网。
添加子网
选择您要包括在复制子网组中的子网。您必须选择至少位于两个可用区中的子网。
选择 Create subnet group (创建子网组)。
使用解析域端点 DNS
通常,一个 Amazon DMS 复制实例使用 Amazon EC2 实例中的域名系统 (DNS) 解析器来解析域终端节点。如果您需要DNS解决问题,可以使用 Amazon Route 53 解析器。有关使用 Route 53 DNS 解析器的更多信息,请参阅 R oute 53 解析器入门。
有关如何使用您自己的本地名称服务器通过 Amazon Route 53 Resolver 解析某些端点的信息,请参阅 使用您自己的本地名称服务器。