Sun Cluster 3.0 概念

高可用性框架

Sun Cluster 使用户和数据间“路径”上的所有组件都高度可用,这些组件包括网络接口、应用程序本身、文件系统和 多主机磁盘。一般情况下,如果一个群集组件可从系统中的任何单一(软件或硬件)故障中恢复,则它是高度可用的。

下表显示了 Sun Cluster 组件故障种类(硬件和软件)和高可用性框架中建立的恢复种类。

表 3-1 Sun Cluster 故障检测和恢复级别

群集资源故障 

软件恢复 

硬件恢复 

数据服务 

HA API,HA 框架 

N/A 

公共网络适配器 

网络适配器失败切换 (NAFO) 

多个公共网络适配器卡 

群集文件系统 

主要和辅助复制 

多主机磁盘 

镜像多主机磁盘 

卷管理(Solstice DiskSuite 和 VERITAS 卷管理器) 

硬件 RAID-5(例如 Sun StorEdge A3x00) 

全局设备 

主要和辅助复制 

到设备、群集传输结点的多个路径 

专用网 

HA 传输软件 

多个专用硬件独立网络 

节点 

CMM,失败快速保护驱动程序 

多个节点 

Sun Cluster 高可用性框架可迅速检测到节点故障,并在群集中的其余节点上为该框架资源创建一个新的 等效服务器。不会出现所有框架资源都不可用的情况。在恢复期间,未受崩溃节点影响的框架资源是完全可用的。而且,故障节点 的框架资源一恢复就立即可用。已恢复的框架资源不必等待其他所有框架资源都完全恢复。

可用性最高的框架资源恢复过程对于使用它的应用程序(数据服务)来说是透明的。框架资源访问的语义在整个节点 故障期间得到全面的保护。应用程序根本不知道框架资源已转移到另一节点。单个节点的故障对于在使用着该节点上的 文件、设备和磁盘卷的其他节点上的程序来说,是完全透明的。多主机磁盘的使用就是一个例证,这些磁盘具有连接多个节点的端口。

群集成员监视器

群集成员监视器 (CMM) 是一个分布式代理程序集,每个群集成员有一个代理程序。这些代理程序在群集互连中交换信息,以便:

与 Sun Cluster 的上一发行版不同,CMM 是完全在内核中运行的。

群集成员

CMM 的主要功能是,在任一给定时间加入群集的节点集上建立一个群集范围的协议。Sun Cluster 将此约束称作群集成员

为确定群集成员并最终保证数据的完整性,CMM:

有关群集如何防止自身划分多个独立群集的详细信息,请参见"定额和定额设备"

群集成员监视器重新配置

为确保数据免遭破坏,所有节点必须在群集成员上达成一致协议。需要时,CMM 将协调群集服务(应用程序)的群集重新配置, 以作为对故障的响应。

CMM 会从群集传输层接收到关于与其他节点连通性的信息。CMM 使用群集互连在重新配置期间交换状态信息。

检测到群集成员有更改后,CMM 执行群集的同步配置,这时群集资源可能会按群集新的成员被重新分配。

群集配置库 (CCR)

群集配置库 (CCR) 是专用的群集范围的数据库,用于保存与群集的配置和状态有关的信息。CCR 是一个分布式数据库。每个节点 上都有该数据库的完整副本。CCR 可保证所有节点都有该群集“世界”的一致视图。为避免破坏数据,每个节点都要知道 群集资源的当前状态。

CCR 是在内核中实现的,是一种高度可用的服务。

CCR 使用两阶段提交算法用于更新:更新必须在所有群集成员上都成功完成,否则此更新将被回退。CCR 使用群集互连 来应用分布式更新。


小心:小心:

尽管 CCR 是由文本文件组成的,但也绝不要手动编辑 CCR 文件。每个文件都有一个校验和 来保证一致性。手动更新 CCR 文件可能会导致某个节点或整个群集不能工作。


CCR 靠 CMM 来保证群集只有在定额建立后才能运行。CCR 负责跨群集验证数据的一致性,需要时执行恢复,并为数据更新提供工具。