添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

如何在 AWS Cloud 中创建 SQL Server Always On 可用性组集群?

4 分钟阅读
0

我想在 AWS Cloud 中创建一个 SQL Server Always On 可用性组集群。我该如何操作?

简短描述

要在 AWS Cloud 中创建 SQL Server Always On 可用性组集群,首先,为每个集群节点弹性网络接口配置两个辅助 IP。然后,使用远程桌面协议(RDP)作为域管理员账户连接到集群节点实例。最后,创建一个双节点 Windows 集群和 SQL Server Always On 可用性组。

您还可以使用 AWS Launch Wizard 创建 SQL Server Always On 可用性组部署。Launch Wizard 会根据您的使用案例确定 AWES 资源,进而自动预置 SQL Server 数据库。有关更多信息,请参阅 什么是 AWS Launch Wizard for SQL Server?

  • 跨虚拟私有云(VPC)内的多个可用区启动两个 Amazon Elastic Compute Cloud(Amazon EC2)Windows Server 实例(2012 R2 或更高版本)。
  • 使用 SQL Server 2014 64 位企业版或更高版本。对于测试,请使用 SQL Server 2014 64 位评估版或更高版本。
  • 配置辅助 Amazon Elastic Block Store (Amazon EBS) 卷来托管 SQL Server Master 数据文件、日志数据文件和 SQL 备份文件。最佳实践是为大型 SQL Server 数据库工作负载选择 预配置 IOPS SSD (io1) EBS 卷。
  • 在私有子网中部署集群节点。然后,您可以使用 RDP 从跳转服务器连接到集群节点实例。
  • 配置安全组入站规则和 Windows 防火墙例外设置,以允许节点在限制性环境中进行通信。请参阅 Microsoft 网站上的 Configure the Windows Firewall to allow SQL Server access (配置 Windows 防火墙以允许 SQL Server 访问)。
  • Active Directory(AD)域控制器必须为 SQL 节点开启所有必要端口,并见证加入域和对 Active Directory 进行身份验证。请参阅 Microsoft 网站上的 Active Directory and Active Directory Domain Services Port Requirements (Active Directory 和 Active Directory 域服务端口要求)。
  • 在创建 Windows 失效转移集群前,将节点加入域。在创建和配置集群之前验证您已使用域凭证登录。
  • 使用 Active Directory 服务账户运行 SQL 数据库实例。
  • 使用 Windows 域身份验证创建具有 sysadmin 权限的 SQL 登录。有关更多信息,请咨询您的数据库管理员。有关更多详细信息,请参阅 Microsoft 网站上的 使用 SSMS 创建登录
  • 验证 SQL 浏览器的配置是否正确。仅 SQL Server 命名实例必须执行此操作。
  • 为每个集群节点弹性网络接口配置辅助 IP

    每个集群节点 eth0 的弹性网络接口都需要一个辅助 IP。如果需要 SQL 组侦听器,则需要添加第三个 IP 地址。这会导致总共有 3 个 IP 附加到 eth0 弹性网络接口。

    注意 :如果您不打算部署 SQL 组侦听器,只需为每个集群节点弹性网络接口添加一个辅助 IP。

    1.    打开 Amazon EC2 控制台 ,然后选择将托管您的 Always On 集群的 AWS 区域。

    2.    从导航窗格中,选择 实例 ,然后选择 EC2 集群实例。

    3.    选择 联网 选项卡。

    4.    在 网络接口 下,选择 接口 ID 弹性网络接口。

    5.    选择网络接口,然后依次选择 操作 管理 IP 地址

    6.    选择网络接口 ID 旁边的 箭头 以展开窗口,然后选择 分配新 IP 地址 。您可以选择特定 IP,或将该字段保留为“自动分配”。重复此步骤以添加第二个新 IP。

    7.    依次选择 保存 确认

    8.    对于将参与集群的其他 EC2 实例,重复步骤 1-7。

    创建双节点 Windows 集群

    1.    使用 RDP 及一个域账户(对两个节点均有本地管理员权限) 连接到 EC2 实例

    2.    在 Windows 开始 菜单中,打开 控制面板 ,然后选择 网络和共享中心

    3.    从导航窗格中选择 更改适配器设置

    4.    选择网络连接,然后选择 更改此连接的设置

    5.    选择 Internet 协议版本 4 (TCP/IPv4) ,然后选择 属性

    6.    选择 高级

    7.    在 DNS 选项卡中,选择 附加主要和特定于连接的 DNS 后缀

    8.    选择 确定 ,选择 确定 ,然后选择 关闭

    9.    对于将参与集群的其他 EC2 实例,重复步骤 1-8。

    10.    在每个实例上,从服务器管理器安装节点上的集群功能 ,或运行以下 PowerShell 命令:

    Install-WindowsFeature –Name Failover-Clustering –IncludeManagementTools

    11.    以管理员身份打开 cmd ,然后输入 Clussvc.exe 以打开集群管理器。

    12.    打开 故障转移集群管理器 的上下文(右键单击)菜单,然后选择 创建集群

    13.    选择 下一步 ,然后选择 浏览

    14.    对于 输入对象名称以选择 ,输入集群节点主机名,然后选择 确定

    15.    选择 下一步 。现在,您可以选择是否要验证集群。运行集群验证是最佳做法。如果集群未通过验证,Microsoft 可能无法为您的 SQL 集群提供技术支持。选择 ,然后选择 下一步

    16.    对于 集群名称 ,输入一个名称,然后选择 下一步

    17.    清除 将所有符合条件的存储添加到集群 ,然后选择 下一步

    18.    集群创建完成后,选择 完成

    注意 : 集群日志和报告位于以下路径: %systemroot%\cluster\reports

    19.    在集群管理器的 集群核心资源 部分中,展开新集群的条目。

    20.    打开第一个 IP 地址条目的上下文(右键单击)菜单,然后选择 属性 。对于 IP 地址 ,选择 静态 IP 地址 ,然后输入一个与 eth0 弹性网络接口相关联的辅助 IP。选择 确定 。对于辅助 IP 地址条目,重复此步骤。

    21.    打开集群名称的上下文(右键单击)菜单,然后选择 Bring Online (在线使用)。

    注意 :最佳实践是也配置一个文件共享见证(FSW)来充当连接中断器。您还可以将 Amazon FSx for Windows File Server 与 Microsoft SQL Server 结合使用。有关 FSW 的信息,请参阅 Microsoft 网站上的 Failover Cluster Step-by-Step Guide: Configuring the Quorum in a Failover Cluster (失效转移集群分步指南:在失效转移集群中配置仲裁)。

    创建 Always On 可用性组

    1.    打开 SQL Server 配置管理器。

    2.    打开 SQL 实例的上下文(右键单击)菜单,然后选择 属性

    3.    在 AlwaysOn 高可用性 选项卡上,选择 启用 AlwaysOn 可用性组 ,然后选择 应用

    4.    打开 SQL 实例的上下文(右键单击)菜单,然后选择 重启

    5.    对于集群的其他集群节点部分,重复步骤 1-4。

    6.    打开 Microsoft SQL Server Management Studio (SSMS)。

    7.    使用具有 SQL 实例访问权限的 Windows 验证用户名,登录其中一个 SQL 实例。

    **注意:**最佳实践是跨多个 SQL 实例使用相同的 MDF 和 LDF 目录文件路径。

    8.    创建测试数据库。打开 Databases (数据库)的上下文(右键单击)菜单,然后选择 New Database (新建数据库)。

    注意 :请务必使用 Options (选项)页面上的 Full (完全)恢复模式。有关更多信息,请参阅 Microsoft 网站上的 Recovery Models (SQL Server) (恢复模式(SQL Server))。

    9.    对于 数据库名称 ,输入一个名称,然后选择 确定

    10.    打开新数据库名称的上下文(右键单击)菜单,选择 Tasks (任务),然后选择 Back Up (备份)。对于 备份类型 ,选择 完整

    11.    选择 确定 ,然后选择 确定

    12.    打开 Always On 高可用性 的上下文(右键单击)菜单,然后选择 新可用性组向导

    13.    选择 下一步

    14.    对于 可用性组名称 ,输入一个名称,然后选择 下一步

    15.    选择数据库,然后选择 下一步

    16.    主副本已存在于“可用性副本”窗口中。选择 添加副本 创建一个辅助副本。

    17.    对于 服务器名称 ,输入辅助副本名称,然后选择 连接

    18.    对于 Availability Mode (可用性模式),确定想要的可用性模式,然后为每个副本选择 Synchronous commit (同步提交)或 Asynchronous commit (异步提交)。有关更多信息,请参阅 Microsoft 网站上的 Differences between availability modes for an Always On availability group (Always On 可用性组的可用性模式之间的差异)。

    19.    选择 下一步

    20.    选择数据同步首选项,然后选择 Next (下一步)。有关更多信息,请参阅 Microsoft 网站上的 Select Initial Data Synchronization Page (Always On Availability Group Wizards) (选择初始数据同步页面(Always On 可用性组向导))。

    21.    验证成功后,选择 下一步

    注意 : 您可以放心地忽略 检查侦听器配置 ,因为您将稍后添加它。

    22.    选择 Finish (完成),然后选择 Close (关闭)。

    添加 SQL 组侦听器

    1.    打开 SSMS,然后展开 Always On 高可用性 可用性组 [主副本名称]

    2.    打开 可用性组侦听器 的上下文(右键单击)菜单,然后选择 添加侦听器

    对于 侦听器 DNS 名称 ,输入一个名称。

    对于 端口 ,输入 1433

    对于 网络模式 ,选择 静态 IP

    3.    选择 Add (添加)。

    对于 IPv4 Address (IPv4 地址),输入其中一个集群节点实例的第三个 IP 地址,然后选择 Ok (确定)。使用其他集群节点实例的第三个 IP 地址,重复此步骤。

    4.    选择 Ok (确定)。

    **注意:**添加 SQL 组侦听器时收到的错误表示缺少权限。有关故障排除步骤,请参阅 Microsoft 网站上的以下资源:

  • KB2829783 - Troubleshooting AlwaysOn availability group listener creation in SQL Server 2012 (KB2829783:对在 SQL Server 2012 中创建 AlwaysOn 可用性组侦听器进行故障排除)
  • Create Availability Group Listener Fails with Message 19471, 'The WSFC cluster could not bring the Network Name resource online' (创建可用性组侦听器失败并显示消息 19471“WSFC 集群无法使网络名称资源处于联机状态”)
  • 测试失效转移

    1.    使用 SSMS,打开导航菜单上的主副本上下文(右键单击)菜单,然后选择 故障转移

    2.    选择 下一步 ,然后选择 下一步

    3.    选择 连接 ,然后选择 连接

    4.    选择 下一步 ,然后选择 完成 。故障转移后,主副本将变为辅助副本。