SQL Server--疑难杂症之坑爹的Windows故障转移群集(转)
估计是春节前最后一次写博客,也估计是本年值班最后一次踩雷,感叹下成也SQL SERVER,败也SQL SERVER。
--==============================================================
场景描述:
操作系统版本 :Windows Server 2012 数据中心版本
数据库版本 :SQL SERVER 2012 企业版,版本号:11.0.5582.0
问题描述:数据库配置Alwayson环境,同机房2节点同步自动切换+跨机房异步,实现高可用性自动故障转移,由于有四个节点,因此选择奇数即3节点的群集仲裁,但当其中一节点(仲裁节点或非仲裁节点)发生硬件故障导致重启,便可能“引发”群集之间香菇丢失通信,然后群集开始对各个群集节点"已从活动故障转移群集成员身份中删除群集节点XXX",最终群集把所有仲裁节点删掉,群集自身挂掉,群集发生故障,导致上层依赖的Alwayson无法正常提供服务,处于“正在解析”状态,直到重启的节点恢复正常==>群集正常==》Alwayson正常。
假设有ABCD四个节点,AB和CD分别在两个机房,ABC三节点配置为仲裁节点,C节点发生故障,从群集时间中发现:




ABC三节点先后从故障群集中被移除,然后仲裁丢失群集服务关闭。
--=====================================================================
根据MS专家给出的分析,怀疑网络问题,事件1135也明显提示由于网络问题导致,而机房也查出部分出现该类故障的服务器使用了有问题的AOC线缆。
但是,问题总是在但是之后,为什么网络中喜欢在服务器宕机的时候出来凑热闹呢?一组Windows故障转移,当不出现问题的时候,一年多没有出现网络问题,就偏偏恰好在服务器宕机的时候网络“抖动”呢?因为服务器宕机产生的兴奋还是恐惧导致抖动呢?
同机房的网络应该比较值得信赖吧,一个异地机房的服务器宕机导致同一机房的网络抖动也不太科学吧。
--=====================================================================
另外一个错误提示为:A与挂掉的C握手未在40秒内完成握手

难道群集节点之间这么重感情么?跟一个挂掉的节点握手都等待这么长时间?要不要等到地老天荒呢?
科普下,如果出现类似状况,如果发生宕机的服务器无法尽快重启成功,在故障转移群集无法正常启动下,可以使用 net stop clussvc来停止本地群集服务器,然后再使用net start clussvc /fq来强制将本地群集服务启动,以便尽快使Alwayson回复正常提供服务。
--====================================================================
一些不太靠谱的建议,供各位参考:
1. 对于跨机房的仲裁节点,能不用还是别用吧,实在不行在同机房弄个服务器做文件共享仲裁也行
2. 两节点的故障转移群集,一定要配置文件共享或磁盘见证
3. 群集属性中策略一栏,尽量配置下““指定时段内重新启动的最多次数”:

