高可用性集群

1.介绍

从客户端来看,集群中的所有服务器是一个系统,就像一台大型的计算机系统,其上运行着客户端需要的应用服务。而高可用性的集群系统不仅能够保证用户的业务是连续的并且具有持续可用的特性,即具有7x24的可用性,还能在一年之内达到99.99%可用性。可用性即当用户需要数据和服务时,计算机能够根据请求完成响应。可用性是以百分比形式表示的一种系统正常工作的时间。

高可用性集群是一个高可用、无单点故障的系统。在高可用性的集群系统中,由于是多台服务器在高可用性的集群系统软件的管理下为客户端提供服务,故每一个计算机的部件都有冗余备份,如服务器的主板、网卡、网络、电源系统、风扇系统、应用软件、存储设备 (Disk Array)等等,其中最重要的是数据存放的介质要有冗余保护,一旦某个部件出现问题,冗余部件会自动接管故障部件的工作,也就是说某台服务器出现故障,则备份服务器将在集群软件的指挥下自动接管故障服务器的工作,从而消除了此故障对整个系统的影响。现在常用的双机热备系统仅仅是只有两个节点的、最简单的集群系统,是高可用性集群系统的特例。

2.高可用性的集群系统主要包括以下几方面硬件组件:

(1)服务器组:在高可用性的集群系统中每个节点的服务器必须有自己的CPU、内存和磁盘。每个服务器节点的磁盘是用于安装操作系统和集群软件程序。

(2)对外提供服务的网络:集群系统中的服务器一般采用TCP/IP网络协议与客户端相连。每个服务器上都有自己的应用服务,客户端必须通过集群服务器中的网络通路来得到自己的服务。

(3)心跳信号通路:在高可用性的集群系统中每个节点必须有心跳接口,用于服务器节点之间互相监视和通信,以取得备援服务器的工作状态。常见的心跳信号可分别透过串行通讯线路(RS232)、TCP/IP网络和共享磁盘阵列互相传递信息。心跳线路最好使用二条不同的通迅路径,达到监视线路冗余的效果。

(4)数据共享磁盘:在高可用性的集群系统中由于运行的都是关键业务,故使用的存储服务器都应是企业级的存储服务器,这些存储服务器应具有先进技术来保障其数据安全。一般数据放在企业级的存储服务器的共享磁盘的空间中,它是各服务器节点之间维持数据一致性的桥梁,各服务器节点在集群软件的控制下不会同时访问共享磁盘。

高可用性集群系统的应用要根据实际需求来决定。只有当企业中运行关键业务的数字化信息系统,并且他们的业务需要7x24的高可用性,如各企业中的主数据库服务器、对外发布信息的服务器等,才需要采用高可用性集群技术,以保证数据永不丢失和系统永不停机 (Non-stop)。

3.常用的高可用性集群技术软件

现在市场上流行的高可用性集群软件的品种比较多,较常见的为:IBM公司出产的IBM HACMP,Legato公司的Legato Automated Availability Manager(LAAM) Engreprise,SUN公司的SUN Cluster,Veritas公司的Veritas Cluster Server,Microsoft公司的Microsoft Cluster Server(MSCS),SteelEyeTechnology公司的LifeKeeper等高可用性集群软件和EDI公司的EDI High Availability System双机热备系统等等。

(1)IBM HACMP

高可用性集群系统软件HACMP(High Availability Cluster Multi-Processing)是一种运行在RS/6000服务器上的高可用的集群软件。此集群技术支持并行数据访问,能够帮助提供冗余和容错恢复能力,完全满足关键性商务应用的需求。HACMP包含基于图形用户界面的工具,可以帮助方便有效的管理群集系统,对集群系统进行安装、配置。

HACMP的配置和使用十分灵活。单处理器和对称多处理器(SMP)都可以加入到具有高可用性的群集系统之中。可将不同规模的RS/6000服务器与磁盘阵列的系统混合在一起,以满足各种应用需求。

按照用户所使用的不同的应用,HACMP集群软件可以配置为多种模式:1.并发访问模式比较适合的环境是所有的处理器必须工作于同一工作负荷并共享数据;2.互备模式是处理器共享工作负荷并相互备份;3.热备份模式允许一个节点备份群集中任何其它的节点。无论选择哪种模式,HACMP都将提供数据访问和备份计划,帮助您优化应用程序的执行和扩展性,同时还可避免代价高昂的系统故障和停机时间。HACMP同样支持服务器针对应用恢复/重启进行配置,以便为关键性的商务应用提供保护。

(2)HACMP/ES和RS/6000集群技术

集群软件HACMP能够做到当某台服务器的应用出现故障时立即自动将应用切换到其它服务器,而且能够做到当一台服务器运行的多个应用中的一个出现故障时,只将此应用切换到其它服务器上而其它应用仍可在原服务器上继续运行;同时,还有针对应用系统的实时监测功能,当硬件出现故障时能及时向管理员报告。

