Linux集群是最近几年最为主要的一种HPC硬件,集群(Cluster)就是一组MPP的集合。集群中的处理器通常被称为节点,它具有自己的CPU、内存、操作系统、I/O子系统,并且可以与其他节点进行通信。目前市场上出现了很专业的集群设备,但有很多地方都使用常见的工作站运行Linux和其他开放源码软件来充当集群中的节点。与专业的硬件设备相比,使用Linux工作站和相应的开放源码软件来实现集群功能的最大优势在于成本低,且企业可根据自身的需求进行二次开发。
(一)集群技术的用途
我们知道,每台服务器所能承载的连接和负载量都是有限的,为了使服务器能够承载更大的负载,我们一般采用对称多处理(Symmetric Multi-Processor,SMP)技术来提升服务器的整体性能。但是,SMP服务器的可扩展能力有限,显然不能满足高可伸缩、高可用网络服务中的负载处理能力不断增长的需求。随着负载处理能力不断增长,会导致服务器不断升级。这种服务器升级有下列不足:一是升级过程烦琐,机器切换会使服务暂时中断,并造成原有计算资源的浪费;二是越高端的服务器,所花费的代价越大;三是SMP服务器是单一故障点(Single Point of Failure),一旦该服务器或应用软件失效,就会导致整个服务的中断。而通过高性能网络或局域网互联的服务器集群则可以解决上述问题,并能实现高可伸缩、高可用网络服务。与提升单个服务器配置方法相比,服务器集群技术具有以下典型的优点:
1.性能
网络服务的工作负载通常是大量相互独立的任务,通过一组服务器分而治之,可以获得很高的整体性能。
2.性能/价格比
组成集群系统的PC服务器或RISC服务器和标准网络设备因为大规模生产降低了成本,价格低,具有最高的性能/价格比。若整体性能随着节点数的增长而接近线性增加,该系统的性能/价格比接近于PC服务器。所以,这种松耦合结构比紧耦合的多处理器系统具有更高的性能/价格比。
3.可伸缩性
集群系统中的节点数目可以增长到几千,乃至上万个,其伸缩性远超过单台超级计算机。
4.高可用性
集群技术在硬件和软件上都有冗余,通过检测软硬件的故障,将其屏蔽,由存活节点提供服务,以实现高可用性。(www.xing528.com)
(二)Linux集群类型
专家按照集群侧重点的不同,把Linux集群分为以下三类:
1.高可用性集群
最简单的高可用性集群有两个节点:一个节点是活动的,另一个节点是备用的。备用节点会一直对活动节点进行监视,一旦活动节点出现故障,备用节点就会接管它的工作,这样就能使关键的系统能够持续工作。
2.负载均衡集群
负载均衡集群通常会在非常繁忙的Web站点上采用,它们由多个节点来承担相同站点的工作,每个获取Web页面的新请求都被动态路由到一个负载较低的节点上。动态路由是指路由器能够自动地建立自己的路由表,并且能够根据实际情况的变化适时地进行调整。
3.高性能集群
高性能集群用来运行那些对时间敏感的并行程序,它们对科学社区意义特殊。高性能集群通常会运行一些模拟程序和其他对CPU非常敏感的程序,这些程序在普通的硬件上运行需要花费大量的时间。
高可用性集群、负载均衡集群及高性能集群三者的工作原理不同,适用于不同类型的服务。通常负载均衡集群适用于提供静态数据的服务,如HTTP服务;而高可用性集群既适用于提供静态数据的服务,又适用于提供动态数据的服务,如数据库等。高可用性集群之所以能适用于提供动态数据的服务,是由于节点共享同一存储介质,如RAID BOX。也就是说,在高可用性集群内,每种服务的用户数据只有一份,存储在共用存储设备上,在任一时刻只有一个节点能读写这份数据。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。