集群扫盲篇:Linux高性能计算集群概述

上传人:飞*** 文档编号:41327629 上传时间:2018-05-29 格式:DOC 页数:6 大小:34KB
返回 下载 相关 举报
集群扫盲篇:Linux高性能计算集群概述_第1页
第1页 / 共6页
集群扫盲篇:Linux高性能计算集群概述_第2页
第2页 / 共6页
集群扫盲篇:Linux高性能计算集群概述_第3页
第3页 / 共6页
集群扫盲篇:Linux高性能计算集群概述_第4页
第4页 / 共6页
集群扫盲篇:Linux高性能计算集群概述_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《集群扫盲篇:Linux高性能计算集群概述》由会员分享,可在线阅读,更多相关《集群扫盲篇:Linux高性能计算集群概述(6页珍藏版)》请在金锄头文库上搜索。

1、1 1、集群、集群1.1 什么是集群简单的说,集群(cluster)就是一组计算机,它们作为一个整体向用户提供一组网络资源。这些单个的计算机系统就是集群的节点(node)。一个理想的集群是,用户从来不会意识到集群系统底层的节点,在他/她们看来,集群是一个系统,而非多个计算机系统。并且集群系统的管理员可以随意增加和删改集群系统的节点。1.2 为什么需要集群集群并不是一个全新的概念,其实早在七十年代计算机厂商和研究机构就开始了对集群系统的研究和开发。由于主要用于科学工程计算,所以这些系统并不为大家所熟知。直到 Linux 集群的出现,集群的概念才得以广为传播。对集群的研究起源于集群系统的良好的性能

2、可扩展性(scalability)。提高 CPU 主频和总线带宽是最初提供计算机性能的主要手段。但是这一手段对系统性能的提供是有限的。接着人们通过增加 CPU 个数和内存容量来提高性能,于是出现了向量机,对称多处理机(SMP)等。但是当 CPU 的个数超过某一阈值,象 SMP 这些多处理机系统的可扩展性就变的极差。主要瓶颈在于 CPU 访问内存的带宽并不能随着 CPU 个数的增加而有效增长。与 SMP 相反,集群系统的性能随着 CPU 个数的增加几乎是线性变化的。图 1 显示了这中情况。集群系统的优点并不仅在于此。下面列举了集群系统的主要优点:高可扩展性:如上所述。高可用性:集群中的一个节点失

3、效,它的任务可以传递给其他节点。可以有效防止单点失效。高性能:负载平衡集群允许系统同时接入更多的用户。高性价比:可以采用廉价的符合工业标准的硬件构造高性能的系统。1.2.1 集群系统的分类虽然 根据集群系统的不同特征可以有多种分类方法,但是一般我们把集群系统分为两类:高可用(High Availability)集群,简称 HA 集群。这类集群致力于提供高度可靠的服务。高性能计算(High Perfermance Computing)集群,简称 HPC 集群。这类集群致力于提供单个计算机所不能提供的强大的计算能力。2 2、高可用集群、高可用集群 2.1 什么是高可用性计算机系统的可用性(avai

4、lability)是通过系统的可靠性(reliability)和可维护性(maintainability)来度量的。工程上通常用平均无故障时间(MTTF)来度量系统的可靠性,用平均维修时间(MTTR)来度量系统的可维护性。于是可用性被定义为:MTTF/(MTTF+MTTR)*100%业界根据可用性把计算机系统分为如下几类:表 1. 系统可用性分类可用比例(Percent Availability) 年停机时间(downtime/year) 可用性分类99.5 3.7 天 常规系统(Conventional)99.9 8.8 小时 可用系统(Available)99.99 52.6 分钟 高可用

5、系统(Highly Available)99.999 5.3 分钟 Fault Resilient99.9999 32 秒 Fault Tolerant对于关键业务,停机通常是灾难性的。因为停机带来的损失也是巨大的。下面的统计数字列举了不同类型企业应用系统停机所带来的损失。表 2. 停机给企业带来的损失应用系统 每分钟损失(美元)呼叫中心(Call Center) 27000企业资源计划(ERP)系统 13000供应链管理(SCM)系统 11000电子商务(eCommerce)系统 10000客户服务(Customer Service Center)系统 27000随着企业越来越依赖于信息技术

