为什么当我关闭 SQL Server 故障转移群集实例中的 SQL 服务时,没有发生自动故障转移?

Rau*_*DBA 1 sql-server clustering failover sql-server-2014 failover-cluster-instance

我遇到了与自动故障转移相关的异常行为,因此在关闭 SQL Server 服务的情况下自动故障转移不起作用。集群磁盘似乎仍然连接到故障节点,但我无法找出导致此行为的最终问题。如果您能帮助我理解这个问题,我将非常感谢您。

出于测试目的,我在域控制器上创建了 iSCSI 目标,并连接了 2 个启动器:

在此输入图像描述

以下是有关我的集群的详细信息:

在此输入图像描述 在此输入图像描述 在此输入图像描述

以下是有关我的 SQL Server 服务的详细信息:

在此输入图像描述 在此输入图像描述 在此输入图像描述

以下是有关集群磁盘的详细信息(我只添加了其中一个磁盘的详细信息,因为两个磁盘是相同的):

在此输入图像描述 在此输入图像描述

现在,当我关闭 SQL Server 服务时,不会发生服务的自动故障转移:

在此输入图像描述

我测试了自动故障转移成功运行的其他场景:

  1. 手动故障转移
  2. 关闭活动节点
  3. 在活动节点上禁用适配器
  4. 在任务管理器中杀死sql server进程
  5. 在任务管理器中杀死sql代理服务进程

在上述所有场景中,资源均成功故障转移到另一个节点。

您能否帮我弄清楚当我关闭活动节点上的 SQL Server 服务时自动故障转移出了什么问题?

Ron*_*ldo 5

故障转移群集管理器是用于管理受群集保护的服务的工具,因此我相信如果管理员选择停止使用它的服务,则不应该对服务进行故障转移。这种情况可能会被解释为需要停止服务的某些维护。

您所描述的工作场景是在集群管理器之外的 5 个场景(除了显式对服务进行故障转移的一个选项),因此它们代表了在管理员不知情的情况下停止服务的情况(如果是管理员,他会已经使用了故障转移集群管理器,对吧?)并且集群承认这种情况是危险的,并按预期行事以重新建立服务。


相关:
集群中 SQL Server 的正确关闭