本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用迁移微软 SQL Server Always On 可用性组 AWS Application Migration Service
Sreenivas Nettem、Bharath Kumar Pammi Ramesh、Anantharaman Seshadri 和 Gireesh Sreekantan,Amazon Web Services
摘要
AWS Application Migration Service (AWS MGN) 是重新托管中现有环境的首选工具 AWS 云,它允许客户离开本地数据中心。此模式概述了使用 AWS MGN 迁移带有 Microsoft SQL Server Always On 可用性组的 Windows 群集的过程。
先决条件和限制
先决条件
活跃 AWS 账户的.
用于 AWS MGN 编排的 AWS Identity and Access Management (IAM) 角色。
对源数据库服务器的访问权限(SQL Server Always On 可用性组)。
AWS 着陆区中的 Active Directory 用于保留 DNS 名称。
与 Active Directory 进行封闭网络通信的暂存子网。
目标可以与活动目录通信的子网。
目标子网中 Windows 群集的两个预留 IP 地址(每个可用区一个)。
目标子网中 SQL Always On 侦听器的两个预留 IP 地址(每个可用区一个)。
产品版本
Windows 服务器 2012 或更高版本
SQL Server 2012 或更新
架构
源技术堆栈
微软 Windows 群集(本地物理机或虚拟机)微软 SQL Server Always On 可用性组
目标技术堆栈
亚马逊 EC2 Windows 实例
目标架构

