(转载) 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)
这一篇是从0开始搭建SQL Server AlwaysOn 的第二篇,主要讲述如何搭建故障转移集群,因为AlwaysOn是基于Windows的故障转移集群的
在讲解步骤之前需要了解一下故障转移集群仲裁配置
下面图片来自《Windows Server2012系统配置指南》

四种集群的仲裁配置:
1、多数节点:这种配置不会用到仲裁磁盘,而所谓多数节点就是在正常节点数量占多数的情况下,集群才会提供服务,否则就停止服务。这种配置适用于奇数节点的集群,例如5个节点的集群,其正常节点数量必须至少3个,集群才会提供服务
2、多数节点和磁盘:适用于偶数节点的集群,他在计算法定数量时会将仲裁磁盘计算进来,例如,4个节点+1个仲裁磁盘节点的集群,可以将其视为5个节点的集群,这时正常节点数量必须至少3个,集群才会提供服务
3、多数节点和文件共享:它和(多数节点和磁盘)类似,不过仲裁磁盘改为共享文件夹内的文件
4、没有多数:只有磁盘,只要仲裁磁盘脱机,集群就会停止提供服务(不建议使用,这种方式很早之前已经有了)
简单说一下见证磁盘和见证共享文件夹
见证共享文件夹是Windows 2008才推出的见证磁盘方式,因为以前的见证磁盘(简称仲裁盘)需要共享存储,也就是各个节点需要挂载同一个磁盘,这个磁盘叫见证磁盘,是放在共享存储上面的
推出见证共享文件夹之后我们可以不需要高大上的共享存储,用共享文件夹就可以了
我们在使用故障转移集群的时候,只用两种仲裁配置:(多数节点) 和 (多数节点和文件共享)
如果集群节点是奇数,那么使用多数节点
如果集群节点是偶数,那么使用多数节点和文件共享 (需要配置一个共享文件夹,各个节点都能访问这个共享文件夹,并且共享文件夹所在机器不需要加入域)
注意:
域控不需要安装故障转移集群服务和SQL Server,也不需要加入到故障转移集群
所有机器防火墙都关掉
两个节点都需要安装相同的更新程序,建议不要开启自动更新功能,由系统管理员手动更新
SQL Server 2012 AlwaysOn只支持最多一个主副本和四个辅助副本,最多允许三个同步提交的可用性副本(包括主副本),最多允许两个自动故障转移副本(包括主副本)
步骤
这次也是step by step的方式向大家展示
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用户和计算机管理界面 里的 域用户和故障转移集群用户的权限需要添加下面红框的权限,否则创建侦听器的时候有可能报错


