群集机头节点在任何指定时间均处于以下几种状态之一:
|
这些状态之间的转换发生在两项操作过程中:接管和故障恢复。
接管可在任何时间发生;如上所述,只要检测到对等设备故障就会尝试接管。也可使用群集配置 CLI 或 BUI 手动触发接管。这对于测试目的以及执行滚动软件升级(升级一个机头的同时,另一个机头提供运行较旧软件的服务,新软件经过验证后升级第二个机头)非常有用。最后,在引导一个机头且检测到其对等设备不存在时将进行接管。这样一来,一个机头发生永久性故障或两个机头暂时断电时,服务便可正常恢复。
故障恢复从不自动执行。修复并引导发生故障的机头后,它将重新链接群集(重新同步所有资源、资源属性和资源所有权的配置),并继续等待管理员执行故障恢复操作。在此之前,最初未发生故障的机头将继续提供所有服务。这样一来,便可在机头恢复生产服务之前全面调查最初触发接管的问题、验证新软件修订版或执行其他管理任务。由于故障恢复会对客户机造成中断,因此应根据特定于业务的需求和过程进行安排。存在一项例外:假设机头 A 发生了故障,机头 B 已接管。机头 A 重新链接群集后,如果检测到机头 B 不存在或已发生故障,机头 A 可以接管。原则是即使没有机会调查初始问题,提供服务总比不提供要好。因此,尽管故障恢复到之前发生故障的机头这项操作从不自动执行,但在任何时间依然都能执行接管。
设置群集时,初始状态包括启动设置的节点处于 OWNER(所有者)状态,另一个节点处于 STRIPPED 状态。执行初始故障恢复操作以将相应部分的共享资源交予 STRIPPED 节点后,两个节点都将处于 CLUSTERED 状态。如果两个群集节点都发生故障或关闭电源,则同时启动后将执行仲裁,其中一个将成为 OWNER(所有者)节点,另一个则成为 STRIPPED 节点。
故障恢复期间,所有外部资源(分配给对等设备的资源)都将导出,然后由对等设备导入。因发生故障而无法导入的池将触发 STRIPPED 节点的重新引导。如果尝试对发生故障的池进行故障恢复,会因导入失败而重新引导 STRIPPED 节点。