在企业 IT 架构中,高可用(HA) 是核心诉求之一。MSCS(Microsoft Cluster Service) 是微软传统的集群服务,在 Windows Server 2016 中正式命名为 故障转移集群(Failover Cluster)。它能实现关键业务(如文件服务、数据库、中间件)的节点冗余,一台服务器宕机,另一台自动无缝接管,保障业务不中断。


一、核心概念说明

  1. MSCS = 故障转移集群

    Windows 2008 之后统一叫 “故障转移集群”,本质就是传统 MSCS。

  2. Windows 集群分类

    • 故障转移集群(MSCS):高可用、主备切换(本文内容)
    • NLB 网络负载均衡:流量分担、多活
  3. 环境限制

    • 必须域环境(工作组无法搭建 MSCS)
    • 必须 双网卡(业务网 + 心跳私网)
    • 必须 共享存储(本文用 VMware 虚拟共享磁盘)

二、实验环境规划

本实验使用 3 台 Windows Server 2016 虚拟机

1. 网络规划(VMware 仅主机模式)

2. IP 地址分配

表格

主机 网卡 1(业务) 网卡 2(心跳)
DC 192.168.10.10
Node1 192.168.10.11 10.0.0.11
Node2 192.168.10.12 10.0.0.12
集群 VIP 192.168.10.100

3. 共享磁盘(SCSI)


三、VMware Workstation 关键配置(必须做)

1. 创建 3 台虚拟机

均安装 Windows Server 2016,硬盘控制器选择:

LSI Logic SAS(必须)

磁盘类型:SCSI(不支持 NVMe / SATA 做共享)

2. 为 Node1 添加两块共享磁盘

关闭 Node1、Node2 → 编辑虚拟机

添加 → 硬盘 → SCSI → 创建新磁盘:

3. Node2 挂载 “现有磁盘”

Node2 → 添加 → 硬盘 → 使用现有虚拟磁盘

分别挂载上述两块磁盘。

4. 修改 VMX 配置(解决集群报错)

关闭两台节点虚拟机,找到 .vmx 文件,用记事本打开,末尾添加:

disk.EnableUUID = "TRUE"
scsi1.sharedBus = "virtual"
disk.locking = "false"

Node1、Node2 都要加

5. 网卡配置

每台节点 2 块网卡:


四、搭建 AD 域控制器(DC)

1. 设置静态 IP

IP:192.168.10.10
掩码:255.255.255.0
DNS:127.0.0.1

2. 安装 AD 域服务

服务器管理器 → 添加角色 → 勾选 AD 域服务

安装完成 → 提升为域控制器 → 新建林:

test.com

完成后重启。


五、Node1 / Node2 系统基础配置(两台都执行)

1. 修改计算机名

2. 配置双网卡 IP

业务网卡(VMnet1)

IP:192.168.10.11(Node1)
IP:192.168.10.12(Node2)
掩码:255.255.255.0
DNS:192.168.10.10

心跳网卡(VMnet2)

IP:10.0.0.11 / 10.0.0.12
掩码:255.255.255.0
无网关
无DNS

关键设置

心跳网卡 → 高级 → WINS → 禁用 NetBIOS

3. 关闭 Windows 防火墙

4. 加入域 test.com

加入后 使用域管理员账号登录(必须)。


六、初始化共享存储(仅 Node1 执行)

  1. 打开 磁盘管理

  2. 两块磁盘 → 联机 → 初始化 GPT

  3. 新建简单卷:

    • 1GB → Q:(仲裁盘)
    • 10GB → D:(数据盘)
  4. 格式化 NTFS

Node2 只需刷新磁盘,能看到 Q、D 即可,不要格式化


七、安装故障转移集群(两台都安装)

服务器管理器 → 添加角色和功能 → 功能

勾选:故障转移集群

自动添加依赖 → 安装完成。


八、创建 MSCS 集群(仅 Node1 执行)

  1. 打开 故障转移集群管理器

  2. 点击 创建集群

  3. 添加节点:

    • Node1
    • Node2
  4. 运行集群验证(必须)

    • 运行所有测试
    • 必须 无错误
  5. 设置集群信息:

    • 集群名称:Cluster01
    • 集群 IP:192.168.10.100
  6. 勾选:添加符合条件的存储

  7. 完成创建。


九、配置集群仲裁(必须)

右键集群 → 更多操作 → 配置集群仲裁

选择:节点和磁盘多数

指定:Q 盘(1GB 仲裁盘)

完成。


十、集群高可用测试

  1. 查看集群核心资源全部 在线
  2. 右键 Node1 → 暂停 → 排空角色
  3. 观察 IP、磁盘、集群名称自动切换至 Node2
  4. 恢复 Node1,可正常回迁

MSCS 集群搭建成功!


十一、常见问题(避坑指南)

  1. 集群验证存储失败

    未配置 disk.EnableUUID = "TRUE"

  2. 共享磁盘无法识别

    必须使用 SCSI 控制器

  3. 无法创建集群

    未加入域、防火墙未关闭、心跳网卡配置错误

  4. 脑裂风险

    必须配置仲裁磁盘


十二、总结