Create failed for Availability Group Listener ‘SQLCDB01Temp’. (Microsoft.SqlServer.Smo)
The WSFC cluster could not bring the Network Name resource with DNS name ‘SQLCDB01Temp’ online. The DNS name may have been taken or have a conflict with existing name services, or the WSFC cluster service may not be running or may be inaccessible. Use a different DNS name to resolve name conflicts, or check the WSFC cluster log for more information. The attempt to create the network name and IP address for the listener failed. The WSFC service may not be running or may be inaccessible in its current state, or the values provided for the network name and IP address may be incorrect. Check the state of the WSFC duster and validate the network name and IP address with the network administrator. (Microsoft SQL Server, Error: 19471)
参考文章:https://blogs.msdn.microsoft.com/alwaysonpro/2013/10/30/create-availability-group-listener-fails-with-message-19471-the-wsfc-cluster-could-not-bring-the-network-name-resource-online/
总结
通过上面的步骤演示,故障转移集群配置就完成了,希望大家能够看清楚截图,一步一步进行配置,基本上就没有问题了
下一篇正式讲SQL Server AlwaysOn搭建了
相关文章
https://msdn.microsoft.com/zh-cn/library/hh270278(v=sql.110).aspx
https://msdn.microsoft.com/zh-cn/library/hh270280(v=sql.110).aspx
https://msdn.microsoft.com/zh-cn/library/hh270279(v=sql.110).aspx
https://msdn.microsoft.com/zh-cn/library/hh270281(v=sql.110).aspx
https://technet.microsoft.com/zh-cn/library/cc731739.aspx
https://technet.microsoft.com/zh-cn/library/cc733130.aspx
https://technet.microsoft.com/zh-cn/library/cc753341.aspx
https://technet.microsoft.com/en-us/library/cc770620(v=ws.10).aspx
https://msdn.microsoft.com/en-us/library/hh270281.aspx
(转载) 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)的更多相关文章
- 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)
从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...
- (转)从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)
原文地址: http://www.cnblogs.com/lyhabc/p/4682028.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第二篇,主要讲述如何搭建故障转移集 ...
- (转载) 从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)
安装完之后别忘了还需要安装SSMS,这是坑爹的地方之二,干嘛不集成到SQL Server安装包里还要用户自己单独下载 下载地址:https://msdn.microsoft.com/en-us/lib ...
- (转载) 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)
这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建AlwaysOn,前两篇是为搭建AlwaysOn 做准备的 步骤 这一篇依然使用step by step的方式 ...
- 从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)
从0开始搭建SQL Server AlwaysOn 第一篇(配置域控) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www.cnb ...
- (转载) 从0开始搭建SQL Server AlwaysOn 第四篇(配置异地机房节点)
这一篇是从0开始搭建SQL Server AlwaysOn 的第四篇,这一篇开始搭建异地机房节点 注意点1 注意异地节点最好至少有2个AG节点,否则在本地节点进行手动故障转移的时候会出现仲裁警告,提示 ...
- (转)从0开始搭建SQL Server AlwaysOn 第一篇(配置域控+域用户DCADMIN)
原文地址: http://www.cnblogs.com/lyhabc/p/4678330.html 实验环境: 准备工作 软件准备 (1) SQL Server 2012 (2) Windows S ...
- 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)
从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://w ...
- (转) 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)
原文地址: http://www.cnblogs.com/lyhabc/p/4682986.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建Alwa ...
随机推荐
- Java开发笔记(一百二十八)Swing的图标
前面提过,AWT没提供能够直接显示图像的控件,这无疑是个令人诟病的短板,因为一上来就得由程序员自己去定义新控件,对于初学者来讲很不友好.这个问题在Swing中也解决掉了,不过Swing并未提供单独的图 ...
- day29——socket套接字(少量不全)
day29 socket套接字 socket是处于应用层与传输层之间的抽象层,他是一组操作起来非常简单的接口(接受数据)此接口接受数据之后,交由操作系统. 为什么存在socket抽象层? 如果直接与操 ...
- docker深入学习二
dicker:数据管理 数据管理机制 docker使用union file system来管理数据,docker构建image和container也是采用了同样的技术. image层次 iamge由多 ...
- font-svg
https://fontawesome.com/ http://www.fontawesome.com.cn/cheatsheet/ http://www.iconfont.cn/ string lj ...
- windows下pyinstaller打包踩坑记录
示例: 需要打包的是 ReadConfig.py 文件,同文件夹下调用了Interface.py文件,ui文件夹下调用了 Ui_config.py和Ui_Error.py文件,Interface.py ...
- Twitter分布式自增ID算法snowflake原理解析(Long类型)
Twitter分布式自增ID算法snowflake,生成的是Long类型的id,一个Long类型占8个字节,每个字节占8比特,也就是说一个Long类型占64个比特(0和1). 那么一个Long类型的6 ...
- springboot启动后执行一段代码的方式
文章转载自: https://www.cnblogs.com/zuidongfeng/p/9926471.html https://blog.csdn.net/zknxx/article/detail ...
- Vue检测当前是否处于mock模式
Vue检测当前是否处于mock模式 1.在main.js中声明全局变量: import Vue from 'vue' /* 全局变量 */ var GLOBAL_VARIABLE = { isMock ...
- c# 比较字符串
- CPNtools 模拟工具适合分析什么样的协议
最近梳理和CPNtools和Scyther之间的性能和差别.方便后面整理使用 1.库所的托肯值是什么? 托肯值也叫作令牌, 即网络系统中的资源,托肯的数目值代表了网络赋予的资源大小.在一个活的网络系统 ...