从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)

第一篇
http://www.cnblogs.com/lyhabc/p/4678330.html
第二篇
http://www.cnblogs.com/lyhabc/p/4682028.html
第三篇
http://www.cnblogs.com/lyhabc/p/4682986.html
第四篇
http://www.cnblogs.com/lyhabc/p/6136227.html

这一篇是从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

如有不对的地方,欢迎大家拍砖o(∩_∩)o 

从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)的更多相关文章

  1. (转)从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)

    原文地址:  http://www.cnblogs.com/lyhabc/p/4682028.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第二篇,主要讲述如何搭建故障转移集 ...

  2. (转载) 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)

    这一篇是从0开始搭建SQL Server AlwaysOn 的第二篇,主要讲述如何搭建故障转移集群,因为AlwaysOn是基于Windows的故障转移集群的 在讲解步骤之前需要了解一下故障转移集群仲裁 ...

  3. 从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)

    从0开始搭建SQL Server AlwaysOn 第一篇(配置域控) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www.cnb ...

  4. (转)从0开始搭建SQL Server AlwaysOn 第一篇(配置域控+域用户DCADMIN)

    原文地址: http://www.cnblogs.com/lyhabc/p/4678330.html 实验环境: 准备工作 软件准备 (1) SQL Server 2012 (2) Windows S ...

  5. (转载) 从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)

    安装完之后别忘了还需要安装SSMS,这是坑爹的地方之二,干嘛不集成到SQL Server安装包里还要用户自己单独下载 下载地址:https://msdn.microsoft.com/en-us/lib ...

  6. 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)

    从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://w ...

  7. (转) 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)

    原文地址: http://www.cnblogs.com/lyhabc/p/4682986.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建Alwa ...

  8. (转载) 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)

    这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建AlwaysOn,前两篇是为搭建AlwaysOn 做准备的 步骤 这一篇依然使用step by step的方式 ...

  9. 从0开始搭建SQL Server AlwaysOn 第四篇(配置异地机房节点)

    从0开始搭建SQL Server AlwaysOn 第四篇(配置异地机房节点) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...

随机推荐

  1. LDR详解

    ARM指令集中,LDR通常都是作加载指令的,但是它也可以作伪指令. LDR伪指令的形式是"LDR Rn,=expr".下面举一个例子来说明它的用法. COUNT EQU       ...

  2. Js new到底发生了什么

    在Js中,我们使用了new关键字来进行实例化 那么在这个new的过程中到底发生了什么? 关于构造函数的return 正常来讲构造函数中是不用写return语句的,因为它会默认返回新创建的对象. 但是, ...

  3. SQLServer事务同步下如何收缩日志

    事务同步是SQLServer做读写分离的一种常用的方式. 随着业务数据的不断增长,数据库积攒了大量的日志,为了腾出硬盘空间,需要对数据库日志进行清理 订阅数据库的日志清理 因为订阅数据库所有的数据都来 ...

  4. Laravel 5.x 请求的生命周期(附源码)

    Laravel最早接触是刚开始实习的时候,那时通过网上的学习资料很快便上手,开发模块接口.后来没有什么深入和总结,但是当我刚开始学Laravel的时候,我对Laravel最大的认识就是,框架除了路由. ...

  5. JS图片上传预览插件制作(兼容到IE6)

    其实,图片预览功能非常地常见.很意外,之前遇到上传图片的时候都不需要预览,也一直没有去实现过.现在手上的项目又需要有图片预览功能,所以就动手做了一个小插件.在此分享一下思路. 一.实现图片预览的一些方 ...

  6. C#文件安全管理解析

    在实际的项目开发中,我们经常需要使用到文件的I/O操作,主要包含对文件的增改删查等操作,这些基本的操作我们都是很熟悉,但是较少的人去考虑文件的安全和操作的管理等方面,例如文件的访问权限管理,文件数据的 ...

  7. 玩转Vim 编辑器

    一:VIM快速入门 1.vim模式介绍 以下介绍内容来自维基百科Vim 从vi演生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆.几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数 ...

  8. 用MongoDB分析合肥餐饮业

    看了<从数据角度解析福州美食>后难免心痒,动了要分析合肥餐饮业的念头,因此特地写了Node.js爬虫爬取了合肥的大众点评数据.分析数据库我并没有采用MySQL而是用的MongoDB,是因为 ...

  9. LINQ to SQL Where条件

    1. 适用场景 实现条件的过滤和查询等功能. 2. 说明 跟SQL语句中的where作用相似,都起到了范围的限定即过滤的作用,而判断条件是紧跟后面的条件子句.where主要分为三种形式:简单形式.条件 ...

  10. 通过自定义特性,使用EF6拦截器完成创建人、创建时间、更新人、更新时间的统一赋值(使用数据库服务器时间赋值,接上一篇)

    目录: 前言 设计(完成扩展) 实现效果 扩展设计方案 扩展后代码结构 集思广益(问题) 前言: 在上一篇文章我写了如何重建IDbCommandTreeInterceptor来实现创建人.创建时间.更 ...