使用迁移微软 SQL Server Always On 可用性组 AWS Application Migration Service - AWS 规范指引

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用迁移微软 SQL Server Always On 可用性组 AWS Application Migration Service

Sreenivas Nettem、Bharath Kumar Pammi Ramesh、Anantharaman Seshadri 和 Gireesh Sreekantan,Amazon Web Services

Summary

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 进行封闭网络通信的暂存子网。

  • 可与 Active Directory 通信的目标子网。

  • 在目标子网中为 Windows 集群保留两个 IP 地址(每个可用区一个)。

  • 在目标子网中为 SQL Always On 侦听器保留两个 IP 地址(每个可用区一个)。

产品版本

  • Windows 服务器 2012 或更高版本

  • SQL Server 2012 或更新

架构

源技术堆栈

Microsoft Windows 集群(本地物理机或虚拟机)Microsoft SQL Server Always On 可用性组

目标技术堆栈

亚马逊 EC2 Windows 实例

目标架构

使用 AWS MGN 迁移 SQL Server Always On 可用性的 AWS 架构。

工具

AWS 服务

其他工具

最佳实践

有关 AWS MGN 的信息,请参阅最佳实践。 AWS Application Migration Service

操作说明

Task说明所需技能

初始化 AWS MGN。

在目标 AWS 区域中初始化 AWS MGN。这将创建所需的 IAM 角色和策略。有关更多信息,请参阅使用控制台初始化 Application Migration Service

云管理员

创建复制和启动模板。

配置与 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.small

云管理员、迁移工程师

创建启动模板。

更新启动设置,并为 SQL Always On 服务器选择子网。 AWS 可用区 为了实现高可用性,SQL Always On 群集服务器分布在不同的服务器上。

迁移工程师、迁移主管

更新启动设置。

根据您的大小和性能要求,在启动设置中更新实例类型和每秒 input/output 操作数 (IOPS)。

(可选)在启动设置中选择现有的弹性网络接口。

迁移工程师、迁移主管
Task说明所需技能

验证源服务器。

在 AWS MGN 控制台中,验证源服务器状态是否为 “准备测试”。

云管理员、迁移工程师

启动测试实例。

  1. 启动测试实例,然后在 Amazon EC2 控制台中验证自动检查是否通过。

  2. 为见证服务器选择并启动测试实例。

  3. 确认您可以通过 AWS MGN 控制台登录服务器。

  4. 选择 SQL Always On 集群服务器,并同时启动测试实例。

云管理员、迁移工程师

测试连通性和数据库完整性。

对测试实例的连通性和数据库完整性进行测试。然后在 M AWS GN 控制台中将源服务器标记为 “准备好切换”。

云管理员、迁移工程师
Task说明所需技能

测试数据库的完整性。

这有助于确保在迁移之前,源数据库没有完整性问题。运行 DBCC CHECKDB 并指定 WITH_PHYSICAL_ONLY。在不使用 WITH_PHYSICAL_ONLY 的情况下运行此检查,可能导致源端出现性能问题。为维护数据库完整性,请每周对数据库进行一次全面检查。

这些命令通过检测潜在的损坏问题来检查数据库的逻辑和物理完整性。检查时会验证数据库的结构,例如页面、行、索引和系统表。

数据工程师、数据库管理员

测试与链接服务器的连接。

测试所有现有服务器之间的连接,并记录其状态。这有助于确保链接服务器在迁移后仍按预期运行。

数据工程师、数据库管理员

验证备份。

确认源备份的完整性。

数据工程师、数据库管理员
Task说明所需技能

停止 SQL 服务器和集群服务。

停止所有 SQL 集群节点上的 SQL Server 和 Microsoft 集群服务。

数据库管理员、迁移工程师

验证服务器。

在 AWS MGN 控制台中,验证源服务器的状态是否为 “准备切换”,以及数据复制状态是否为 “正常”。

迁移工程师

启动割接。

  1. 启动见证服务器的 AWS MGN 切换。

  2. 启动 SQL Always On 集群实例的 AWS MGN 切换。

  3. 验证状态是否更改为正在割接

有关更多信息,请参阅 AWS MG N 文档中的启动直接转换实例

迁移工程师

测试启动的服务器。

登录已启动的 Amazon EC2 实例并验证集群的运行状况。确认服务器位于正确的子网中、实例大小和 IOPS 设置正确,且见证服务器可供访问。

数据库管理员、迁移工程师
Task说明所需技能

更新集群 IP 地址。

使用目标子网中保留的两个 IP 地址更新 Windows 集群的集群 IP 地址。有关更多信息,请参阅更改失效转移集群实例的 IP 地址

数据库管理员、迁移工程师

更新 Always On 可用性组侦听器 IPs。

  1. 打开失效转移集群管理器。

  2. 选择 Always On 可用性组角色。

  3. 展开可用性组侦听器名称。

  4. 在上下文(右键单击)菜单中,选择 IP 地址属性

  5. 使用目标子网中为侦听器保留的地址更新 IP 地址。

  6. 使用 SSMS 连接到 SQL Server 主实例,并验证 Always On 侦听器是否同时使用两个子网 IPs。

数据库管理员、迁移工程师

验证连接。

使用 SSMS 连接到 Always On 可用性组侦听器,并确认连接成功。

数据库管理员、迁移工程师

检查 Always On 可用性组的运行状况。

  1. 导航至可用性组文件夹,打开上下文(右键单击)菜单,然后选择显示控制面板

  2. 对于所有副本,验证同步状态是否为已同步

数据库管理员、迁移工程师

检查错误日志。

打开错误日志,并验证所报告的有关 SQL Server 实例的所有错误。确保所有数据库的恢复工作都已完成。

数据库管理员、迁移工程师

测试链接的服务器。

测试与链接服务器的连接。如果出现任何连接问题,请确保可以访问目标服务器和端口。

数据库管理员、迁移工程师
Task说明所需技能

完成割接。

验证目标 SQL Always On 集群后,通过 AWS MGN 控制台完成切换。这将停止从源服务器复制数据,并丢弃复制服务器中的数据。还会移除复制服务器及其关联资源。

云管理员、迁移工程师

问题排查

问题解决方案

AWS MGN 疑难解答

有关常见问题和解决方案,请参阅 AWS MGN 文档中的故障排除常见问题解答部分。

相关资源

AWS resources

SQL Server 资源

附加信息

有关将工作负载迁移到的标准安全要求 AWS 云,请参阅 AWS 网站上的安全、身份和合规性最佳实践