本篇文章主要介绍Windows2012的故障转移集群一个新功能“动态仲裁”,默认该功能是开启的; 动态仲裁能在当前群集投票出现分歧的情况下取消某些节点的投票权限,比如偶数个节点的群集环境。仲裁见证和动态仲裁有点相似也可以解决群集投票分歧的问题,但是它不能取消节点的投票权,它能保持群集的投票个数保持奇数个数。

SQLServer版本: SQL Server 2016 SP1

Windows版本:Windows Server 2012 DataCenter

群集节点:HD21DB03,HD21DB04,HD21DB05,HD21DB06

一、动态仲裁

当前群集是4个节点的偶数个群集,采用的是多数节点的仲裁投票方式。

1.全部节点正常

当前集群WSFC26的动态仲裁是开启的,见证动态投票当前是0;开启动态仲裁后,由于当前是4个节点的偶数个节点默认把主节点的当前投票给取消了。

2.模拟1个节点故障

当一个节点故障后,动态仲裁把之前的DB03的投票给启用了,还是保证了有3个节点的投票。

3.模拟2个节点故障

当2个节点故障后,动态仲裁把剩下的DB04节点的投票也取消了,由于当前是2个节点所以只能保证一个节点有投票权,否则会出现投票分歧的情况。

4.模拟3个节点故障

当把3个节点故障后,集群还是保证正常,同时AlwaysOn也是正常的。

注意:第三个故障节点不能是当前有投票权的节点DB05,否则群集就无法保持正常了,因为当前只有DB05有投票权。

AlwaysOn也正常

二、仲裁见证

再看一下当同时启用动态仲裁和见证仲裁的情景。

1.全部节点

当前4个节点都有投票,而且见证动态投票也变成了1,当前群集就有5个投票。

2.模拟1个节点故障

当有一个节点故障后,这时见证动态投票也变成了0,保证了当前奇数个投票。当前有3个投票。所以当两个节点故障后见证动态投票会变成了1

3.模拟2个节点故障

模拟两个节点故障后,见证动态投票变成 了1,当前还是保证了3个投票。而且这时DB04、DB05都可以故障,不影响整个集群,而且如果这个两个节点都是同步提交的话AlwaysOn也能正常切换。比没有加入见证的动态仲裁集群存活几率更大。

4.模拟3个节点故障

注意:这里DB05已经故障了,但是它的当前投票还是为1,而且见证投票也是1,总投票数还是3,可能是个bug;最后的投票数应该只有DB04有且见证投票也应该为0总投票数应该为1。当时整个集群还是正常的。

这里故意把DB05节点故障测试AlwaysOn群集转移情况,事实证明只要群集正常转移也是没问题,前提节点得是同步提交支持自动故障转移。

注意:最后保证只有一个节点群集也正常也是动态仲裁的作用,否则当前群集只能运行2个节点故障。见证投票只是增加了群集的投票几率。

三、关闭动态仲裁

接下来看4个节点且关闭了文件共享见证的场景。

1.全部节点正常

2.模拟1个节点故障

当前群集和AlwaysOn都正常

3.模拟2个节点故障

整个群集群集故障无法访问。

注意:不要存在这种误区以为偶数个节点就无法投票选举,如果4个节点都正常或者两两处于不同的数据库中心的情况下有可能会导致投票无法选举成功。但是当某个节点故障剩下的3个节点还是能选出一个新的主节点,因为剩下的节点可以满足节点多数。

四、命令

1.查看动态仲裁和见证投票

Get-Cluster | ft name,DynamicQuorum,WitnessDynamicWeight

2.开启关闭动态仲裁

--关闭
(Get-Cluster).DynamicQuorum=
--开启
(Get-Cluster).DynamicQuorum=

备注:在其中一个群集节点上执行即可

五、总结

动态仲裁功能可以大大的提高了群集的存活几率,是一个非常有用的功能。反而见证的效果就变的没那么重要的,当然对于如果服务器紧张的情景见证还是可以充当节点投票来使用。以前的大多数节点的投票机制是在整个集群节点的基础上,现在引入了动态仲裁后是以每一次群集仲裁正常后为基础进行仲裁。

参考:http://www.tech-coffee.net/understand-failover-cluster-quorum/

备注:

作者:pursuer.chen

博客:http://www.cnblogs.com/chenmh

本站点所有随笔都是原创,欢迎大家转载;但转载时必须注明文章来源,且在文章开头明显处给明链接,否则保留追究责任的权利。

《欢迎交流讨论》

