本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
EC2 使用 FSx 适用于 Windows 文件服务器的亚马逊上设置微软 SQL Server 故障转移群集
Sweta Krishna 和 Ramesh Babu Donti,Amazon Web Services
Summary
带失效转移集群实例(FCI)的 Microsoft SQL Server Standard 版可以成为 SQL Server Enterprise 的更具成本效益的替代方案。设置 SQL FCI 需要在节点之间共享文件存储,而 Amazon FSx for Windows File Server
只需要按实际使用情况付费,没有最低费用,也无需预付费。
手动设置 FCI FSx 作为您的共享存储。
FSx 用作您的 SQL 集群的文件共享见证人。
Amazon FSx for Windows File Server 支持服务器消息块 (SMB) 3.0 以实现持续可用的文件共享,因此适合 SQL Server FCI 部署。
先决条件和限制
先决条件
活跃AWS 账户
。 创建和管理亚马逊虚拟私有云 (Amazon VPC) 资源、亚马逊弹性计算云 (Amazon EC2) 实例、安全组和 AWS Identity and Access Management (IAM) 角色的权限。
AWS Managed Microsoft AD 或者你自己的本地活动目录。
具有设置失效转移集群所需权限
的 Active Directory 域用户。 针对 SQL Server FCI 和 Microsoft Active Directory 端口的安全组规则,旨在实现安全的混合连接。
在 Active Directory 中为 SQL Server 配置了具有跨 SQL 节点适当权限的服务账户
。 Amazon FSx for Windows 文件服务器位于故障转移群集中。
SQL Server 安装二进制文件。
限制
有些 AWS 服务 并非全部可用 AWS 区域。有关区域可用性,请参阅按区域划分的AWS 服务
。有关特定端点,请参阅服务端点和配额页面,然后选择相应服务的链接。
产品版本
EC2 适用于 Windows Server 2012 R2 或更高版本的亚马逊
FSx 适用于Windows的亚马逊文件服务器,所有当前的Windows服务器版本
FSx 适用于 NetApp ONTAP 的 Amazon 作为共享存储的替代方案
SQL Server 2012/2016/2019/2022
架构
技术堆栈
Amazon EC2
FSx 适用于 Windows 文件服务器的亚马逊
Amazon VPC
AWS Directory Service
AWS Systems Manager
IAM
目标架构
下图显示了微软 SQL Server FCI 在亚马逊上 EC2 使用适用于 Windows 的文件服务器的亚马逊 SQL Server FCI FSx 的高级架构。

