记一次 Always on group 故障切换失败的处理

本文记录了一次在SQL Server 2014的Always On环境中遇到的故障切换失败问题。在尝试手动切换时,遇到了错误41066和41160,经过一系列排查,包括检查服务状态、验证群集、更改节点状态和删除Listener,最终发现故障节点的子网掩码配置不正确是导致问题的原因。修复子网掩码后,故障切换得以顺利完成。
摘要由CSDN通过智能技术生成

        最近遭遇了一次有点奇怪的Always on group 故障切换,Always on group由两台SQL Server 2014组成,增加了一个文件共享见证确保可以完成标准的仲裁。

        数据量很小,几G的数据。由于某些原因,需要手工做一下故障切换,挑选了一个没有业务操作的时间进行故障切换,结果意外的失败了。错误信息如下,有点莫名其妙的感觉:

息 41066,级别 16,状态 0,第 1 行
无法使 Windows Server 故障转移群集(WSFC)资源(ID“fb73b4a5-8ab1-4347-aaa9-c80a08b97d43”)联机(错误代码 5942)。WSFC 服务可能未在运行、可能在其当前状态下无法访问,或是 WSFC 资源未处于可接受请求的状态。有关此错误代码的信息,请参阅 Windows 开发文档中的“系统错误代码”。
消息 41160,级别 16,状态 0,第 1 行
无法将可用性组“XXXX”的本地可用性副本指定为主副本。该操作遇到了 SQL Server 错误 41066,已被终止。请查看前面的错误和 SQL Server 错误日志,以了解有关该错误和更正操作的更多详细信息。

        检查Always on的工作状态,一切正常,重启服务也能立即恢复正常的Always on状态。群集的工作也十分正常,对群集做验证,也没有发现任何不对的地方。

       切换是必须要做的,找不到原因只能Try and Try了,反正现在月黑风高,晕,是夜深人静。先把文件共享验证去掉,失败,无法去掉,换用Powershell脚本,这次成功了,但仍然无法切换。

        尝试将故障结点逐出再重新加入,操作非常顺利,看起来结点是正常的,但仍然无法切换。

        看来需要把Always on拆了重做,先删除Listener,删除完成之后尝试切换,居然十分顺利的成功切换了,看来问题是出在这个Listener上了。

        尝试在切换后把Listener加上,失败,报如下错误:

消息 41066,级别 16,状态 0,第 1 行
无法使 Windows Server 故障转移群集(WSFC)资源(ID“65d1d1c1-ed6d-456d-bfc4-9c19d5da431d”)联机(错误代码 5942)。WSFC 服务可能未在运行、可能在其当前状态下无法访问,或是 WSFC 资源未处于可接受请求的状态。有关此错误代码的信息,请参阅 Windows 开发文档中的“系统错误代码”。
消息 19476,级别 16,状态 4,第 1 行
尝试为侦听器创建网络名称和 IP 地址失败。WSFC 服务可能未在运行或在其当前状态下无法访问,或者为网络名称和 IP 地址提供的值可能不正确。请检查 WSFC 群集的状态并且由网络管理员来验证该网络名称和 IP 地址。

        这次的原因似乎有点清晰,但这个Listener之前是成功的,而且切回到原来的主副本,也能成功创建,所以这个Listener本身的信息应该没有什么问题。

        能怀疑的首要目标就是两个结点的网络配置了,对比了一下,故障结点网络配置中,子网掩码居然不一样。

        看来基本上不用排查了,问题应该在这里,后来和运维的同事确认后,把子网掩码改正确后,切换就很丝滑了

 

【本文在个人微信公共号ZJCXC上同步发表】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值