无法通过 Site-to-Site *** 和 DMS 源数据库端点测试连接从本地 ping DMS 复制实例的私有 IP
Posted
技术标签:
【中文标题】无法通过 Site-to-Site *** 和 DMS 源数据库端点测试连接从本地 ping DMS 复制实例的私有 IP【英文标题】:Unable to ping Private IP of DMS Replication Instance from on-premises over Site-to-Site *** & DMS source DB endpoint test connection fails 【发布时间】:2019-10-13 12:27:24 【问题描述】:我想做什么?
我想将数据从本地 Windows Server 中的 SQL Server 迁移并自动复制到 AWS 云中的数据库。我为此使用 AWS DMS(数据库迁移服务)。
我已经做了/尝试了什么?
我已设置站点到站点 ***(在本地网络和 AWS VPC 之间) 我能够从本地 Windows Server ping *** 中的 EC2 实例 我能够从 *** 中的 EC2 实例 ping 本地 Windows Server 我创建了一个 DMS 复制实例。其私有 IP 已在 *** 连接集的允许 VPC CIDR 内 我能够从 EC2 实例 ping DMS 复制实例的私有 IP 但是,我无法从本地 Windows Server ping DMS 复制实例的私有 IP 我已经在我的本地 Windows Server 中设置了一个数据库服务器。我将此数据库添加为 DMS 源端点。当我尝试测试连接时,它失败并显示以下错误消息: 我已将安全组链接到 DMS 复制实例。这是我在 *** 连接设置中使用的同一个安全组 我的 DMS 源 DB 端点配置如下:我想知道什么?
为什么我无法 ping DMS 复制实例的私有 IP 而我可以通过设置 *** ping EC2 实例 为什么 DMS 端点测试连接失败? 你能帮我做这个数据库迁移吗?
【问题讨论】:
这看起来像是您的本地环境中的路线问题。 【参考方案1】:或许下面的调试方法会对你有所帮助。
正如您所提到的,您可以从本地网络 ping EC2 实例私有 IP,很明显,Site-Site *** 是成功的。
您没有提到您在与可以从本地网络 ping 的其他 Windows 实例相同的子网中创建 DMS 实例。如果您在不同的子网中创建 DMS,请确保与该子网关联的路由表已启用路由传播。然后请检查入站规则中允许端口号和 IP 地址的安全组。通过这种方式,我们可以确保所有东西都在 AWS 中正确设置。
请从您的本地站点使用以下命令进行 telnet 测试。
Windows/Linux:
在windows或linux终端打开命令提示符并尝试
telnet <<DMS IP>> <<Port Number>>
如果连接成功,那么您就可以在本地与 DMS 主机之间建立连接。
如果未成功连接或超时,则您需要联系您的本地网络管理员或负责人,并告诉他们您在从本地网络连接 AWS 子网 xxxx/x CIDR 时遇到问题
【讨论】:
DMS 实例在另一个子网中创建。与该子网关联的路由表已启用路由传播。我已在入站和出站规则中允许该子网的 CIDR。我可以知道我应该为 DMS 实例设置哪个端口吗? 到目前为止,我只尝试过 - telnet x.x.x.x。它说,“无法在端口 23 上打开与主机的连接:连接失败”。 x.x.x.x 是 DMS 实例的私有 IP 我能够从我的 EC2 实例(我能够从本地连接)ping DMS 实例。但我无法从本地连接 DMS 实例 //我应该更新哪个安全组?//我得到了答案。它是与我的复制实例链接的 VPC 安全组 @MAK 你在本地机器上做过 telnet 测试吗?对于 Ping,您需要在附加到 DMS 实例的安全组中允许 ICMP。以上是关于无法通过 Site-to-Site *** 和 DMS 源数据库端点测试连接从本地 ping DMS 复制实例的私有 IP的主要内容,如果未能解决你的问题,请参考以下文章
构建AWS Site-to-Site IPsec实现内网互联