RSCT(Reliable Scalable Cluter Technology)是一系列软件组件的集合,为IBM集群软件提供底层支持。通过使用RSCT,HACMP/ES可以就对整个软件基础架构提供保护。HACMP/ES可以对这类故障进行监控、检测和响应,使系统具有持续运作的能力。通过对HACMP/ES进行配置,可以响应数以百计的系统事件。除了这种高级保护之外,RSCT还允许HACMP/ES支持多达32个节点的集群系统。

在具有高可用性的环境中,HACMP的并行资源管理器提供多达8路的共享磁盘并行访问能力,可以在接管期间采取不同的设计,以满足不同的应用。

HACMP可与各种并行数据库产品,诸如IB—MDB2、Oracle通用数据库等协同工作,以便建立起松耦合的并行集群,提供高水平的系统可用性。 HACMP可创建复杂的并行访问集群,在该集群中,通过使用多达八台有效系统,并运行相同的应用、共享相同的物理资源,故障恢复启动的时间延迟能够达到最小。它可使用户无需中断工作流程,进行系统升级和维护。它可建立灵活的、面向集群的应用,以用于分布式网络,并通过集群管理器工具套件对网络活动进行监控。通过与AIX的逻辑卷管理器磁盘镜像相融合,改进磁盘的可用性。通过使用本地和远程的管理实用工具,对系统级的硬件错误进行检测和补偿。

HACMP能够诊测并响应以下三种类型的故障:网卡故障、网络故障和节点故障。

(1)网卡故障

在HACMP的集群结构中,除了TCP/IP网络以外,还有一个非TCP/IP网络,即为 RS232连线也称为“心跳”线,是专门用来诊测节点死机还是仅仅发生了网络故障。如下图所示,节点加入了cluster(即该节点上的HACMP已正常运行)中,该节点上的各个网卡、RS232串口、SSA卡或光纤接口卡就会不断地接收并发送Keep-Alive信号包,K-A的参数是可调的,针对以太网,当处于正常状态时,将每隔0.5秒发送一个K-A包,如果12个包丢失后HACMP确认对方网卡、或网络、或节点发生故障。因此,有了K-A 后,HACMP可以很轻易地发现网卡故障,因为某块网卡发生故障,发往该块网卡的K-A就会丢失。此时node A上的cluster—manager(HACMP的“大脑”)会产生一个swap-adapter的事件,并执行该事件的script。HACMP中提供了大部分通用事件的scripts,它们是用标准的AIX命令和HACMP工具来写的。

高可用性集群 - swee - 我的博客

 

每个节点上至少两块网卡,一块是提供对外服务/service网卡,另一块是待机/ standby网卡,用来在服务网卡失效时接替其工作,它的存在只有clustermanager知道,应用和client并不知道。一旦发生swap-adapter事件后,clustermanager将原来的service的IP地址转移到standby上,而standby地址转移到故障网卡上,同网络上其他节点进行ARP的刷新。网卡互换(swap-adapter)通常在几秒内就可完成,以太网为3秒,并且这种转换对应用和client来说是透明的,只发生延迟但连接并不中断。

(2)网络故障

如果发往node A上的service和standby网卡上的K-A包全都丢失,而RS232上的K-A仍然存在,那么HACMP软件断定node A仍然工作正常,是网络发生故障。此时HACMP执行一个network-down的事件script,通常这个script并不做什么事,只提供一个用户自行定义其行为的接口,用户可以根据自己的网络结构、用户数、是否有替代路径、使用的通讯软件、应用软件等来自行设计网络发生故障后应采取的行为。

(3)节点故障

如果网络上的K-A全部丢失,而且RS232上的K-A也丢失,那么HACMP软件断定该节点发生故障,一个node-down事件发生。此时将发生资源接管,即放在共享磁盘阵列上的资源将由备份节点接管,接管包括一系列操作:IP地址的漂移、接管共享硬盘、挂上逻辑卷、安装上文件系统、重新启动应用等等,其中,IP地址接管和应用的重启是由HACMP来实现,而其它是由AIX来完成。

当节点A发生故障时,HACMP将故障节点的servicelPaddress转移到备份节点上,网络上的client仍然使用这个IP地址,这个过程称为IP地址接管,如下图所示。

高可用性集群 - swee - 我的博客

 

当一个节点宕掉后,如果设置了IP地址接管,网络上的clients会自动连接到接管节点上;同样,如果设置了应用接管,该应用会在接管节点上自动重启,系统能继续对外提供服务。对于要实现接管的应用,只需在HACMP中把它们设置成 “applicationserver”,并告诉HACMP启动这个应用的startscript的全路径名和停止该应用的stopscript的全路径名。应用接管的配置在HACMP中十分简单,重要的是要正确编写startscript和stopscript脚本。用户一定要对自己的应用非常了解。

综上所述, HACMP只全权负责诊断网卡故障、网络故障和节点故障这三大类故障,并负责实现IP地址转换或接管,以及整个系统资源(硬件、文件、应用程序等)的接管。对于其他故障,结合AIX基本功能和HACMP提供的一些机制,如ErrorNotificationFacility,clinfo APl等,同样可以实现对故障的监控并促使AIX或者HACMP采取相应措施。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值