网络基础架构
Amazon VPC 提供了跨三个可用区的网络容器。
私有子网在每个可用区中提供隔离的子网,用于部署资源。
计算层
亚马逊 EC2 包含一个 SQL Server 群集节点 1,作为 Windows 服务器故障转移群集 (WSFC) 的一部分部署在可用区 1 中。
亚马逊 EC2 包含一个 SQL Server 集群节点 2,作为 WSFC 的一部分部署在可用区 2 中。
WSFC 集群连接两个 SQL Server 节点以实现失效转移功能。
适用于 Windows 文件服务器 FSx 的亚马逊存储层
多可用区 FSx 部署(跨可用区 1 和 2)
可用区 1 中的主 FSx 文件系统托管活动的 SQL Server 数据和日志文件。
可用区 2 中的辅助 FSx 文件系统提供自动故障转移功能。
共享的 SMB 文件共享(\\fsx.domain\sqlshare),SQL Server 数据库的两个集群节点都可以访问。
单可用区 FSx 部署(中 AZ3)
可用区 3 中的 Amazon FSx 文件服务器见证人充当集群法定人数见证人。
文件共享见证(
\\fsx.domain\witness)维护集群仲裁并防止出现脑裂的情况。
目录服务
AWS Managed Microsoft AD 提供群集功能所需的 Windows 身份验证和域服务。
高可用性功能
多可用区组件提供跨可用区的容错能力。
FSx 如果主服务器出现故障,备用文件服务器可自动进行故障转移。
文件共享见证在可用区 3 中提供集群仲裁管理,以帮助确保集群在发生故障期间正常运行。
与域集成,可实现无缝 AWS Managed Microsoft AD 的 Windows 身份验证。
工具
AWS 服务
亚马逊弹性计算云 (Amazon EC2) 在中提供可扩展的计算容量 AWS 云。您可以根据需要启动任意数量的虚拟服务器,并快速纵向扩展或缩减这些服务器。
Amazon FSx 提供的文件系统支持行业标准的连接协议,并提供高可用性和跨 AWS 区域复制功能。
Amazon Virtual Private Cloud(亚马逊 VPC)可帮助您将 AWS 资源启动到您定义的虚拟网络中。该虚拟网络类似于您在数据中心中运行的传统网络,并具有使用 AWS的可扩展基础设施的优势。
AWS Directory Service for Microsoft Active Directory允许你的目录感知工作负载和 AWS 资源使用中的 Microsoft Active Directory。 AWS 云
AWS Identity and Access Management (IAM) 通过控制谁经过身份验证并有权使用 AWS 资源,从而帮助您安全地管理对资源的访问权限。
AWS Systems Manager 可帮助您管理在 AWS 云端运行的应用程序和基础设施。它简化了应用程序和资源管理,缩短了检测和解决操作问题的时间,并帮助您大规模安全地管理 AWS 资源。
最佳实践
将数据库实例放在私有子网中,以保护它们不被从 Internet 公开访问,同时仍允许它们连接到 AWS 服务 并执行更新。
有关一般最佳实践,请参阅在亚马逊上部署 Microsoft SQL Server 的最佳实践 EC2。
PowerShell 要使用管理您的 Amazon FSx for Windows 文件服务器, FSx 请参阅管理 Windows 文件系统。
操作说明
| Task | 说明 | 所需技能 |
|---|---|---|
添加名称和标签。 |
| 数据库管理员 |
选择 Windows AMI。 | 选择适用于 Windows 且符合您的 SQL Server 要求的亚马逊机器映像(AMI)。 | 数据库管理员 |
选择一个实例类型。 | 选择符合您要求的 Amazon EC2 实例类型。 | 数据库管理员 |
使用密钥对。 | 您可以使用密钥对安全地连接到实例。在启动实例之前,请确保您可以访问所选的密钥对。 | 数据库管理员 |
配置网络设置。 |
| 数据库管理员 |
配置高级网络设置。 |
| 数据库管理员 |
配置存储。 | 配置所需的总存储空间并选择所需的存储类型。 | 数据库管理员 |
配置高级详细信息并启动实例。 |
| 数据库管理员 |
创建节点 2。 | 重复这些步骤以创建和配置节点 2。 | 数据库管理员 |
| Task | 说明 | 所需技能 |
|---|---|---|
登录到节点 1。 | 以管理员身份登录 Windows Amazon EC2 实例。 | 数据库管理员 |
在节点 1 上安装 FCI 功能。 |
| 数据库管理员 |
登录到节点 2。 | 以管理员身份登录 Windows Amazon EC2 实例。 | 数据库管理员 |
在节点 2 上安装 FCI 功能。 |
| 数据库管理员 |
向集群添加节点。 |
| 数据库管理员 |
让集群上线。 | 要让集群上线,请更新两个节点的静态 IP 地址:
| 数据库管理员 |
验证集群。 | 导航到失效转移集群管理器并验证集群核心资源是否处于在线状态。 | 数据库管理员 |
| Task | 说明 | 所需技能 |
|---|---|---|
登录至服务器。 | 以管理员身份登录 Amazon EC2 实例。 | 数据库管理员 |
装载 SQL 二进制文件。 |
| |
将节点 2 添加到失效转移集群。 |
| 数据库管理员 |
| Task | 说明 | 所需技能 |
|---|---|---|
配置仲裁设置。 |
| 数据库管理员 |
检索 DNS 详细信息。 | 在 Amazon FSx 控制台中,选择托管 AD,然后选择 “附加”。DNS 应采用以下格式: | 数据库管理员 |
配置文件共享见证。 | 选择 Amazon FSx 文件共享路径,然后选择 “完成”。 | 数据库管理员 |
相关的资源
AWS resources
其他资源
附加信息
配置文件共享见证
通过在 Amazon FSx 安全组中添加允许入站连接的规则,确保您已从两个节点连接到文件系统。应允许 SMB 端口。在本示例中,如果 DNS 名称为 \\example.example.com\share,则使用 \\example.example.com\share。在 Always On 可用性集群中对文件共享见证使用相同的值。按照以下步骤配置文件共享见证:
使用 RDP 连接到您的 Amazon EC2 实例。
导航到失效转移集群管理器。
打开上下文(右键单击)菜单,然后选择更多操作。
选择配置集群仲裁设置。
选择下一步。
选择仲裁配置并配置文件共享见证。
提供 DNS 名称。
查看摘要,然后选择完成。文件共享见证应在集群核心资源部分显示为联机状态。