Sun Cluster 3.0 U1 概念

故障防护的故障快速防护机制

群集框架通过一种机制确保故障节点无法重新引导并开始写入共享存储器,这种机制被称为故障快速防护

属于群集成员的节点对它们可以访问的磁盘(包括定额磁盘)持续启用一个特定 ioctl,MHIOCENFAILFAST。该 ioctl 是对磁盘驱动程序的指令,如果某磁盘被其它节点保留而无法由该节点访问,该指令使该节点能够将自身处于应急状态。

MHIOCENFAILFAST ioctl 指示驱动程序检查节点对磁盘发出的每个读写操作所返回的错误,查看是否返回 Reservation_Conflict 错误代码。ioctl 定期在后台向磁盘发出一个测试操作,检查是否出现 Reservation_Conflict。如果系统返回 Reservation_Conflict 消息,前台和后台控制流路径均进入应急状态。

对于 SCSI-2 磁盘,保留不是永久性的-它们无法免于节点重新引导。对于具有持久性组保留 (PGR) 的 SCSI-3 磁盘,保留信息存储在磁盘上,并在多次节点重新引导后仍保持有效。无论使用 SCSI-2 磁盘还是 SCSI-3 磁盘,故障快速防护机制的工作方式都是一样的。

如果某节点与群集中其它节点失去连接,并且它不属于可获取定额的分区的一部分,它将被另一节点强行从该群集中删除。属于可获取定额的分区一部分的另一节点将保留放置在共享磁盘上,当不具备定额的节点试图访问共享磁盘时,它将接到保留冲突消息,并在故障快速防护机制的作用下进入应急状态。

进入应急状态之后,节点可能重新引导,试图重新连接群集;也可能停留在 OpenBoot PROM (OBP) 提示符状态下。所采取的措施取决于 OBP 中 auto-boot? 参数的设置。