计算机集群技术的解释
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【赛迪网独家特稿】集群技术是使用特定的连接方式,将相对于超级计算机便宜许多的计算机设备结合起来,提供与超级计算机性能相当的并行处理技术。早在七十年代就有人提出可以使用这种集群技术完成并行处理,但是由于受到当时网络交换技术的限制,集群系统在性能上与其他并行处理系统相距甚远,直到网络技术逐渐成熟的今天,它才具备了与超级计算机相匹敌的能力。
什么是集群
集群(Cluster)技术是指一组相互独立的计算机,利用高速通信网络组成一个计算机系统,每个群集节点(即集群中的每台计算机)都是运行其自己进程的一个独立服务器。这些进程可以彼此通信,对网络客户机来说就像是形成了一个单一系统,协同起来向用户提供应用程序、系统资源和数据,并以单一系统的模式加以管理。一个客户端(Client)与集群相互作用时,集群像是一个独立的服务器。
计算机集群技术的出发点是为了提供更高的可用性、可管理性、可伸缩性的计算机系统。一个集群包含多台拥有共享数据存储空间的服务器,各服务器通过内部局域网相互通信。当一个节点发生故障时,它所运行的应用程序将由其他节点自动接管。在大多数模式下,集群中所有的节点拥有一个共同的名称,集群内的任一节点上运行的服务都可被所有的网络客户所使用。
集群的特点
1.提供强大处理能力的高性能计算机系统:计算机集群可以通过负载均衡、并行处理、时间片处理等多种形式,将多台计算机形成高性能计算机集群。对用户端(Client)而言,计算机集群则是一个单一的系统,可以为用户提供高性能的计算机系统,而用户不用关心有多少计算机承担了系统实现的任务,而只需要关注系统的整体处理能力。因此,计算机集群可以用多台普通性能的计算机组成具有高性能的计算机系统,承担只有超级计算机才能胜任的工作。
2.提供高可用性的计算机系统:通过计算机集群技术组成的系统,可以确保数据和应用程序对最终用户的高可用性,而不管故障属于什么类型。即当计算机集群中的节点计算机出现软硬件故障的时候,高可用性集群提供了对软件和硬件失败后的接替。它将服务器镜像到备用系统或节点中,当主节点上的系统崩溃时,冗余节点就从替补角色转换到正式角色,并自动投入应用,从而保证了系统运行的不间断。
3.系统具有很强的可伸缩性:在系统的处理能力需要增加的时候,除了通过增加集群中每个计算机节点的单机处理能力(如通过增加CPU数量、增加内存大小等手段)外,还可以通过增加集群节点数,即通过向群集添加新的计算机节点,使服务随着处理器的添加而伸缩,从而增大应用程序吞吐量,以达到增加系统的整体处理能力的目的,完成系统的扩容。
小知识
计算机集群技术的分类
集群系统可以按照应用或结构等多个角度进行分类。
1.按计算机集群的应用目的可以分为高性能集群和高可用性集群;
2.按组成集群的计算机类型可以分为PC集群(COP:Cluster of PCs)、工作站集群(COW:Cluster of Workstations)、服务器集群(COS:Cluster of Servers)、SMP(对称多处理器)集群(CLUMP:CLUster of sMP)。
3.按处理机的位置和数量可以分为组级集群、部门级集群、企业级集群、国家级集群和国际级集群等不同级别的集群系统。
4.按构筑集群的目的可以分为专用集群和非专用集群
5.按照集群节点的操作系统分为Linux集群、Solaris集群、HP-UX集群、AIX集群、NT集群、VMS(虚拟存储机)集群、微软Wolfpack集群等;
集群技术的实现
根据计算机集群技术的应用,目前常用的计算机集群系统主要有两种配置方式,即采用N节点配置和N+1节点配置。
N节点配置:计算机集群由N(N最小为2)个计算机节点组成,所有节点在正常情况下都具有自己的用户和工作负载。一个故障节点的资源能够通过故障恢复被转移到另外一个节点,但当剩余服务器承担额外负载的时候,其性能将有所下降。系统组成如图1。
图1 N节点配置集群示意图
N+1节点配置:计算机集群由N+1(N最小为2)个计算机节点组成,其中一个节点为热待机节点,它在其它节点正常运行期间一直处于空闲模式。而当运行的节点中某节点发生故障时,则空闲节点负责接管故障节点的工作,从而避免整个系统的性能下降。但是,由于待机节点在正常情况下并不提供服务,因而成本较高。系统组成如图2。
图2 N+1节点配置集群示意图
实现原理
无论是何种计算机集群,其工作原理都是基于利用通信网络完成各节点主机的状态监控。该通信网络可以是各节点主机组成的局域网络(一般是TCP/IP网),也可以是非TCP/IP 网络,如在某些计算机集群中可以采用RS232通信连接各节点。
典型的计算机集群如图3。
图3 集群结构工作原理示意图
如图3所示,在集群中存在两个通信网络,一个是各节点主机用于系统数据通信的网络,一般是高速局域网。各节点与该网络通过一主一备两条链路连接,保持网络冗余,提高防止网络故障的能力;另一个则是用于传递节点间集群信息的网络,如图中心跳网络所示。心跳网络可以是TCP/IP网络,也可以是非TCP/IP网络,主要用于传递各节点之间通信的心跳(Heart-Beat)信号。另外,有的集群系统也可以通过共享存储系统提供传递心跳信号。在图中所示工作网络、心跳网络和共享存储中会有两个网络承载H-B信号的传递,从而避免因为某个单一的网络出现故障而误认为节点故障。
集群系统一般可以诊测并响应于三种类型的故障:网卡故障,网络故障,节点故障。下面就这三种故障分别进行简要的分析。
1.网卡故障
如图所示,集群结构中每个节点都通过双网卡与工作网络相连,即一主一备两条链路。在各节点正常工作的时候,工作网络除用于传递工作数据外,也用于传递H-B信号。同时心跳网络只传递H-B信号。即每隔一段时间各节点之间相互传递H-B信号,确认各节点都处于正常工作状态。