SQL Server 高可用(always on)配置指南之搭建故障转移群集

时间:2022-11-16 09:00:44

1.简介

1、参考SQL Server 高可用(always on)配置指南之域(AD)环境搭建  ​​https://blog.51cto.com/waringid/5851856​​ 完成域控服务器(Domain Control ,以下简称DC)

2、参考SQL Server 高可用(always on)配置指南之节点配置 ​​https://blog.51cto.com/waringid/5851970​​ 完成2个节点服务器的配置。

SQL Server 高可用(always on)配置指南之搭建故障转移群集

2.故障转移群集仲裁说明

当群集中的节点发生故障时,会由其他节点接手继续提供服务。

不过,当节点之间通信出现问题或太多节点发生故障时,群集就会停止服务,可是群集可以容忍多少个节点发生故障,这要由仲裁配置(Quorum Configuration)决定,Quorum中文就是法定数量的意思,也就是只要群集中仍然正常运行的节点数量达到法定数量,群集就会继续提供服务,否则就停止服务。

在停止服务期间,仍然正常的节点会继续监听故障节点是否恢复正常,一旦正常节点的数量恢复到法定数量时,群集就会继续提供服务。

在计算法定数量时,有的仲裁配置会用到仲裁磁盘,又称为见证磁盘(Witness Disk)。仲裁配置分为以下几种。

多数节点(Node Majority)

此种配置不会用到仲裁磁盘,而所谓多数节点就是正常节点数量占多数的情况下,群集才会提供服务,否则就停止服务。此种配置适用于奇数节点的群集。例如,5个节点的群集,其正常节点的数量必须至少3个,群集才会提供服务。

多数节点与磁盘(Node and Disk Majority)

适用于偶数节点的群集,它在计算法定数量时会将仲裁磁盘计算进来,例如,4个节点+1个仲裁磁盘的群集,可以将其视为5个节点的群集,此时正常节点的数量必须至少3个,群集才会服务。

多数节点与文件共享(Node and File Share Majority)

它和多数节点与磁盘类似,不过将仲裁磁盘改为共享文件夹内的文件。

没有多数:只有磁盘(No Majority :Disk Only)

只要仲裁磁盘脱机·,群集就会停止提供服务(不建议采用)。

2.1.见证磁盘和见证共享文件夹

见证共享文件夹是Windows 2008才推出的见证磁盘方式,因为以前的见证磁盘(简称仲裁盘)需要共享存储,也就是各个节点需要挂载同一个磁盘,这个磁盘叫见证磁盘,是放在共享存储上面的。

推出见证共享文件夹之后可以不需要的共享存储,用共享文件夹就可以了。在使用故障转移集群的时候,只用两种仲裁配置:(多数节点) 和 (多数节点和文件共享)

如果集群节点是奇数,那么使用多数节点

如果集群节点是偶数,那么使用多数节点和文件共享 (需要配置一个共享文件夹,各个节点都能访问这个共享文件夹,并且共享文件夹所在机器不需要加入域)

3.注意事项

  • 域控不需要安装故障转移集群服务和SQL Server,也不需要加入到故障转移集群
  • 所有机器防火墙都关掉
  • 两个节点都需要安装相同的更新程序,建议不要开启自动更新功能,由系统管理员手动更新
  • SQL Server 2012  AlwaysOn只支持最多一个主副本和四个辅助副本,最多允许三个同步提交的可用性副本(包括主副本),最多允许两个自动故障转移副本(包括主副本)

4.故障转移群集服务安装

两个节点都同时安装故障转移集群服务

SQL Server 高可用(always on)配置指南之搭建故障转移群集

两个节点都安装完故障转移集群之后,在其中一个节点上进行注销操作,然后使用DCADMIN这个域用户登录计算机

SQL Server 高可用(always on)配置指南之搭建故障转移群集

5.配置故障转移群集服务

5.1.验证群集服务

打开故障转移集群管理器,并且进行配置验证

SQL Server 高可用(always on)配置指南之搭建故障转移群集

