IT分销/经销数据完整性

数据完整性保护

任何一个集群系统在心跳线路出现故障,或者系统挂死的情况下都会出现集群分裂(Brain-Split)的情况:集群内的节点相互不能得知对方的状态。如果没有一个严格的机制去处理集群分裂,那用户的应用就有可能同时在多个节点上运行,这种情况下会造成共享资源的争用,造成用户数据的损坏。比如两台节点同时对共享磁盘上的数据进行写的操作,用户数据很可能就会被损坏,而且是无法恢复的。
PCL通过Shutdown Facility来处理集群分裂的情况,一旦某个节点在规定的时间范围内没有收到对方的心跳信号,那它就会将对方的节点状态改为LEFTCLUSTER,同时调用某个关机代理(Shutdown Agent)去将对方进行关机。在关掉对方并通过确认对方节点已处于关机状态之后,该节点才将对方的状态变为DOWN,同时会按照用户设置的切换策略进行应用的切换。在分裂发生之后,哪一台节点会被关掉,这是由用户设置的节点权重+应用权重来决定的。
Shutdown Agent是通过基于硬件的某种管理端口来对节点的电源进行控制(不是操作系统级的Shutdown),现今的PC Server大多数情况下都带有此类的管理端口,比如说HP的iLO,Blade Management,ATCA CMM等等,每种硬件需要不同的SA。SA只是一个脚本或者程序,它在被调用时会通过远程接入的方式来对服务器进行电源关闭和查询的操作,对于某种特定的硬件来说,我们只需要对操作方法进行简单的修改即可完成SA的开发工作。


PCL除了在节点级给予用户数据最大的保护完,在HA管理器方面同样也有一套严格的数据保护机制。用户的应用在切换过程中,必须要在一方应用的Offline操作完全执行完毕并且成功的条件下才会在另一方进行应用Online的操作,如果有任何一个资源出现“不一致”或者Offline操作不成功的情况,切换都会被阻止,从而最大限度的杜绝了共享资源争用的情况发生。
尽管高可靠性是RMS的目标,但在数据可能受到破坏的任何情况下,数据完整性优先于高可靠性。
参与0

0同行回答

“答”则兼济天下,请您为题主分忧!

提问者

okin
擅长领域: 服务器安全数据库

相关问题

相关文章

问题状态

  • 发布时间:2008-09-24
  • 关注会员:0 人
  • 问题浏览:3632
  • X社区推广