存储 频道

让你的应用不间断的远程集群技术

【IT168 资讯】高可用性(HA)集群通过一组计算机系统提供透明的冗余处理能力,从而实现不间断应用的目标。

高可用性(High Availability,简称HA)集群是共同为客户机提供网络资源的一组计算机系统。其中每一台提供服务的计算机称为节点(Node)。当一个节点不可用或者不能处理客户的请求时,该请求会及时转到另外的可用节点来处理,而这些对于客户端是透明的,客户不必关心要使用资源的具体位置,集群系统会自动完成。
.


HA集群系统硬件拓扑形式

基于共享磁盘的HA集群系统通过共享盘柜实现集群中各节点的数据共享,包含主服务器、从服务器、存储阵列三种主要设备,以及设备间的心跳连接线。

而基于磁盘镜像的HA集群系统不包含存储阵列。集群中两种服务器的本地硬盘通过数据镜像技术,实现集群中各节点之间的数据同步,从而实现集群的功能。

实际应用中,将节点1配置成“主服务器”,节点2配置成“从服务器”,主从服务器有各自的IP地址,通过HA集群软件控制,主从服务器有一个共同的虚拟IP地址,客户端仅需使用这个虚拟IP,而不需要分别使用主从IP地址。这种措施是HA集群的首要技术保证,该技术确保集群服务的切换不会影响客户IP层的访问。

公网(Public Network)是应用系统实际提供服务的网络,私网(Private Network)是集群系统内部通过心跳线连接成的网络。

心跳线是HA集群系统中主从节点通信的物理通道,通过HA集群软件控制确保服务数据和状态同步。不同HA集群软件对于心跳线的处理有各自的技巧,有的采用专用板卡和专用的连接线,有的采用串并口或USB口处理,有的采用TCP/IP网络处理,其可靠性和成本都有所不同。近几年,基于TCP/IP技术的心跳线因其成本低、性能优异而被广泛采用。具体实现中主从服务器上至少各需配置两块网卡。
.


HA集群软件体系结构

HA集群软件是架构在操作系统之上的程序,其主要由守护进程、应用程序代理、管理工具、开发脚本等四部分构成,应用服务系统是为客户服务的应用系统程序,比如MS SQL Server,Oracle,Sybase,DB2 UDB,Exchange,Lotus Notes等应用系统软件。

不是每一个应用程序都能够实现HA集群管理,也不是每一个HA集群软件可以管理所有的应用程序,这是因为其代理模块(Agent)有不同的功能。HA软件的代理模块一般支持使用频度最高的软件,如上述所列举的数据库系统和邮件系统,但为了能够支持更多应用实现HA集群,有的HA软件开放二次开发接口。
.


主从节点资源配置

HA集群软件的本质是当主服务器出现故障时,从服务器及时接管主服务器的资源,这些资源包括处理器、内存进程和磁盘数据。接管进程意味着接管该服务进程的内存数据列表,采用共享磁盘技术方式的集群无需做存储数据接管,采用磁盘镜像技术方式的集群则使用本机的存储数据。

主从服务器的资源(处理器、内存、磁盘)配置具有科学性和技巧性。系统物理内存过低,会使系统频繁使用效率低下的“虚拟内存”,导致系统反应迟钝,也使得客户端响应缓慢,甚至出现“系统服务超时(Timeout)”形态的系统报错,没有达到高可靠的目的。所以,HA集群系统要求从服务器(故障切换节点)的内存容量应不小于主服务器的内存容量,其内存配置应该至少为应用系统对内存的基本需求。

从节点服务器需要的CPU数量应以不间断客户服务为目的。其CPU处理能力应不小于主服务器的CPU处理能力,若板卡、CPU等型号相同,从服务器的CPU个数应不少于主服务器的CPU个数。

采取磁盘镜像的从服务器存储空间应不小于主服务器存储空间。

总之,从节点资源的各项指标应该不低于主节点资源的各项指标。若系统采用多个主节点向一个从节点容灾时(N+1模式),从节点资源的配置策略需要依据系统管理员对整个系统定义的容灾安全级别来确定。假如主节点的个数为M,从节点的个数为1,系统管理员定义允许同时容忍N(N≤M)个主节点宕机,那么从节点的资源配置应为最大前N个主节点资源的各项指标之和。

0
相关文章