我的两节点 SQL 集群上的 SQL Server 角色的故障转移属性如下:
Maximum Failures in the Specified Period: 2
Time period: 6 (hrs)
我希望强制故障转移(通过手动移动服务或重新启动所有者节点)两次以上会导致资源保持“离线”状态,但事实并非如此。我可以自由地故障转移看似无限的次数,而不会产生任何影响。
该属性的目的是什么?如何正确模拟事物以测试行为?
我的两节点 SQL 集群上的 SQL Server 角色的故障转移属性如下:
Maximum Failures in the Specified Period: 2
Time period: 6 (hrs)
我希望强制故障转移(通过手动移动服务或重新启动所有者节点)两次以上会导致资源保持“离线”状态,但事实并非如此。我可以自由地故障转移看似无限的次数,而不会产生任何影响。
该属性的目的是什么?如何正确模拟事物以测试行为?
没错,事实并非如此。手动移动服务并不是失败 - 你已经告诉它继续并更改所有者,这不是失败。重启也不被视为失败,只要它受到控制——例如,我运行了shutdown -r 命令或单击start->restart。你告诉服务器,“嘿,有一个很好的受控重启 - 不用担心。”
AFAIK 该属性的目的是让您不会无限期地在服务器周围打乒乓球,这可能会导致更多问题。如果您用尽重试次数,隐含地假设每个节点都试图托管该角色但没有成功 - 那么为什么要不停地翻来覆去导致更多的日志无缘无故地喷出呢?
模拟 - 有一个实际的故障......强制关闭(不干净)机器(故意蓝屏 - 类似于 NotMyFault)。从它下面撕掉磁盘,这会导致实际故障。