ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:78.87KB ,
资源ID:28315672      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/28315672.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Beowulf集群的研究与搭建.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Beowulf集群的研究与搭建.docx

1、Beowulf集群的研究与搭建 毕业论文 论文题目(中文) Beowulf集群的研究与搭建 论文题目(外文) Research and construction of Beowulf cluster Beowulf集群的研究与搭建摘 要随着信息产业的不断发展,单台计算机的性能和稳定性越来越好,但是有些任务单台计算机还是难以完成,为此,一些人想到了用普通的PC机通过某种方式结合起来,形成一个高性能的系统,这种系统就叫做集群。集群系统使用方便,对软件、硬件设备的要求比较低,而且还价格低廉,适合于用来代替昂贵的超级计算机。而Beowulf集群系统是基于广泛应用于通用网络环境下由一些微机组成的计算机群

2、系统,它可以运行于多种操作系统(如Linux、Windows等)。作为一个高性能的计算系统,它具有很多优点,例如:廉价,易管理,性价比高等。在本文中,主要研究了Beowulf集群的框架与组成、在Linux操作系统下Beowulf集群系统的手工搭建方法,利用实验室现有的硬件设备和软件技术支持,设计并实现了一种基于Linux和MPI的集群系统。首先,本文详细研究了Beowulf集群的起源、分类与体系结构,从硬件支持、网络设计、环境配置等方面入手,研究并设计搭建Beowulf集群。从并行计算作为切入点,在了解了基于MPI和Linux集群系统的基本原理和思想,介绍了实现并行计算和集群中间件的几种关键技

3、术。其次,利用简便的硬件资源,合理的运用Linux系统的软件技术,通过配置硬件环境、分配网络地址、合理设置节点等,纯手工搭建Beowulf集群。最后,提出了可以采用基于静态分配和动态分配这两种分配策略去设计并行测试程序来检测集群的性能。可以用加速比来衡量集群系统的优劣。关键词:MPI;Beowulf;并行计算;集群系统;Linux Research and construction of Beowulf clusterAbstractWith the development of information industry, a single computer performance and b

4、etter stability, but some of the tasks a single computer is difficult to complete, therefore, some people thought combined with ordinary PC in some way, the formation of a high performance system, this system is called cluster. The cluster system is easy to use and has low requirements on software a

5、nd hardware, and it is also cheap, which is suitable for replacing expensive super computers.The Beowulf cluster system is based on the widely used in the general network environment by a number of computer composed of computer group system, it can run in a variety of operating systems (such as Linu

6、x, Windows, etc.). As a high performance computing system, it has many advantages, such as cheap, easy to manage, cost-effective. In this paper, the main research frame and components, in the Linux operating system of Beowulf cluster system manual method of building Beowulf cluster, using existing l

7、aboratory hardware and software technology support, the design and implementation of a cluster system based on MPI and Linux.First of all, this paper studies the origin, classification and architecture of Beowulf cluster in detail, from the aspects of hardware support, network design, environment co

8、nfiguration and so on, the research and design of Beowulf cluster. From the point of view of parallel computing, this paper introduces the basic principles and ideas of MPI and Linux cluster system, and introduces several key technologies of parallel computing and cluster middleware.Secondly, by usi

9、ng simple hardware resources, reasonable use of the Linux system software technology, through the configuration of the hardware environment, the allocation of network address, the rational setting of nodes, etc., manually set up Beowulf clusters.Finally, it is proposed that two kinds of allocation s

10、trategies based on static allocation and dynamic allocation can be used to design the parallel test program to test the performance of the cluster. Can be used to measure the acceleration ratio of the advantages and disadvantages of the cluster system.Key words: MPI; Beowulf; Parallel Computing; Clu

11、ster System; Linux 引言随着信息产业的快速发展,计算机的性能在不断地提高,并行计算在工程处理、大数据计算、科学研究等很多领域产生了巨大的影响。计算机的普及率提高以及并行计算的需求提高促进了并行计算的发展。如何快速而有效地提高科学计算速度已经成为并行计算迫切需要解决地问题之一;由于集群系统具有高可扩展性、高可用性、高性能和高性价比等优点,科学家们对集群的研究越来越感兴趣。这些年来,由于PC机的成本降低,PC机的普及率大大提高,PC机构成的Beowulf集群逐渐代替了并行机在处理并行计算事务上的地位。作为并行计算系统的一种,Beowulf集群具有投资风险小、可扩展性好、容易编程等