--====================================================================
吐槽下,Alwayson号称秒级别的故障转移啊,很诱惑,的确很多时候这个让DBA很放心,收到故障短信的时候,早已自动转移并恢复提供服务,DBA可以放心地洗个澡刷个牙换身衣服再来处理故障。但是理想是美好的,现实是残酷的,AO大部分情况下还算给力,出现BUG无法正常切换的几率较低(注意是较低不是没有),但架不住坑爹的Windows故障转移群集,地基不好,楼再结实也容易塌啊!
期望SQL SERVER能再次崛起,也期望作为SQL SERVER DBA能再像以前那样骄傲地说“SQL SERVER,肯定没问题”。
SQL Server--疑难杂症之坑爹的Windows故障转移群集(转)的更多相关文章
- SQL Server--疑难杂症之坑爹的Windows故障转移群集
--============================================================== 估计是春节前最后一次写博客,也估计是本年值班最后一次踩雷,感叹下成也S ...
- SQL Server ->> 高可用与灾难恢复(HADR)技术 -- AlwaysOn(实战篇)之建立活动目录域、DNS服务器和Windows故障转移群集(准备工作)
因为篇幅原因,AlwaysOn可用性组被拆成了两部分:理论部分和实战部分.而实战部分又被拆成了准备工作和AlwaysOn可用性组搭建. 三篇文章各自的链接: SQL Server ->> ...
- 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)
从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...
- 搭建Windows故障转移群集
标签:SQL SERVER/MSSQL SERVER/数据库/DBA/windows 概述 本章内容主要讲述搭建windows故障转移群集 环境: 域服务器:windows server 2008 R ...
- SQL Server ->> 高可用与灾难恢复(HADR)技术之 -- Windows故障转移群集
WSFC 群集 (WSFC cluster)“Windows Server 故障转移群集”(WSFC) 群集是一组独立的服务器,它们共同协作以提高应用程序和服务的可用性. 故障转移群集实例 (Fail ...
- Windows故障转移群集(WSFC)的备份和恢复
使用wbadmin进行备份和恢复将C盘数据备份到E盘查看备份的版本以及包含的items模拟群集角色被误删除进行恢复操作检查恢复的效果 WSFC群集的备份和恢复功能是使用Windows Server B ...
- (转)从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)
原文地址: http://www.cnblogs.com/lyhabc/p/4682028.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第二篇,主要讲述如何搭建故障转移集 ...
- (转载) 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)
这一篇是从0开始搭建SQL Server AlwaysOn 的第二篇,主要讲述如何搭建故障转移集群,因为AlwaysOn是基于Windows的故障转移集群的 在讲解步骤之前需要了解一下故障转移集群仲裁 ...
- Windows Server 2008 R2+SQL Server 2014 R2升级到Windows Server 2016+SQL Server 2016
环境: 操作系统:Windows Server 2008 R2 数据库:SQL Server 2014 因SQL Server 2016可以无域创建AlwaysOn集群,集群只剩下单节点也不会挂掉,故 ...
随机推荐
- vba 调用 countif 函数问题
源数据是A1:G18,需求是在K列显示A1:A18中各单元格重复出现的次数.在L列中是用countif函数直接计算的, Private Sub test() Dim rng As Range, i A ...
- .NET/C# 优化心得
网上的优化千篇一律,遂干脆自己写一个,总结总结网上说的与自己的想法. 1.关于sql方面的优化,详见Mysql语句的优化 2.对于不常更新的网页,使用静态页,使用 cdn 加速. 3.关于主从同步,如 ...
- rest_framework框架
rest_framework框架的认识 它是基于Django的,帮助我们快速开发符合RESTful规范的接口框架. 一 路由 可以通过路由as_view()传参 根据请求方式的不同执行对应不同的方法 ...
- PAT甲级1055 The World's Richest【排序】
题目:https://pintia.cn/problem-sets/994805342720868352/problems/994805421066272768 题意: 给定n个人的名字,年龄和身价. ...
- Linq多表联合查询,在View中绑定数据
Ⅰ→通过ViewData传递数据,不过需要新建一个类(用来存) NewClass(里面有表1的字段和表2的字段) public class JoinTab1_2 { public int ID { g ...
- 基于LSD的直线提取算法
https://blog.csdn.net/tianwaifeimao/article/details/17678669 文献翻译:https://blog.csdn.net/YuYunTan/art ...
- Windows环境下安装Linux
怎样实现在现有的Windows系统上安装Linux,实现双系统启动
- iOS 修改TabBar的item间距
@interface HPTabBarController ()<UITabBarControllerDelegate>//继承自UITabBarController @property ...
- Delphi中DLL初始化和退出处理
来自delphibbs: zhousy_2000, 时间: 2005-09-13 13:53:00, ID: 3203484 <1>利用Unit的Initalization与Finaliz ...
- SR锁存器
CRM(临界连续模式)BOOST PFC 电路控制系统 SR锁存器 S和R都等于0的时候为什么有两个不同的Q?正因为这样才叫锁存器.Q’是Q的取反,不可能相同.Q*和Q‘不一样.Q是Q*的前一个状态. ...