计算机中的集群有哪些含义和用途

● 集群的定义

集群,是指一组相互独立的计算机,利用高速通信网络组成的一个计算机系统,每个集群节点(即集群中的每台计算机)都是运行其自己进程的一个独立服务器。这些进程可以彼此通信,对网络客户机来说就像形成了一个单一系统,协同起来向用户提供应用程序、系统资源和数据,并以单一系统的模式加以管理。一个客户机与集群相互作用时,集群像是一个独立的服务器,而实际上是一组服务器。

● 为什么要使用集群?

1,高性能

一些计算密集型应用,如:天气预报、核试验模拟,需要计算机要有很强的运算处理能力,现有的技术,即使普通的大型机其计算也很难胜任。这时,一般都使用计算机集群技术,集中几十台基至上百台计算机的运算能力来满足要求。提高处理性能的能力一直是集群技术研究的一个重要目标之一。

2,低成本

通常一套集群配置,只需要若干台服务器主机即可。与价值上百方的专用超级计算机相比便宜了很多。在达到同样性能的条件下,采用计算集群比采用同等运算能力的大型计算机具有更高的性价比。

3,高可扩展性

通常情况下,用户若想扩展系统能力,不得不购买更高性能的服务器,才能获得额外所需的CPU和存储器。如果采用集群技术,则只需要将新的单个服务器加入现有集群中即可,对于客户来看,服务无论从连续性还是性能上都几乎没有变化,系统在不知不觉中完成了升级。

4,高可靠性

集群技术使系统在故障发生时仍可以继续工作,将系统停机时间减到最小。集群系统在提高系统的可靠性的同时,也大大减小了系统故障带来的业务损失。

5,性能

网络服务的工作负载通常是大量相互独立的任务,通过一组服务器分而治之,可以获得很高的整体能。

6,性能/价格比

组集群系统的PC服务器或RISC服务器和标准网络设备因为大规模生产,降低了成本,价格低,具有最高的性能/价格比。若整体性能随着结点数的增长而接近线性增加,该系统的性能/价格比接近于PC服务器。所以,这种多处理器系统具有更好的性能/价格比。

7,可伸缩性

系统集群中的结点数目可以增长到几千个,乃至上万个,其伸缩性远超过单台超级计算机。

8,高可用性

在硬件和软件上都有冗余,通过检测软硬件的故障屏蔽,由存活结点提供服务,可实现高可用性,当然,用服务器集群系统实现可伸缩网络服务也存在很多挑战性的工作。

9,透明性

如何高效地使得由多个独立计算机组成的松藕的集群系统构成一个虚拟服务器;客户端应用程序与集群系统交互时,就像与一台高性能、高可用的服务器交互一样,客户端无须作任何修改。部分服务器的切入和切出不会中断服务,这对用户也是透明的。

10,可管理性

要使集群系统变得易管理,就像管理一个单一映像系统一样。在理想状况下,软硬件模块的插入能做到即插即用。

11,可编程性

在集群系统上,容易开发应用程序。

● 集群的分类

集群计算机按功能和结构可以分成以下几类:

1,负载均衡集群

负载均衡集群为企业提供了更为实用、性价比更高的系统解决方案,使客户访问请求压力及负载可以在计算机集群中尽可能平均地分摊处理。客户访问请求负载通常包括应用程序处理负载和网络流量负载。这样的系统非常适合向使用同一组应用程序的大量用户提供服务。每个节点都可以承担一定的访问请求负载压力,并且可以实现访问请求在各节点之间动态分配,以实现负载均衡。

负载均衡集群一般通过一个或者多个前端负载均衡器将客户访问请求分发到后端的一组服务器上,从而达到整个系统的高性能和高可用性。这样的计算机集群有时也被称为服务器群(ServerFarm)。一般高可用性集群和负载均衡集群会使用类似的技术,或同时具有高可用性与负载均衡的特点。

2,高可用性集群

一般是指当集群中任意一个节点失效的情况下,其上的任务会自动转移到其他正常的节点上。该过程并不影响整个集群的运行。

当集群中的一个系统发生故障时,集群软件讯速做出反应,将该系统的任务分配到集群中其它正在工作的系统上执行。考虑到计算机硬件和软件的易错性,高可用性集群的主要目的是为了使集群的整体服务尽可能可用。如果高可用性集群中的主节点发生了故障,那么这段时间内将由次节点代替它。次节点通常是主节点的镜像。当它代替主节点时,它可以完全接管其身份,因此使集群系统环境对于用户是一致的。

高可用性集群使服务器系统的运行速度和响应速度尽可能快。它们经常利用在多台机器上运行的冗余节点和服务,用来相互跟踪。如果某个节点失败,它的替补者将在几秒钟或更短时间内接管它的职责。因此,对于用户而言,集群里的任意一台机器宕机,业务都不会受影响。

,3,高性能计算集群

高性能计算集群,也称并行计算。通常,高性能计算集群涉及为集群开发的并行应用程序,以解决复杂的科学问题。高性能计算集群对外就好像一个超级计算机,这种超级计算机内部由数十至上万个独立处理器组成,并且在公共消息传递层上进行通信以运行并行应用程序。