工具
AWS 服务
亚马逊弹性计算云 (Amazon EC2) 在中提供可扩展的计算容量 AWS 云。您可以根据需要启动任意数量的虚拟服务器,并快速扩展或缩减它们。
AWS Application Migration Service帮助您将应用程序重新托管(移动)到, AWS 云 无需更改且停机时间最短。
AWS Identity and Access Management (IAM) 通过控制谁经过身份验证并有权使用 AWS 资源,从而帮助您安全地管理对资源的访问权限。
其他工具
Microsoft SQL Server Management Studio (SSMS)
是一款用于管理 SQL Server 的工具,包括访问、配置和管理 SQL Server 组件。
最佳实践
有关 AWS MGN 的信息,请参阅最佳实践。 AWS Application Migration Service
操作说明
Task | 描述 | 所需技能 |
---|---|---|
初始化 AWS MGN。 | 在目标 AWS 区域中初始化 AWS MGN。这将创建所需的 IAM 角色和策略。有关更多信息,请参阅使用控制台初始化应用程序迁移服务。 | 云管理员 |
创建复制和启动模板。 | 配置与 AWS MGN 一起使用的复制和启动模板。有关更多信息,请参阅 AWS 文档中的配置模板。 | 云管理员 |
允许通信端口。 | 要启用 AWS MGN 的网络通信,请允许通过 TCP 端口 443 和 1500 进行流量。有关更多信息,请参阅 AWS 文档中的应用程序迁移服务的网络要求。 | 云管理员、网络管理员 |
Task | 描述 | 所需技能 |
---|---|---|
验证 AWS MGN 先决条件。 | 验证源服务器是否满足 AWS MGN 代理安装的先决条件。有关更多信息,请参阅 AWS 文档中的安装要求。 | 迁移工程师 |
安装 AWS MGN 代理。 | 在源服务器上安装 AWS MGN 代理。在安装过程中,选择服务器的迁移 AWS 区域 位置。安装后,代理与服务通信并开始复制。有关更多信息,请参阅在 Windows 服务器上安装 AWS 复制代理。 | 迁移工程师 |
检查源服务器状态。 | 在 AWS MGN 控制台中,检查源服务器的状态。复制开始时,服务器会显示 “准备好进行测试”。 如果您遇到任何错误,请参阅 AWS MGN 文档中的通信错误疑难解答。 | 云管理员、迁移工程师 |
优化复制设置。 | SQL Always On 群集使用从主服务器到辅助服务器的高 I/O 同步复制。要优化复制并避免延迟,请为每个 SQL Always On 服务器使用专用的复制服务器。 如果数据库大于 5 TB,请考虑选择更大的复制服务器实例大小,例如 m5.large,而不是默认的 t3.sm all。 | 云管理员、迁移工程师 |
更新启动模板。 | 更新启动设置并为 SQL Always On 服务器选择子网。 AWS 可用区 为了实现高可用性,SQL Always On 群集服务器分布在不同的服务器上。 | 迁移工程师,迁移主管 |
更新启动设置。 | 根据您的大小和性能要求,在启动设置中更新实例类型和每秒 input/output 操作数 (IOPS)。 (可选)在启动设置中选择现有的 elastic network 接口。 | 迁移工程师,迁移主管 |
Task | 描述 | 所需技能 |
---|---|---|
验证源服务器。 | 在 AWS MGN 控制台中,验证源服务器状态是否为 “准备测试”。 | 云管理员、迁移工程师 |
启动测试实例。 |
| 云管理员、迁移工程师 |
测试连接和数据库完整性。 | 测试测试实例的连接性和数据库完整性。然后在 M AWS GN 控制台中将源服务器标记为准备切换。 | 云管理员、迁移工程师 |
Task | 描述 | 所需技能 |
---|---|---|
测试数据库完整性。 | 这有助于确保在迁移之前源头没有数据库完整性问题。运行 这些命令通过检测潜在的损坏问题来检查数据库的逻辑和物理完整性。该检查验证数据库的结构,例如页面、行、索引和系统表。 | 数据工程师、数据库管理员 |
测试与链接服务器的连接。 | 测试所有现有服务器之间的连接,并记录其状态。这有助于确保链接服务器在迁移后按预期运行。 | 数据工程师、数据库管理员 |
验证备份。 | 确认源备份的完整性。 | 数据工程师、数据库管理员 |
Task | 描述 | 所需技能 |
---|---|---|
停止 SQL 服务器和群集服务。 | 停止所有 SQL 群集节点上的 SQL Server 和 Microsoft 群集服务。 | 数据库管理员,迁移工程师 |
验证服务器。 | 在 AWS MGN 控制台中,验证源服务器的状态是否为 “准备切换”,以及数据复制状态是否为 “正常”。 | 迁移工程师 |
启动切换。 |
有关更多信息,请参阅 AWS MG N 文档中的启动直接转换实例。 | 迁移工程师 |
测试已启动的服务器。 | 登录已启动的 Amazon EC2 实例并验证集群的运行状况。确认服务器位于正确的子网中,实例大小和 IOPS 设置是否正确,以及见证服务器是否可以访问。 | 数据库管理员,迁移工程师 |
Task | 描述 | 所需技能 |
---|---|---|
更新集群 IP 地址。 | 使用目标子网中的两个保留 IP 地址更新 Windows 群集的群集 IP 地址。有关更多信息,请参阅更改故障转移群集实例的 IP 地址 | 数据库管理员,迁移工程师 |
更新 Always On 可用性组侦听器 IPs。 |
| 数据库管理员,迁移工程师 |
验证连接。 | 使用 SSMS 连接到 Always On 可用性组侦听器,并确认连接成功。 | 数据库管理员,迁移工程师 |
检查 Always On 可用性组的运行状况。 |
| 数据库管理员,迁移工程师 |
检查错误日志。 | 打开错误日志,并验证 SQL Server 实例报告的所有错误。确保所有数据库的恢复都已完成。 | 数据库管理员,迁移工程师 |
测试链接的服务器。 | 测试所有链接服务器的连接。如果出现任何连接问题,请确保目标服务器和端口可以访问。 | 数据库管理员,迁移工程师 |
Task | 描述 | 所需技能 |
---|---|---|
完成割接。 | 验证目标 SQL Always On 集群后,通过 AWS MGN 控制台完成切换。这将停止从源服务器复制数据并丢弃复制服务器中的数据。它还会移除复制服务器及其相关资源。 | 云管理员、迁移工程师 |
故障排除
相关资源
AWS resources
SQL 服务器资源
其他信息
有关将工作负载迁移到的标准安全要求 AWS 云,请参阅 AWS 网站上的安全、身份和合规性最佳实践