高可用性概念总结

高可用性定义
高可用性(High Availability,简写为HA)指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间,以提高系统和应用的可用性。HA系统是目前企业防止核心计算机系统因故障停机的最有效手段。

高可用性的度量
计算机系统的可靠性用平均无故障时间(MTTF)来度量,即计算机系统平均能够正常运行多长时间,才发生一次故障。系统的可靠性越高,平均无故障时间越长。

可维护性用平均维修时间(MTTR)来度量,即系统发生故障后维修和重新恢复正常运行平均花费的时间。系统的可维护性越好,平均维修时间越短。

计算机系统的可用性定义为:MTTF/(MTTF+MTTR) * 100%。

由此可见,计算机系统的可用性定义为系统保持正常运行时间的百分比。

计算机产业界通常用如下表所示的"9"的个数来划分计算机系统可用性的类型。

高可用性的功能
1、软件故障监测与排除;
2、备份和数据保护;
3、管理站能够监视各站点的运行情况,能随时或定时报告系统运行状况,故障能及时报告和告警,并有必要的控制手段;
4、实现错误隔离以及主、备份服务器间的服务切换。

高可用性与容错技术有什么区别?
容错(FT)技术一般利用冗余硬件交叉检测操作结果。当发现异常时,故障部件会被隔离开而不影响用户的操作。

高可用性方案则利用更少的冗余部件同时由软件检测故障,一旦故障发生立即隔离损坏部件,通过提供故障恢复实现最大化系统和应用的可用性。

容错技术随着处理器速度的加快和价格的下跌而越来越多地转移到软件中。未来容错技术将完全在软件环境下完成,那时它和高可用性技术之间的差别也就随之消失了。

高可用性的工作方式
HA有主从方式和双工方式两种工作模式。一般来说,需要保证集群管理器的高可用性和节点的高可用性。

集群管理器的高可用性
为了屏蔽集群管理器的失效,需要为它建立一个备份机。主管理器和备份管理器上都运行着heartbeat程序,通过传送诸如"我活着"这样的信息来监测对方的运行状况。当备份机不能在一定的时间内收到这样的信息时,它就激活fake程序,让备份管理器接管主管理器继续提供服务;当备份管理器又从主管理器收到"我活着"这样的信息时,它就使fake程序无效,从而释放IP地址,这样主管理器就开始再次进行集群管理的工作了。

节点的高可用性
节点的高可用性可以通过不断监视节点的状态以及节点上的应用程序的运行状态来实现,当发现节点已经失效时,可以重新配置系统并且将工作负载交给那些运行正常的节点来完成。系统通过在集群管理器上运行mon精灵程序来监视集群中的实际服务器上的服务程序的运行状况。例如使用 fping.monitor 以一定的时间间隔来监视实际服务器是否还在正常运转;使用http.monitor 来监测http服务,使用ftp.monitor来监测ftp服务等等。如果发现某个实际服务器出了故障,或者是其上的服务已失败,则在集群管理器中删除有关这个实际服务器的所有规则。反之,如果不久以后发现系统已经重新能够提供服务,则增加相应的所有规则。通过这种方法,集群管理器可以自动屏蔽服务器和其上运行的服务程序的失效,并且当实际服务器正常运转时能将它们重新加入到集群系统中。

参考链接:
http://tech.ccidnet.com/art/304/20050610/266211_1.html

此条目发表在arch/management分类目录,贴了, 标签。将固定链接加入收藏夹。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据