0 引言
主要讲述如何搭建故障转移集群,因为AlwaysOn是基于Windows的故障转移集群的。
在讲解步骤之前需要了解一下故障转移集群仲裁配置
下面图片来自《Windows Server2012系统配置指南》
四种集群的仲裁配置:
1、多数节点:这种配置不会用到仲裁磁盘,而所谓多数节点就是在正常节点数量占多数的情况下,集群才会提供服务,否则就停止服务。这种配置适用于奇数节点的集群,例如5个节点的集群,其正常节点数量必须至少3个,集群才会提供服务
2、多数节点和磁盘:适用于偶数节点的集群,他在计算法定数量时会将仲裁磁盘计算进来,例如,4个节点+1个仲裁磁盘节点的集群,可以将其视为5个节点的集群,这时正常节点数量必须至少3个,集群才会提供服务
3、多数节点和文件共享:它和(多数节点和磁盘)类似,不过仲裁磁盘改为共享文件夹内的文件
4、没有多数:只有磁盘,只要仲裁磁盘脱机,集群就会停止提供服务(不建议使用,这种方式很早之前已经有了)
简单说一下见证磁盘和见证共享文件夹
见证共享文件夹是Windows 2008才推出的见证磁盘方式,因为以前的见证磁盘(简称仲裁盘)需要共享存储,也就是各个节点需要挂载同一个磁盘,这个磁盘叫见证磁盘,是放在共享存储上面的
推出见证共享文件夹之后我们可以不需要高大上的共享存储,用共享文件夹就可以了
我们在使用故障转移集群的时候,只用两种仲裁配置:(多数节点) 和 (多数节点和文件共享)
如果集群节点是奇数,那么使用多数节点
如果集群节点是偶数,那么使用多数节点和文件共享 (需要配置一个共享文件夹,各个节点都能访问这个共享文件夹,并且共享文件夹所在机器不需要加入域)
注意:
域控不需要安装故障转移集群服务和SQL Server,也不需要加入到故障转移集群
所有机器防火墙都关掉
两个节点都需要安装相同的更新程序,建议不要开启自动更新功能,由系统管理员手动更新
SQL Server 2012 AlwaysOn只支持最多一个主副本和四个辅助副本,最多允许三个同步提交的可用性副本(包括主副本),最多允许两个自动故障转移副本(包括主副本)
步骤1.2:安装故障转移集群
1、 安装故障转移集群,两个节点都同时安装故障转移集群服务
2、两个节点都安装完故障转移集群之后,在其中一个节点上进行注销操作,然后使用DCADMIN这个域用户登录计算机
3、打开故障转移集群管理器
4、在“选择服务器或群集”界面中,单击“浏览”按钮将所有要加入群集的服务器添加进来,然后单击“下一步”按钮。
5、在验证配置向导中最好选择运行所有测试,进行全部检测就可以查看到服务器之间建立群集的所有设置,包括网络、共享磁盘、操作系统等。
报告里面一定不能出现失败,否则你需要检查是什么问题导致失败,失败是建立不了故障转移集群的
出现警告要看情况,对于存储的警告,由于目前为止没有添加任何的存储设备,这里可以忽略,还有网络警告
集群报告会存放在这个路径下
C:\Windows\Cluster\Reports
6、点击完成
7、创建集群向导
8、输入集群名称和vip
注意:这个只是集群的管理名称和管理IP,跟AlwaysOn无关
由于我们当前还没有任何存储,所以不勾选将所有符合条件的存储添加到群集
查看报告可以看到 找不到磁盘见证的相应磁盘,因为我们还没加见证共享文件夹或仲裁盘,这里可以忽略
9、群集创建完成
可以在域控的AD用户和计算机里看到集群的virtual name
10、由于我们是两个节点的故障转移集群,所以需要加上共享文件夹,在域控上建立一个共享文件夹,让两个集群节点都可以访问
注意:如果是奇数节点,这一步是不需要做的!
共享文件夹所在机器入域(域网络)和不入域(独立机器)都无所谓
生产环境不要把共享文件夹放在域控上!
注意集群停止服务的条件
11、在域控上的C盘新建一个quorumshare文件夹作为共享文件夹
quorumshare文件夹的权限为everyone完全控制和DCADMIN域用户的读写权限(保险起见)
12、UNC路径:\\WIN-FELBG10UU7F\quorumshare
在quorumshare文件夹下随便建一个文本文件
13、在两个集群节点上测试能否访问共享文件夹
两个节点都用域用户DCADMIN登录,并测试另外两个节点能否访问这个quorumshare共享文件夹
14、回到故障转移集群管理器,填写文件共享路径:\\WIN-FELBG10UU7F\quorumshare
注意:如果quorumshare文件夹没有写入权限,那么在填写文件共享路径的时候会被拒绝
15、可以看到共享文件夹下面会生成VerifyShareWriteAccess.txt和Witness.log两个文件,至于这两个文件的作用大家看它们的文件名就知道了
故障转移集群到这里就已经配置完成
Windows Server2012系统配置指南
配置群集网络(SQL CLUSTER的情况,不是alwayson的情况)
public网络:192.168.8.0 客户端可以通过此网络与群集节点通信,也要让群集节点之间可以通过此网络进行通信(当作private网络的备用网络 心跳的备用网络),菠萝说过换alwayson的镜像ip非常麻烦,需要停机
private网络:192.168.9.0 此网络只用作心跳
iSCSI网络:192.168.10.0 利用iSCSI通信协议与目标服务器通信的专用网络,不可以群集节点之间通信网络,也不可以用来与客户端通信
public网络
允许在此网络上进行群集网络通信 and 允许客户端通过该网络连接
private网络
允许在此网络上进行群集网络通信
iSCSI网络
不允许在此网络上进行群集网络通信
本地盘不用共享存储的情况下
最佳做法:不分开网段,只有一个public192.168.8.0,两个网卡做teaming,最好是负载均衡那种,不用active-backup主备模式,分担压力
如果分开网段,比如
主副本 网卡1:192.168.8.20 ;网卡2:192.168.9.20
辅助副本 网卡1:192.168.8.21;网卡2:192.168.9.21
一旦辅助副本的网卡2坏了,要用网卡1来代替,变成了跨子网,而且辅助副本的网卡1也要承担客户端流量
如果不分开网段但是没做网卡teaming
主副本 网卡1:192.168.8.20 ;网卡2:192.168.8.21
辅助副本 网卡1:192.168.8.22;网卡2:192.168.9.23
一旦辅助副本的网卡2坏了,要用网卡1来代替,只是辅助副本的网卡1承担客户端流量
最佳设置:不分开网段,不管网卡是否做了teaming
都设置为允许在此网络上进行群集网络通信 and 允许客户端通过该网络连接,也就是保持默认设置
如果集群节点跟见证共享文件夹不能通信,例如 域控关机了,到达一定时间,在服务器管理器面板里角色和服务器组会显示红色
点击服务可以看到 故障转移集群服务已经挂起
权限问题
在AD用户和计算机管理界面 里的 域用户和故障转移集群用户的权限需要添加下面红框的权限,否则创建侦听器的时候有可能报错