6、,由于系统停机而带来的损失也越拉越大。2.2 高可用集群高可用集群就是采用集群技术来实现计算机系统的高可用性。高可用集群通常有两种工作方式:容错系统:通常是主从服务器方式。从服务器检测主服务器的状态,当主服务工作正常时,从服务器并不提供服务。但是一旦主服务器失效,从服务器就开始代替主服务器向客户提供服务。负载均衡系统:集群中所有的节点都处于活动状态,它们分摊系统的工作负载。一般Web 服务器集群、数据库集群和应用服务器集群都属于这种类型。关于高可用集群的讨论很多,这里就不进行深入的阐述了。3 3、高性能计算集群、高性能计算集群 3.1 什么是高性能计算集群简单的说,高性能计算(High-Per

7、formance Computing)是计算机科学的一个分支,它致力于开发超级计算机,研究并行算法和开发相关软件。高性能计算主要研究如下两类问题:大规模科学问题,象天气预报、地形分析和生物制药等;存储和处理海量数据,象数据挖掘、图象处理和基因测序;顾名思义,高性能集群就是采用集群技术来研究高性能计算。3.2 高性能计算分类高性能计算的分类方法很多。这里从并行任务间的关系角度来对高性能计算分类。3.2.1 高吞吐计算(High-throughput Computing)有一类高性能计算,可以把它分成若干可以并行的子任务,而且各个子任务彼此间没有什么关联。象在家搜寻外星人( SETIHOME -

8、Search for Extraterrestrial Intelligence at Home )就是这一类型应用。这一项目是利用 Internet 上的闲置的计算资源来搜寻外星人。SETI 项目的服务器将一组数据和数据模式发给 Internet 上参加 SETI 的计算节点,计算节点在给定的数据上用给定的模式进行搜索,然后将搜索的结果发给服务器。服务器负责将从各个计算节点返回的数据汇集成完整的数据。因为这种类型应用的一个共同特征是在海量数据上搜索某些模式,所以把这类计算称为高吞吐计算。所谓的Internet 计算都属于这一类。按照 Flynn 的分类,高吞吐计算属于 SIMD(Single

9、 Instruction/Multiple Data)的范畴。3.2.2 分布计算(Distributed Computing)另一类计算刚好和高吞吐计算相反,它们虽然可以给分成若干并行的子任务,但是子任务间联系很紧密,需要大量的数据交换。按照 Flynn 的分类,分布式的高性能计算属于MIMD(Multiple Instruction/Multiple Data)的范畴。3.3 Linux 高性能集群系统当论及 Linux 高性能集群时,许多人的第一反映就是 Beowulf。起初,Beowulf 只是一个著名的科学计算集群系统。以后的很多集群都采用 Beowulf 类似的架构,所以,实际上,

10、现在 Beowulf 已经成为一类广为接受的高性能集群的类型。尽管名称各异,很多集群系统都是 Beowulf 集群的衍生物。当然也存在有别于 Beowulf 的集群系统,COW 和 Mosix就是另两类著名的集群系统。3.3.1 Beowulf 集群简单的说,Beowulf 是一种能够将多台计算机用于并行计算的体系结构。通常Beowulf 系统由通过以太网或其他网络连接的多个计算节点和管理节点构成。管理节点控制整个集群系统,同时为计算节点提供文件服务和对外的网络连接。它使用的是常见的硬件设备,象普通 PC、以太网卡和集线器。它很少使用特别定制的硬件和特殊的设备。Beowulf 集群的软件也是随

11、处可见的,象 Linux、PVM 和 MPI。本文的以后几部分将详细介绍 Beowulf 集群系统的硬件、网络、软件和应用体系结构。3.3.2 Beowulf 集群和 COW 集群象 Beowulf 一样,COW(Cluster Of Workstation)也是由最常见的硬件设备和软件系统搭建而成。通常也是由一个控制节点和多个计算节点构成。COW 和 Beowulf 的主要区别在于:COW 中的计算节点主要都是闲置的计算资源,如办公室中的桌面工作站,它们就是普通的 PC,采用普通的局域网进行连接。因为这些计算节点白天会作为工作站使用,所以主要的集群计算发生在晚上和周末等空闲时间。而 Beow

12、ulf 中的计算节点都是专职于并行计算,并且进行了性能优化。它们采用高速网(Myrinet 或 Giganet)上的消息传递(PVM 或 MPI)进行进程间通信(IPC)。因为 COW 中的计算节点主要的目的是桌面应用,所以它们都具有显示器、键盘和鼠标等外设。而 Beowulf 的计算节点通常没有这些外设,对这些计算节点的访问通常是在管理节点上通过网络或串口线实现的。因为连接 COW 中计算节点的通常是普通的局域网,所以 COW 上的高性能应用通常是象SETIHOME 这样的 SIMD 的高吞吐计算。而 Beowulf 无论从硬件、网络和软件上都对需要频繁交换数据的 MIMD 应用做了特别的优

13、化。3.3.3 Mosix 集群实际上把 Mosix 集群放在高性能集群这一节是相当牵强的,但是和 Beowulf 等其他集群相比, Mosix 集群确实是种非常特别的集群, 它致力于在 Linux 系统上实现集群系统的单一系统映象 SSI(Single System Image)。Mosix 集群将网络上运行 Linux 的计算机连接成一个集群系统。系统自动均衡节点间的负载。因为 Mosix 是在 Linux 系统内核中实现的集群,所以用户态的应用程序不需要任何修改就可以在 Mosix 集群上运行。通常用户很少会注意到 Linux 和 Mosix 的差别。对于他来说,Mosix 集群就是运行

14、 Linux 的一台 PC。尽管现在存在着不少的问题,Mosix 始终是引人注目的集群系统。参考资料参考资料Linux HPC Cluster Installation, IBM Redbooks, http:/ eServer xSeries Clustering Planning Guide, IBM Redbooks, http:/ Clustering with CSM & GPFS, IBM Redbooks, http:/ Computing White Paper, Mark Baker, University of Portsmouth, UKBeowulf HOW-TO, h

15、ttp:/www.beowulf-underground.orgBeowulf Introduction and Overview, http:/www.beowulf.orgThe Mosix Howto, http:/www.mosix.orgOSCAR: A packaged Cluster software stack for High Performance Computing, http:/www.openclutergroup.org/Linux-HA Heartbeat System Design, http:/www.linux-ha.orgxCAT HOW-TO, http

16、:/www.x-CAT.orgMPICH, http:/www.mcs.anl.gov/mpi/mpich.PVM, http:/www.epm.ornl.gov/pvm/pvm_home.htmlOpenPBS, http:/www.openpbs.org/Maui, http:/www.supercluster.org/Condor Manual, Condor Team, University of Wisconsin-MadisonGFS, http:/globalfilesystem.org/Intermezzo, http:/inter-mezzo.org/Coda, http:/www.coda.cs.cmu.edu/

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号