12、优点,目前已经很快成为各高校实验室研究的热点和主流,在国内外受到普遍重视。目前,随着集群系统性能的不断提高,Beowulf集群广泛应用于各个领域。因为商用微型处理器性能的飞速发展以及高带宽、低延迟的商用网络交换机的出现,还有Linux等自由软件的成熟,集群系统不仅受到大型科研单位的青睐,而且也出现在许多高校的学术研究领域。尽管Beowulf集群在稳定性、使用方便性和通信性能等方面有待进一步提高,但是它以其他并行机系统无法比拟的性价比优势成为一支不可忽视的重要力量在高性能并行计算领域飞速发展。简单来说,Beowulf是一种能够将多台计算机用于并行计算的体系结构。通常Beowulf系统由通过以太网

13、或其他网络链接的一个控制节点、多个计算节点以及其他管理里节点构成。集群系统的控制由控制节点来完成,管理节点为计算节点提供对外的网络连接和文件服务。利用普通的的硬件设备,像集线器、普通PC机和基础网络设施就可以构建Beowulf集群,不需要特别定制的硬件和特殊的设备。Beowulf集群的应用软件也是随处可见的,像Linux、PVM和MPI。本文对Beowulf集群系统的体系结构、资源管理、任务调度等方面进行了深入的研究。利用实验室现有的硬件和软件资源,设计并实现了一个基于消息传递的Beowulf集群系统,以满足实验室进行并行与分布式计算的需要。第一章 Beowulf集群简介1.1 什么是Beow

14、ulf集群1Beowulf是现存的最古老的英语史诗:2 Famed was this Beowulf: far ew the boast of him, son of Scyld, in the Scandian lands. So becomes it a youth to quit him well with his fathers friends, by fee and gift, that to aid him, aged, in after days, come warriors willing, should war draw nigh, liegemen loyal: by la

15、uded deeds shall an earl have honor in every clan.3 它歌颂了一个英雄,他拥有强壮的体魄和无人伦比的勇气。他最终战胜了魔鬼Grendel。4Beowulf集群就是说,有着强大的处理并行计算能力的集群系统。5因为几乎每个Beowulf集群的设计者都有自己的Beowulf集群的定义,恐怕很难给Beowulf集群下一个确切的定义。一些人认为只有那些采用和原始的Beowulf集群系统一样方法构建的系统才叫Beowulf集群。而另一些人则认为凡是能够在多个工作站上运行并行代码的系统都称为Beowulf集群。6我们将大多数Beowulf集群具有的特征作为B

16、eowulf集群的定义:Beowulf是一种系统结构,它使得多个计算机组成的系统能够用于并行计算。 Beowulf系统通常由多个计算节点和一个管理节点组成。它们通过以太网(或其他网络)连接。管理节点控制计算节点,通常也是计算节点的网关和控制终端。一般它也是集群系统文件服务器。在大型的集群系统中,由于特殊的需求,这些管理节点的功能也可能由多个节点分摊。 Beowulf系统通常由最常见的硬件设备组成,例如,PC、以太网卡和以太网交换机。Beowulf系统很少包含用户定制的特殊设备。 Beowulf系统通常采用那些廉价且广为传播的软件,例如,Linux操作系统、并行虚拟机(PVM)和消息传递接口(M

17、PI)。 1.2 Beowulf集群的分类1.2.1 第一类Beowulf集群这一类Beowulf集群全部由COTS设备组成。第一类Beowulf系统的优点是:硬件设备由多个来源,通常具有廉价和易管理维护的特点。 不依赖于单个硬件供应商 所有设备驱动都由Linux开发社团提供 通常都是标准设备,例如,SCSI、以太网等等 当然第一类Beowulf集群的缺点也是非常显然的。由于所采用的硬件都没有经过性能优化,所以其 很难达到很好的性能。比如,由于以太网的高延迟和低带宽使得集群系统中消息传递很难达到MIMD应用的需求,从而使整个集群系统的计算能力大打折扣。1.2.2 第二类Beowulf集群第二类

18、Beowulf集群是指那些采用了用户定制设备的Beowulf集群。这类集群系统最大优点是具有很好的性能。例如,采用Myrinet作为集群系统的IPC网络可以极大地提供进程间消息传递延迟和速度。当然它的缺点就是依赖于单个硬件提供商 而且价格高昂。第二章 Beowulf集群体系结构在现实中存在形形色色的Beowulf集群。虽然它们都是原始Beowulf集群的衍生物,但是它们的体系结构也存在各种各样微小的差异。以IBM eServer Cluster 1300为例来阐述Beowulf集群体系结构和系统组成。图1是Cluster 1300上Beowulf集群的系统视图图1是Cluster 1300上B

19、eowulf集群的系统视图。无论是管理节点(Master Node)和计算节点都是Intel IA32架构的xSeries PC服务器。它们通过网络(以太网和Myrinet)相连接。所有的节点都运行Linux操作系统。计算节点上运行的并行应用程序一般采用MPI完成并行进程间的通信。计算节点通过管理节点和外部LAN相连。整个集群系统都在一套集群管理工具监控之下。图 2 Cluster1300上Beowulf集群组件 图2是 Cluster 1300上Beowulf集群的组件视图。它揭示了Beowulf集群的组成部分。通常Beowulf集群由四个层次构成:硬件:主要是指Intel IA32架构的P