SQL Server 高可用(always on)配置指南之搭建故障转移群集

1、 在“选择服务器或群集”界面中,单击“浏览”按钮将所有要加入群集的服务器添加进来,然后单击“下一步”按钮

SQL Server 高可用(always on)配置指南之搭建故障转移群集

SQL Server 高可用(always on)配置指南之搭建故障转移群集

2、在验证配置向导中选择运行所有测试,进行全部检测就可以查看到服务器之间建立群集的所有设置,包括网络、共享磁盘、操作系统等

SQL Server 高可用(always on)配置指南之搭建故障转移群集

3、报告里面不能出现失败,否则你需要检查是什么问题导致失败,失败是建立不了故障转移集群的,出现警告要看情况。点击完成。

SQL Server 高可用(always on)配置指南之搭建故障转移群集

集群报告会存放在这个路径下C:\Windows\Cluster\Reports

5.2.创建群集

1、创建集群向导

SQL Server 高可用(always on)配置指南之搭建故障转移群集

2、输入集群名称和vip

SQL Server 高可用(always on)配置指南之搭建故障转移群集


注:这个只是集群的管理名称和管理IP,跟AlwaysOn无关

3、由于当前还没有任何存储,所以不勾选将所有符合条件的存储添加到群集

SQL Server 高可用(always on)配置指南之搭建故障转移群集

4、 查看报告可以看到 找不到磁盘见证的相应磁盘,因为还没加见证共享文件夹或仲裁盘,这里可以先忽略

SQL Server 高可用(always on)配置指南之搭建故障转移群集

SQL Server 高可用(always on)配置指南之搭建故障转移群集

5、完成群集创建

SQL Server 高可用(always on)配置指南之搭建故障转移群集

6、可以在域控的AD用户和计算机里看到集群的virtual name

SQL Server 高可用(always on)配置指南之搭建故障转移群集

5.3. 配置群集仲裁

1、打开群集管理服务,点击配置群集仲裁设置

SQL Server 高可用(always on)配置指南之搭建故障转移群集

SQL Server 高可用(always on)配置指南之搭建故障转移群集

SQL Server 高可用(always on)配置指南之搭建故障转移群集

2、由于是两个节点的故障转移集群,所以需要加上共享文件夹,在域控上建立一个共享文件夹,让两个集群节点都可以访问,采用多数节点与文件共享仲裁模式

SQL Server 高可用(always on)配置指南之搭建故障转移群集

注意:如果是奇数节点,这一步是不需要做的。

共享文件夹所在机器入域(域网络)和不入域(独立机器)都无所谓,生产环境不要把共享文件夹放在域控上。

3、在域控上的C盘新建一个HAshare文件夹作为共享文件夹,HAshare文件夹的权限为everyone完全控制和DCADMIN域用户的读写权限

SQL Server 高可用(always on)配置指南之搭建故障转移群集

4、在HAshare文件夹下随便建一个文本文件,UNC路径:\\test-dc\HAshare

SQL Server 高可用(always on)配置指南之搭建故障转移群集

5、在两个集群节点上测试能否访问共享文件夹。两个节点都用域用户DCADMIN登录,并测试另外两个节点能否访问这个HAshare共享文件夹

SQL Server 高可用(always on)配置指南之搭建故障转移群集

6、回到故障转移集群管理器,填写文件共享路径:\\test-dc\HAshare

SQL Server 高可用(always on)配置指南之搭建故障转移群集

7、完成仲裁配置

SQL Server 高可用(always on)配置指南之搭建故障转移群集

SQL Server 高可用(always on)配置指南之搭建故障转移群集

注意:如果DCADMIN没有HAshareshare文件夹的写入权限,那么在填写文件共享路径的时候会被拒绝

8、可以看到共享文件夹下面会生成VerifyShareWriteAccess.txt和Witness.log两个文件

SQL Server 高可用(always on)配置指南之搭建故障转移群集

SQL Server 高可用(always on)配置指南之搭建故障转移群集

9、完成故障转移群集配置