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个节点服务器的配置。
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.故障转移群集服务安装
两个节点都同时安装故障转移集群服务
两个节点都安装完故障转移集群之后,在其中一个节点上进行注销操作,然后使用DCADMIN这个域用户登录计算机
5.配置故障转移群集服务
5.1.验证群集服务
打开故障转移集群管理器,并且进行配置验证
1、 在“选择服务器或群集”界面中,单击“浏览”按钮将所有要加入群集的服务器添加进来,然后单击“下一步”按钮
2、在验证配置向导中选择运行所有测试,进行全部检测就可以查看到服务器之间建立群集的所有设置,包括网络、共享磁盘、操作系统等
3、报告里面不能出现失败,否则你需要检查是什么问题导致失败,失败是建立不了故障转移集群的,出现警告要看情况。点击完成。
集群报告会存放在这个路径下C:\Windows\Cluster\Reports
5.2.创建群集
1、创建集群向导
2、输入集群名称和vip
注:这个只是集群的管理名称和管理IP,跟AlwaysOn无关
3、由于当前还没有任何存储,所以不勾选将所有符合条件的存储添加到群集
4、 查看报告可以看到 找不到磁盘见证的相应磁盘,因为还没加见证共享文件夹或仲裁盘,这里可以先忽略
5、完成群集创建
6、可以在域控的AD用户和计算机里看到集群的virtual name
5.3. 配置群集仲裁
1、打开群集管理服务,点击配置群集仲裁设置
2、由于是两个节点的故障转移集群,所以需要加上共享文件夹,在域控上建立一个共享文件夹,让两个集群节点都可以访问,采用多数节点与文件共享仲裁模式
注意:如果是奇数节点,这一步是不需要做的。
共享文件夹所在机器入域(域网络)和不入域(独立机器)都无所谓,生产环境不要把共享文件夹放在域控上。
3、在域控上的C盘新建一个HAshare文件夹作为共享文件夹,HAshare文件夹的权限为everyone完全控制和DCADMIN域用户的读写权限
4、在HAshare文件夹下随便建一个文本文件,UNC路径:\\test-dc\HAshare
5、在两个集群节点上测试能否访问共享文件夹。两个节点都用域用户DCADMIN登录,并测试另外两个节点能否访问这个HAshare共享文件夹
6、回到故障转移集群管理器,填写文件共享路径:\\test-dc\HAshare
7、完成仲裁配置
注意:如果DCADMIN没有HAshareshare文件夹的写入权限,那么在填写文件共享路径的时候会被拒绝
8、可以看到共享文件夹下面会生成VerifyShareWriteAccess.txt和Witness.log两个文件
9、完成故障转移群集配置