20、C服务器。 网络:指用于节点间通信的局域网(普通的以太网)和并行进程间通信的高速网(Myrinet等高速网)。 软件:主要指Linux操作系统和用于并行通信的并行编程库(如MPI和PVM)。 并行应用 下面分三个方面来介绍这四个层次。2.1 Beowulf集群硬件与网络Beowulf集群硬件和网络层次需要解决的问题是如何组织硬件使其达到最高的性价比。为了达到很好的性价比,Beowulf通常采用廉价的COTS硬件。当然有时为了提供某些关键的性能,也会使用一些特殊的设备。从硬件组织的角度说,Beowulf集群中的节点都是非共享内存的计算机,它们通过消息传递进行通信。实际上,我们还有其他组织硬件完成

21、并行计算的方式。简单地说,有两种组织硬件完成并行计算的方法:通过消息传递通信的本地内存(非共享内存)计算机系统 (Beowulf集群) 通过内存访问通信的共享内存计算机系统 (SMP计算机) 当然也存在将多个本地或共享内存计算机相连并创造一个混和的共享内存计算机系统的可能。但在最终用户看来,这种计算机系统就好像一个大型的共享内存计算机。这种技术被我们叫做非一致内存访问NUMA(Non Uniform Memory Access)。但是从底层说,一个NUMA计算机系统必须在节点间传递消息。当然也可以将共享内存计算机作为一个本地内存的计算机连入一个Beowulf集群系统。由于Linux系统支持SM

22、P计算机,所以Linux系统本身能够在SMP中的多个CPU上调度作业。所以Beowulf集群本身就没有必要识别集群的节点是不是共享内存计算机了。和SMP系统相比,集群系统有明显的优点。因为Beowulf集群完成并行程序间通信用的是消息传递,所以系统的瓶颈就是网络传输。在实际的系统中,通常采用有两套彼此的独立的网络设备。一套是普通的以太网,用于像文件服务和系统管理等一般的网络通信。另一套网络是用于进程间通信的高速网,像Myrinet和Giganet。和100M以太网相比,这类网络具有高带宽、低延迟的特性。还有三类设备虽然不是必须,但是对于集群管理却是非常重要的:KVM Swither:KVM是指

23、Keyboard、Video和Mouse。这个设备可以让系统管理员用一套KVM管理系统中的所有节点。 远程电源管理设备(如ASM):这类设备使得管理员可以在管理节点Power on/off其他节点。 Terminal Server:这种设备通过串口将节点连接起来。通过这个设备,管理员可以在管理节点上虚拟出其他节点上的控制终端。和KVM相比,这种方法不需要硬件的切换。2.2 Beowulf集群软件Beowulf集群在软件层次面临的问题是如何在硬件层次上获得最大的性能。通常,Beowulf集群采用Linux + MPI的方式支持并行计算。MPI是采用消息传递的方式实现并行程序间通信。虽然也可以采用

24、其他的通信方法,但是消息传递模式是最适合于集群系统的。简单地说,有两种在并行程序间传递并发的方法:使用处理器间的消息传递(MPI) 使用操作系统的线程(Thread) 其他的方法也存在,但是这两种方法应用得最广泛。虽然存在效率和移植的问题,这两种方法都可以在SMP,NUMA和Cluster上实现。消息传递需要在CPU间拷贝数据,而线程却可以在CPU间共享数据。数据拷贝的速度和延迟是影响消息传递效率的最关键的因素。PVM和MPI是最常用的两种消息传递API。消息传递也可以在线程上实现,并且消息传递即可以用于集群系统,也可以用于SMP系统。和线程相比,在SMP系统上使用消息传递的优点在于可以很方便

25、的把SMP上的应用移植到集群系统上。线程的最大特点是,线程间是共享数据。因此它在SMP系统上工作的更好。而且Linux本身也是支持Posix线程的。但是使用线程的最大缺点在于,很难将线程扩展到SMP系统以外。虽然NUMA技术可以高效的做到这一点,但是那非常昂贵而且Linux本身也不支持。下表概括了线程和消息传递在SMP和集群系统上的比较:SMP系统性能集群系统性能扩展性消息传递好很好很好线程很好差差2.3 Beowulf集群应用Beowulf集群的应用层次位于硬件和软件层次之上。它要解决的问题是如何在实际的集群系统中并行化(parallel)应用中的并发(concurrent)部分,从而使集群