Windows Server2012 故障转移集群之动态仲裁(Dynamic Quorum)的更多相关文章

  1. 部署AlwaysOn第一步:搭建Windows服务器故障转移集群

    在Windows Server 2012 R2 DataCenter 环境中搭建集群之前,首先要对Windows服务器故障转移集群(Windows Server Failover Cluster,简称 ...

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

    从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...

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

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

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

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

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

    本篇主要讲配置Windows 故障转移集群及遇到的相关问题(坑),因为AlwaysOn是基于Windows的故障转移集群的 在讲解步骤之前需要了解一下故障转移集群仲裁配置 四种集群的仲裁配置: 1.多 ...

  6. 在Windows Server 2012 R2中搭建SQL Server 2012故障转移集群

    需要说明的是我们搭建的SQL Server故障转移集群(SQL Server Failover Cluster)是可用性集群,而不是负载均衡集群,其目的是为了保证服务的连续性和可用性,而不是为了提高服 ...

  7. 在Windows 2008/2008 R2 上配置IIS 7.0/7.5 故障转移集群

    本文主要是从:http://support.microsoft.com/kb/970759/zh-cn,直接转载,稍作修改裁剪而来,其中红色粗体部分,是我特别要说明的 若要配置 IIS 7.0 和 7 ...

  8. windows server 2012R2 故障转移集群配置

    配置说明: AD:10.10.1.10/24  Node-2:10.10.1.20/24 Node-3:10.10.1.30/24 zhangsan-PC:10.10.1.50/24  VIP1:10 ...

  9. sqlserver2008 复制,镜像,日志传输及故障转移集群区别

    一, 数据库复制 SQL Server 2008数据库复制是通过发布/订阅的机制进行多台服务器之间的数据同步,我们把它用于数据库的同步备份.这里的同步备份指的是备份服务器与主服务器进行 实时数据同步, ...

随机推荐

  1. [NOI2006]神奇口袋

    题面在这里 题意 开始时袋中有\(t\)种小球,第\(i\)种小球有\(t_i\)个,之后每次等概率取出一个球,第\(i\)次取球时观察这个球的颜色\(c_i\)放回并向袋中加入\(d\)个颜色为\( ...

  2. FFT总结

    讲真的,FFT我只会背板子.其他就只能抓瞎了. [模板]FFT #include<cstdio> #include<algorithm> #include<cmath&g ...

  3. [BZOJ1046] [HAOI2007] 上升序列 (dp)

    Description 对于一个给定的S={a1,a2,a3,…,an},若有P={ax1,ax2,ax3,…,axm},满足(x1 < x2 < … < xm)且( ax1 < ...

  4. HTTP架构介绍(2) 缓存

    web缓存是自动复制所请求数据并将其保存在本地存储中的设备. 通过这样做, 可以实现: 减少网络流量 消除网络瓶颈 防止服务器超载 减少长距离的响应延迟 因此, 您可以清楚地说, web 缓存可提高用 ...

  5. VirtualBox更改默认路径

    我这几天想把所有的文件夹都改成英文的,避免运行一些软件的时候因为中文路径发生不必要的错误,怎么移动虚拟机呢?直接修改名字会出错的,网上很多方法什么改注册表,什么运行一大串命令,真的很麻烦,不过还是找到 ...

  6. secureCRT的安装及破解

    secureCRT是我们平时都会用到的终端仿真程序,所谓是居家旅行必备神器啊,下面就说说怎么安装破解secureCRT. (网上有破解版和一些绿色版,感觉或多或少都有点问题,比如我用便携版就有问题,所 ...

  7. 设计模式——组合模式(C++实现)

    组合模式:将对象组合成树形结构以表示“部分-整体”的层次结构. 组合模式使得用户对单个对象和组合对象的使用具有一致性.   是一种结构型模式     使用场景: 1.用于对象的部分-整体层次结构,如树 ...

  8. centos7上安装0penStack

    centos7上安装0penStack author:headsen chen 2017-10-09  20:41:54 个人原创,欢迎转载,请注明作者,出去,否则依法追究责任 一,准备工作(配置ip ...

  9. python爬微信公众号前10篇历史文章(6)-话说http cookies

    早期Web开发面临的最大问题之一是如何管理状态.简言之,服务器端没有办法知道两个请求是否来自于同一个浏览器.这是cookies的起源. 什么是cookie? A cookie is a small s ...

  10. Java异常机制简介

    什么是异常? 异常一般是指程序在编译期没有问题,但是在程序运行期出现的错误,一个程序会因为出现异常而终止运行,也就是我们常说的挂掉,在多线程下,异常只会影响所在的线程,对其他线程没有影响. Java异 ...