注意:
- 本教程需要访问 Oracle Cloud。要注册免费账户,请参阅开始使用 Oracle Cloud Infrastructure 免费套餐。
- 它对 Oracle Cloud Infrastructure 身份证明、租户和区间使用示例值。完成实验室后,请使用特定于云环境的那些值替换这些值。
在 Oracle Cloud Infrastructure 上部署用于 HA 和 DR 的 Microsoft SQL Server Windows Server 故障转移集群
简介
Microsoft SQL Server (MSSQL) 企业级数据库基础设施严重依赖高可用性 (HA) 和灾难恢复 (DR) 功能来保持业务连续性并尽可能缩短停机时间。MSSQL 提供多种集群部署模型来帮助实现这些目标。这些模型包括“始终可用”组和“故障转移”群集实例。
虽然每个模型都有自己的优势和用例,但本教程将专门重点介绍使用小型计算机系统接口 (SCSI) 持久性保留 (PR) 功能部署和配置使用 OCI 块存储卷服务的 MSSQL 故障转移集群实例。有关 Always On 可用性组的更多信息,请参见 Deploy Microsoft SQL Server Always On Availability Groups for HA and DR on OCI 。
体系结构
本教程使用以下体系结构:
-
单区域:部署包含单个 Oracle Cloud Infrastructure (OCI) 区域。部署可以扩展到其他 OCI 区域,但此类配置不在本教程的范围内。
-
子网:除 OCI 堡垒虚拟机 (VM) 之外,所有资源都放置在专用区域子网中。
-
OCI 块存储卷:
- 法定磁盘:启用了 SCSI PR 的共享块存储卷。此块存储卷将用作群集法定磁盘。
- 数据磁盘:第二个启用了 SCSI PR 的共享块存储卷。这将用于存储应用程序数据。
-
SQL Server IP:每个 SQL Server VM 需要主虚拟网络接口卡 (Virtual Network Interface Card,VNIC) 上的以下 IP。
- 主 IP:操作系统 (Operating System,OS) 访问(在 VM 预配时自动创建)。
- 辅助 IP 1: Windows Server 故障转移群集 IP。要在本教程中创建。
- 辅助 IP 2: SQL Server 故障转移群集 IP。要在本教程中创建。
目标
- 部署和配置故障转移集群实例。
先决条件
-
网络:
- 1 * VCN。
- 1 * 专用子网。
- 2 * 要为故障转移 IP 分配的静态辅助 IP。
-
服务器:
- 1 * 公共子网中的堡垒 VM,以确保您可以连接到在专用子网上运行的 VM。
- 1 * 专用子网中的域控制器 VM。
- 2 * 同一专用子网中的 SQL Server VM (
sqlnode1
,sqlnode2
)。
-
Active Directory 域先决条件:
- 域控制器功能和角色已添加到域控制器 VM。
- 由 OS 管理员配置的域。本教程中的域控制器具有根域名
example.org
。可以为域配置您选择的根域名。 - 有关在 OCI 中创建 Active Directory 域服务,请参阅 OCI 白皮书。
- 已将 SQL Server VM 添加到域。
-
其他注意事项:
- 存储: WSFC 使用
169.254.*
地址空间中的 IP 进行内部通信,该 IP 与 OCI 地址空间重叠以公开 iSCSI 块设备。这需要创建静态 IP 路由以在每个 SQL Server 节点 VM 中公开 iSCSI 目标门户。此类配置超出了本教程的范围。有关更多信息,请参见 Failover Clustering Networking Basics and Fundamentals 。 - Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) 策略:本教程假定您配置了 OCI IAM 策略,以便为您提供创建和管理 VCN、专用 IP、公共 IP、OCI 块存储卷和启动实例所需的权限。
- 存储: WSFC 使用
任务 1:配置故障转移 IP
Windows Server 故障转移群集采用主动/被动群集模型,其中将专用 IP 地址(称为故障转移 IP 或浮动 IP)分配给群集。此故障转移 IP 会自动从发生故障的节点移至活动节点,从而确保持续的网络连接并尽可能减少停机时间。当节点发生故障时,故障转移 IP 会无缝传输到新的活动节点,从而允许客户机在不中断的情况下维护对群集资源的访问。
有关在两个 Microsoft SQL Server VM 上配置故障转移 IP 的更多信息,请参见 Automating Secondary IP address Failover on Windows Server 。
任务 2:创建 SQL Server 服务帐户
SQL Server 需要使用专用域帐户。在本任务中,我们将创建此账户。在教程的后面部分中,我们使用此帐户在每个节点上配置 SQL Server 服务。
-
使用域管理员帐户登录到域控制器,然后导航到 Active Directory Users and Computers 。
-
展开您为此教程配置的域。
-
右键单击 Users(用户),然后单击 New User(新建用户)以创建新用户。
-
输入必需的信息,然后单击 Next(下一步)。
-
输入此域帐户的口令,然后单击下一步。
-
复查详细信息,然后单击完成。
任务 3:创建法定磁盘和共享磁盘
我们在 WSFC 中使用专用共享磁盘进行法定用途,以防止在群集中的多个节点尝试同时进行控制时可能出现的记忆分裂情况。此专用磁盘可确保群集中的所有节点都具有群集状态的统一视图,从而防止冲突。
在此任务中,我们将创建两个启用了 SCSI PR 的不同共享块存储卷。在两个卷上启用 PR 作为保留共享资源的机制,确保只有授权节点才能访问这些资源。SCSI PR 是群集环境中的一项要求,因为它通过管理对共享磁盘的访问来防止数据损坏。
-
法定磁盘:我们将第一个共享块存储卷指定为群集法定设备。此磁盘通过提供所有节点都可以访问并同意的公用资源,在 WSFC 的运行中发挥着关键作用。此法定磁盘仅用于群集操作目的,因为它有助于我们确定群集的状态,并就故障转移和假定群集资源所有权做出决策。
-
数据磁盘:为应用程序分配第二个共享块存储卷来存储数据。我们使用此磁盘来托管应用程序数据,例如数据库、文件共享或群集应用程序所需的任何其他类型的数据。通过使用共享磁盘进行数据存储,我们确保了数据的高可用性,因为它可以由集群中承担应用程序或服务所有权的任何节点访问。
通过创建这两个具有不同角色的单独共享块存储卷并在两者上启用 SCSI PR,我们可以确保我们的 WSFC 正确配置以保持高可用性和冗余,既可以满足关键法定功能,也可以满足集群中运行的应用程序的数据存储需求。
要创建启用了 SCSI PR 的 OCI 块存储卷,请按照以下步骤操作:
-
登录到 OCI 控制台,导航到存储、“块存储卷”页面,然后单击创建块存储卷。
-
调整 Volume size and performance(卷大小和性能),然后选择 Enable Persistent reservation for iSCSI volume attachments(为 iSCSI 卷附加启用持久保留),为卷启用 SCSI PR。
-
将卷逐个附加到 SQL Server VM。由于这些卷启用了 SCSI PR,因此只能以共享读写/只读模式连接这些卷。对于此设置,我们将以共享读写模式附加卷。选择 Use Oracle Cloud Agent to automatically connect to iSCSI-attached volume ,然后单击 Attach 。
-
重复步骤 1 到步骤 3 以创建和连接法定磁盘和数据磁盘。
任务 4:配置 Windows Server 故障转移群集
在本任务中,我们将:
-
将 WSFC 角色添加到 SQL Server VM。
-
使用在任务 1 中创建的辅助 IP 创建和配置群集。
任务 4.1:将 WSFC 角色添加到 Windows Server VM
-
使用域管理员帐户登录到 SQL Server 节点 1 VM,打开 Server Manager(服务器管理器),然后在 Dashboard(显示板)下单击 Add Roles and features(添加角色和功能)。
-
查看开始之前部分,然后单击下一步。
-
选择 Role-based or feature-based installation(基于角色的安装),然后单击 Next(下一步)。
-
在 Select destination server 中,选择 server from the server pool 并验证是否选择了
sqlnode1.example.org
,然后单击 Next 继续操作。 -
我们不会添加任何服务器角色,因此单击下一步继续。
-
在功能中,选择故障转移群集。执行此操作时,将出现一个窗口,然后单击添加功能。
-
在 Confirm installation selection(确认安装选择)中,查看详细信息,然后单击 Install(安装)以确认安装,并在安装完成时关闭向导。
-
重复步骤 1 到 7,在第二个 SQL Server 节点上安装故障转移群集工具。
任务 4.2:创建集群
-
使用域管理员帐户登录到 Windows Server 节点 1 VM,然后打开 Failover Cluster Manager 。您将发现没有正在运行的集群。
-
右键单击 Failover Cluster Manager(故障转移集群管理器)并选择 Create Cluster...(创建集群 ...),这将打开 Create Cluster Wizard(创建集群向导)。
-
创建集群向导打开后,单击下一步继续。
-
单击浏览并选择
sqlnode1.example.org
和sqlnode2.example.org
。 -
选择是,单击“下一步”时,运行配置测试,然后返回到创建群集的过程,然后单击下一步。
-
选择运行所有测试,然后单击下一步。
-
在确认窗口中,单击下一步并等待所有测试完成,然后单击完成。OCI 现在支持 SCSI PR,您可以看到通过测试验证 SCSI-3 持久性预留。
-
输入 Cluster Name 并考虑 NetBIOS 约束条件。单击下一步。
-
在创建之前确认群集,然后单击 Next 。
-
成功创建群集后,单击完成。
-
打开 Failover Cluster Manager(故障转移群集管理器),您将能够看到新创建的群集。
-
请注意, Cluster Core Resources 部分中的群集状态为 Offline 。展开资源并查找尚未配置的群集 IP 地址。右键单击状态为 Failed 的 IP 地址,然后单击 Properties 。
-
在 General(常规)选项卡中,指定在任务 1 中为此节点配置的 Static IP Address(静态 IP 地址),然后单击 Apply(应用)。
-
右键单击已配置的 IP 地址,然后单击 Bring Online 。
-
在群集创建完成后,我们现在将扩展群集并导航到 Storage 部分,在其中我们将选择 Disks 以确认共享块存储卷(指定的法定磁盘和数据磁盘)是否已正确列出并被群集识别。
任务 5:安装和配置 SQL Server
在本任务中,我们将介绍新的 SQL Server 故障转移群集安装。
-
从下载的 MSSQL 软件包运行
setup.exe
。 -
选择安装。
-
选择新建 SQL Server 故障转移集群安装。
-
输入 Product Key(产品密钥),然后单击 Next(下一步)。
-
接受许可条款,然后单击下一步。
-
在 Microsoft Update 下,单击下一步。安装程序将扫描软件更新,下载并将开始安装过程。
-
它将安装故障转移群集规则。单击下一步。
-
在功能选择下,选择数据库引擎服务,然后单击下一步。
-
在实例配置中,输入 SQL Server 网络名称的名称,选择默认实例或命名实例,然后单击下一步。
-
在 Cluster Resource Group 中,单击 Next 。
-
在 Cluster Disk Selection 中,选择 Cluster Disk 2 ,然后单击 Next 。
-
在 Cluster Network Configuration 中,分配 IPv4 地址并单击 Next 。
-
在服务器配置中,输入在任务 2 中创建的 SQL 服务器服务帐户名称和密码,然后单击下一步。
-
在数据库引擎配置中,配置验证模式和其他设置,然后单击下一步。
-
在 Ready to Install 中,单击 Install 。
-
您将看到安装进度。单击关闭。
-
转到 Failover Cluster Manager(故障转移群集管理器),展开群集并导航到 Storage(存储)部分并验证磁盘。您将看到分配给 SQL Server 的第二个磁盘,如下图中所示。
-
转到 Failover Cluster Manager(故障转移群集管理器),展开群集,导航到 Roles(角色)部分。可以看到 SQL Server 集群。
-
在 SQL Server Management Studio 中,我们现在可以连接到数据库。您的部署现已就绪,并且设置为具有高可用性和容错能力。
后续步骤
在本教程中,我们介绍了如何使用 OCI 块存储卷服务的 SCSI PR 功能使用 MSSQL 设置 WSFC 集群的过程。通过遵循本教程,您现在应该有一个功能齐全的 WSFC 集群,其中包含使用 SCSI PR 的 MSSQL。请记住定期测试和验证集群,以确保高可用性并尽可能减少停机时间。
确认
- 作者 — Chakri Nelluri(OCI 块存储产品管理)
更多学习资源
浏览 docs.oracle.com/learn 上的其他实验室,或者访问 Oracle Learning YouTube 渠道上的更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 成为 Oracle Learning Explorer。
有关产品文档,请访问 Oracle 帮助中心。
Deploy Microsoft SQL Server Windows Server Failover Cluster for HA and DR on Oracle Cloud Infrastructure
G32747-02
Copyright ©2025, Oracle and/or its affiliates.