26、上的应用达到最好的性能。在阐述这部分之前,我们需要区分两个概念: parallel和concurrent。程序的并发(concurrent)部分是指 程序中可以独立计算的部分。程序的并行(parallel)部分是指 程序中在同一时间被分别执行的并发(concurrent)部分。并发和并行从宏观上来讲都是同时处理多路请求的概念。但并发和并行又有区别,并行是指两个或者多个事件在同一时刻发生;而并发是指两个或多个事件在同一时间间隔内发生。在操作系统中,并发是指一个时间段中有几个程序都处在已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一时刻点上只有一个程序在处理机上运行。在网络服

27、务器上,并发是指同一时刻能处理的连接数。Beowulf集群正是处理并行计算的一类高效计算系统。它加快了节点间的通信,减少了通信延迟。在Beowulf中,通信时间远远小于并发处理的计算时间,所以大大提高了并行执行事务的效率。第三章 手工搭建Beowulf集群3.1 硬件环境配置Beowulf集群硬件和网络层次需要解决的问题是如何组织硬件使其达到最高的性价比。为了达到很好的性价比,Beowulf通常采用廉价的COTS硬件。当然有时为了提供某些关键的性能,也会使用一些特殊的设备。本系统由实验室中3台PC机组成,每台PC机都运行Linux操作系统,通过10/100M的交换机组建了一个带宽为10M的局域

28、网,使用TCP/IP作为MPI调用函数的通信协议。(1)节点的配置:CPU:奔腾D 3.0GHz (2048KB 二级缓存)硬盘:100GB SATA2(5400转)内存:DDRII,512M主板:宏基 G520(2)网络配置:交换机:CISCO2950网卡:Realtek RTL8139 在所有的节点上都安装了Ubuntu gnome 14.10 i386标准版的Linux系统,在安装所需要的工具包和服务后,还需要对一些文件和服务进行配置。 3.2 网络设计与节点分配根据功能,我们可以把集群中的节点划分为6种类型:用户节点(User Node) 控制节点(Control Node) 管理节点

29、(Management Node) 存储节点(Storage Node) 安装节点(Installation Node) 计算节点(Compute Node) 虽然节点的类型很多,但是一台计算机也可能是多种不同类型的节点。每台计算机在集群中的节点功能要按照实际需求和计算机的配置来决定。在比较小的集群系统中,同一台计算机可能既是用户节点又是控制节点,还可以担当管理节点、存储节点和安装节点等角色。因为计算节点间的通信需求,IPC网络的性能是Beowulf集群设计中非常重要的一个技术点。通常需要高带宽的网络,同时此类网络还要达到速度快和延迟低。双工的网络通信是Beowulf集群的主要瓶颈,它的决定性

30、因素就在于延迟和全局同步。IPC网络可以用好几种网络技术实现。例如快速以太网,以及千兆以太网和Myrinet。而在实验中采用交换机是为了达到高带宽,交换机接受从双绞线传来的数据包,但是它和集线器不一样。它不向所有连接的节点广播这个数据包,它会根据目的地址哪个端口是接受者,然后把这个包传给接受者。本系统是一个微型的Beowulf集群系统,所以控制节点和计算节点的硬件配置完全一样,将用户节点、管理节点、安装节点都设定在同一台计算机上,这台计算机成为控制节点。同时控制节点也参与运算,即也是计算节点。控制节点主机名为“Beo0”,IP地址为“219.218.30.129”;计算节点相应的主机名为“Be

31、o1”、“Beo2”,IP地址为“219.218.30.130”、“219.218.30.131”。3.3 搭建服务器与安装MPIBeowulf集群在软件层次面临的问题是如何在硬件层次上获得最大的性能。通常,Beowulf集群采用Linux + MPI的方式支持并行计算。MPI是采用消息传递的方式实现并行程序间通信。虽然也可以采用其他的通信方法,但是消息传递模式是最适合于集群系统的。安装Linux之后,以root用户登录,重新建立一个相同的用户和密码(本次实验主机名为:tangl,密码为:123456),将主目录定为/home/tangl。为了记录主机名和IP地址,使得每次使用主机名称时可以远

32、程调用命令直接将主机名转换为IP地址,必须修改修改/etc/hosts/文件。而修改/etc/login文件可以让管理员方便使用telnet命令访问远程主机。为了实现集群系统的分布式存储管理,必须在各节点安装Linux的过程中,划出一个相同的共享分区:/disk0。为了保证NFS服务在集群上的正常运行,还需要修改控制节点上的/etc/exports文件,计算节点上的/etc/fstab文件也要做相应的修改。为了减少了集群系统的并行运行时间,可以使集群系统内各节点之间的数据传输和消息通信不需要口令认证,这就得配置RSH服务器。下面是具体配置的过程:MPICH2的安装及配置 在网上下载MPICH2的软件包:mpich2-1.0.1tar.gz,把软件包放到/home/tangl目录下。以tangl用户身份登陆,然

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1