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

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

使用迁移微软 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 MGN 迁移 SQL Server Always On 可用性的 AWS 架构。

工具

AWS 服务

其他工具

最佳实践

有关 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 控制台中,验证源服务器状态是否为 “准备测试”。

云管理员、迁移工程师

启动测试实例。

  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 服务器资源

其他信息

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