我正在尝试了解故障转移群集功能如何与 Windows 2008 R2 配合使用,因为我将始终作为 SQL Server 2012 的一部分使用。
我已经能够找到有关如何设置它以及它的作用的信息。但是,我很难找到一份关于它实际如何详细工作的很好的技术文档(例如,对于 keepalived,有一些文档解释了心跳数据包的发送频率、它们的外观等)。
我知道这是一个非常宽泛的问题,但我想对该功能的机制有一个很好的理解。
我正在尝试了解故障转移群集功能如何与 Windows 2008 R2 配合使用,因为我将始终作为 SQL Server 2012 的一部分使用。
我已经能够找到有关如何设置它以及它的作用的信息。但是,我很难找到一份关于它实际如何详细工作的很好的技术文档(例如,对于 keepalived,有一些文档解释了心跳数据包的发送频率、它们的外观等)。
我知道这是一个非常宽泛的问题,但我想对该功能的机制有一个很好的理解。
由于它是专有产品,我认为您不会对协议甚至流程图进行二进制级别的分析,但我认为您可以从以下方面收集一些有用的信息:
The Design and Architecture of the Microsoft Cluster Service - 本文由我的一位 CompSci 英雄 Jim Gray(RIP,Jim)合着,发表于 1998 年 IEEE Proceedings of FTCS,将 Microsoft Cluster Server 产品的基本设计描述为它是在 Windows NT 4.0 中,后来的产品都是从它发展而来的。这里甚至还有一个流程图,尽管它对于当前几代产品来说可能已经过时了。
双节点 Windows Server 2000 群集中的网络故障检测和恢复- 这篇文章虽然过时,但确实描述了用于确定群集中节点网络可用性的状态机的底层细节。
[MS-CMRP]:故障转移群集:管理 API (ClusAPI) 协议规范- 本文档对产品如何在内部工作进行了陈述,认为其目的不是专门记录群集内通信协议和流程。
此功能在产品的更高版本中变得更加可配置。搜索命令行管理工具的名称
cluster.exe
,以及针对 Microsoft 网站的“heartbeat”一词,似乎给出了很多潜在的好结果(我发现的第一个点击中有一段包含短语“......这里每个节点在每个集群网络上都有一个接口,每个网络每 1.2 秒发送 N * (N - 1) 个单播心跳...”,这听起来就像你正在寻找的东西——尽管描述Windows 服务器 2003。)而且,当然,如果您想自己查看更多低级别,请自行设置并嗅探它。