操作系统课程设计_第1页
操作系统课程设计_第2页
操作系统课程设计_第3页
操作系统课程设计_第4页
操作系统课程设计_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、操作系统课程设计题目:集群技术要点及应用 学生姓名:杨体龙 杨毅 学号:541307120146 541307120147 专业班级:软件工程13-01 指导老师:王岩2016年6月6日目 录摘要、关键词.1第一章 引言.1第二章 集群的目的.12.1 提高性能.2 2.2 降低成本.2 2.3 提高可扩展性.2 2.4 增强可靠性.2 2.5 畜禽资源优势.2第三章 集群的分类.33.1 科学集群.3 3.2 均衡负载集群.3 3.3 高可用性集群.3 3.4 并行数据库集群.3第四章 系统结构.4第五章 调度算法.5 5.1 进程迁移.5 5.2 进程迁移实现角度.5第六章 集群的应用领域

2、.6第七章 集群的发展趋势.6第八章 参考文献.7第九章 致谢.7 摘 要 集群是什么呢?集群就是一组相互独立的、通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理。一个客户与集群相互作用时,集群像是一个独立的服务器。集群配置是用于提高可用性和可缩放性。和传统的高性能计算机技术相比,集群技术可以利用各档次的服务器作为节点,系统造价低,可以实现很高的运算速度,完成大运算量的计算,具有较高的响应能力,能够满足当今日益增长的信息服务的需求。而集群技术是一种通用的技术,其目的是为了解决单机运算能力的不足、IO能力的不足、提高服务的可靠性、获得规模可扩展能力,降低整体方案的运维成本(

3、运行、升级、维护成本)。只要在其他技术不能达到以上的目的,或者虽然能够达到以上的目的,但是成本过高的情况下,就可以考虑采用集群技术。关键字:集群;可扩展性;可用性;降低成本;提高响应能力第1章 引言 在当下的计算机环境下想要提高服务器性能且成本不要太高的情况下,就采用来将多台计算机联合起来,使之成为一个集合。整个系统使用起来像一个单一的一体的计算资源。重要的是,这些各自独立的计算机要能够同心协力一起工作,而且在外看上去是单一的集成的计算机资源。这就是集成技术的作用,一下就是集群技术的一些特点与概念。第二章 集群的目的2.1提高性能一些计算密集型应用,如:天气预报、核试验模拟等,需要计算机要有很

4、强的运算处理能力,现有的技术,即使普通的大型机器计算也很难胜任。这时,一般都使用计算机集群技术,集中几十台甚至上百台计算机的运算能力来满足要求。提高处理性能一直是集群技术研究的一个重要目标之一。2.2降低成本通常一套较好的集群配置,其软硬件开销要超过100000美元。但与价值上百万美元的专用超级计算机相比已属相当便宜。在达到同样性能的条件下,采用计算机集群比采用同等运算能力的大型计算机具有更高的性价比。2.3提高可扩展性用户若想扩展系统能力,不得不购买更高性能的服务器,才能获得额外所需的CPU 和存储器。如果采用集群技术,则只需要将新的服务器加入集群中即可,对于客户来看,服务无论从连续性还是性

5、能上都几乎没有变化,好像系统在不知不觉中完成了升级。2.4增强可靠性集群技术使系统在故障发生时仍可以继续工作,将系统停运时间减到最小。集群系统在提高系统的可靠性的同时,也大大减小了故障损失。第三章 集群的分类3.1 科学集群科学集群是并行计算的基础。通常,科学集群涉及为集群开发的并行应用程序,以解决复杂的科学问题。科学集群对外就好像一个超级计算机,这种超级计算机内部由十至上万个独立处理器组成,并且在公共消息传递层上进行通信以运行并行应用程序。3.2负载均衡集群负载均衡集群为企业需求提供了更实用的系统。负载均衡集群使负载可以在计算机集群中尽可能平均地分摊处理。负载通常包括应用程序处理负载和网络流

6、量负载。这样的系统非常适合向使用同一组应用程序的大量用户提供服务。每个节点都可以承担一定的处理负载,并且可以实现处理负载在节点之间的动态分配,以实现负载均衡。对于网络流量负载,当网络服务程序接受了高入网流量,以致无法迅速处理,这时,网络流量就会发送给在其它节点上运行的网络服务程序。同时,还可以根据每个节点上不同的可用资源或网络的特殊环境来进行优化。与科学计算集群一样,负载均衡集群也在多节点之间分发计算处理负载。它们之间的最大区别在于缺少跨节点运行的单并行程序。大多数情况下,负载均衡集群中的每个节点都是运行单独软件的独立系统。但是,不管是在节点之间进行直接通信,还是通过中央负载均衡服务器来控制每

7、个节点的负载,在节点之间都有一种公共关系。通常,使用特定的算法来分发该负载。3.3高可用性集群当集群中的一个系统发生故障时,集群软件迅速做出反应,将该系统的任务分配到集群中其它正在工作的系统上执行。考虑到计算机硬件和软件的易错性,高可用性集群的主要目的是为了使集群的整体服务尽可能可用。如果高可用性集群中的主节点发生了故障,那么这段时间内将由次节点代替它。次节点通常是主节点的镜像。当它代替主节点时,它可以完全接管其身份,因此使系统环境对于用户是一致的。高可用性集群使服务器系统的运行速度和响应速度尽可能快。它们经常利用在多台机器上运行的冗余节点和服务,用来相互跟踪。如果某个节点失败,它的替补者将在

8、几秒钟或更短时间内接管它的职责。因此,对于用户而言,集群永远不会停机。3.4并行数据库集群 并行数据库集群即把大型数据库系统分而治之的部署于多个IA服务器上。并行数据库集群的两个代表为Oracle RAC数据库和DB2 EEE数据库同时也分为体系架构共享磁盘体系架构和无共享体系架构的产物。 DB2并行数据库采用的是无共享并行体系结构,这种体系结构意味着每台计算机都要自己的CPU、内存和磁盘,计算机通过高速互连设备被链接在一起,当处理查询时,每个节点处理其本地表中的行,然后将节点的部分结果回传给协调程序节点,协调程序将来自所以节点的所以结果合并成最终结果集。 Oracle RAC数据库系统是共享

9、磁盘体系结构的代表,每台计算机拥有自己的CPU、内存,但共享磁盘存储空间,这种并行体系结构的数据库更多采用的是连接数的并行执行,即不同的查询将将依次连接到不同的节点上,由所在节点执行查询并返回结构,其中存储IO的冲突时通过数据库系统的锁管理器协调解决的。 并行数据库具有强大的处理性能,高可用性和可扩展性等特性。 在实际的使用中,集群是相互交融,如高可用性集群也可以在其节点之间均衡用户负载。同样,也可以从要编写应用程序的集群中找到一个并行集群,它可以在节点之间执行负载均衡。从这个意义上讲,这种集群类别的划分是一个相对的概念,不是绝对的。第四章 系统结构根据典型的集群体系结构,集群中涉及到的关键技

10、术可以归属于四个层次:(1)网络层:网络互联结构、通信协议、信号技术等。(2)节点机及操作系统层高性能客户机、分层或基于微内核的操作系统等。(3)集群系统管理层:资源管理、资源调度、负载平衡、并行IPO、安全等。(4)应用层:并行程序开发环境、串行应用、并行应用等。集群技术是以上四个层次的有机结合,所有的相关技术虽然解决的问题不同,但都有其不可或缺的重要性。集群系统管理层是集群系统所特有的功能与技术的体现。在未来按需(On Demand)计算的时代,每个集群都应成为业务网格中的一个节点,所以自治性(自我保护、自我配置、自我优化、自我治疗)也将成为集群的一个重要特征。自治性的实现,各种应用的开发

11、与运行,大部分直接依赖于集群的系统管理层。此外,系统管理层的完善程度,决定着集群系统的易用性、稳定性、可扩展性等诸多关键参数。正是集群管理系统将多台机器组织起来,使之可以被称为“集群”。第五章 调度方法5.1进程迁移进程迁移就是将一个进程从当前位置移动到指定的处理器上。它的基本思想是在进程执行过程中移动它,使得它在另一个计算机上继续存取它的所有资源并继续运行,而且不必知道运行进程或任何与其它相互作用的进程的知识就可以启动进程迁移操作,这意味着迁移是透明的。进程迁移是支持负载平衡和高容错性的一种非常有效的手段。对一系列的负载平衡策略的研究表明:进程迁移是实现负载平衡的基础,进程迁移在很多方面具有

12、适用性。(1)动态负载平衡。将进程迁移到负载轻或空闲的节点上,充分利用可用资源,通过减少节点间负载的差异来全面提高性能。(2)容错性和高可用性。某节点出现故障时,通过将进程迁移到其它节点继续恢复运行,这将极大的提高系统的可靠性和可用性。在某些关键性应用中,这一点尤为重要。(3)并行文件IO。将进程迁移到文件服务器上进行IO,而不是通过传统的从文件服务器通过网络将数据传输给进程。对于那些需向文件服务器请求大量数据的进程,则将有效地减少通讯量,极大地提高效率。(4)充分利用特殊资源。进程可以通过迁移来利用某节点上独特的硬件或软件能力。(5)内存导引机制。当一个节点耗尽它的主存时,内存导引机制将允许

13、进程迁移到其它拥有空闲内存的节点,而不是让该节点频繁地进行分页或和外存进行交换。这种方式适合于负载较为均衡,但内存使用存在差异或内存物理配置存在差异的系统。5.2进程迁移的实现角度进程迁移的实现复杂性及对OS 的依赖性阻碍了进程迁移的广泛使用,尤其是对透明的进程迁移的实现。根据应用的级别,进程迁移可以作为OS 的一部分、用户空间、系统环境的一部分或者成为应用程序的一部分。(1)用户级迁移:用户级实现较为简单,软件开发和维护也较为容易,因此,现有的很多系统都是采用用户级实现,如Condor和Utopia。但由于在用户级无法获得Kernel的所有状态,因此,对于某类进程,无法进行迁移。另外,由于K

14、ernel空间和User空间之间存在着壁垒,打破这个边界获得Kernel提供的服务需要巨大的开销。因此,用户级实现的效率远远低于内核级实现。 (2)应用级迁移:应用级迁移的实现较为简单,可移植性好,但是需要了解应用程序语义并可能需对应用程序进行修改或重新编译,透明性较差,这方面的系统有Freedman、Skordos等。 (3)内核级迁移:基于内核的实现可以充分利用OS提供的功能,全面的获取进程和OS状态,因此实现效率较高,能够为用户提供很好的透明性。但是由于需要对OS进行修改,实现较为复杂。这方面的典型系统有MOSIX和Sprite系统。进程迁移的主要工作就在于提取进程状态,然后在目的节点根

15、据进程状态再生该进程。在现实中,一个进程拥有很多状态,并且随着操作系统的演化,进程状态也越来越多样。一般来说,一个进程的状态可以分为以下几类:进程执行状态。表示当前运行进程的处理器状态,和机器高度相关。包括内核在上下文切换时保存和恢复的信息,如通用和浮点寄存器值、栈指针、条件码等。进程控制。操作系统系统用来控制进程的所有信,一般包括进程优先级、进程标识,父进程标识等。一旦系统编排了进程控制信息,进程迁移系统必须冻结该进程的运行。进程Memory状态和进程地址空间。包括进程的所有虚存信息,进程数据和进程的堆栈信息等,是进程状态的最主要的一部分。进程的消息状态。包括进程缓冲的消息和连接(Link)

16、的控制信息。进程迁移中通讯连接的保持以及迁移后连接的恢复是进程迁移中一项较有挑战意义的问题。文件状态。进程的文件状态包括文件描述符和文件缓冲符。保持文件的Cache一致性和进程间文件同步访问也是进程迁移机制需要着重考虑的。第6章 集群的应用领域6.1集群在科学计算领域的应用 集群技术最早的应用领域是科学计算(或高性能计算)领域,其实早在七十年代计算机厂商和研究机构就开始了对集群系统的研究和开发,当时主要用于科学工程计算,所以这些系统并不为大家所熟知,知道Linux集群的出现,集群的概念才得以广为传播。 图一 典型科学计算集群网络拓扑图一显示的是一个典型的科学计算集群结构,他是以多个计算节点为核

17、心,以及几个实现不同功能的网络所组成。通常这几个网络分别是对外通信网、高速通信网、管理网和存储网,根据实际应用不同可以舍弃某个网络或相互合并。对外通信网作为集群系统与外部用户之间相互通信的接口,其交换设备通常采用以太网交换机;管理网负责对整个集群系统软硬件的监控与管理,其交换设备也通常采用以太网交换机;高速通信网功能是计算节点之间高速交换数据的枢纽,其交换设备通常采用专门用户高速互连的低延迟通信设备;存储网实现了计算节点大规模数据存储与访问功能。其构成可采用成熟的光钎存储网(FC SAN)或IP存储网(IP SAN)。6.2集群在商业计算领域的应用 集群技术最早只是用于构建大规模高性能科学计算

18、系统,并不断发展起来,其逐步应用于商业领域也是近几年内的事情。由于集群的可用性、可扩展性、高性价比等诸多特性,使得其在商业领域的应用得到越来越多的用户厂商认可。 集群技术之所以能在商业计算领域应用越来越广,主要由两方面的因素促成。一是IA架构服务器的广泛使用。毋庸置疑,标准化、开放性是服务器技术和产品化发展的一个趋势。再一个因素是应用软件的支持。随着开放性操作系统Linux的不断成熟,以前只能应用在超级服务器上的应用也开始移植到采用IA架构服务器构建的集群系统中。图二 典型商业计算集群网络拓扑 图二是一个典型的以集群技术为基础构建的三层架构商业应用案例。三层架构通常是指客户端、中间件、服务器。第7章 集群的发展趋势 集群技术随着服务器硬件系统与网络操作系统的发展将会在可用性、高可靠性、系统冗余等方面逐步提高。未来的集群可以依靠集群文件系统实现对系统中的所有文件、设备和网络资源的全局访问,并且生成一个完整的系统映像。这样,无论应用程序在集群中的哪台服务器上,集群文件系统允许任何用户(远程或本地)都可以对这个软件进行访问。任何应用程序都可以访问这个集群任何文件。甚至在应用程序从一个节点转移到另一个节点的情况下,无需任何改动,应用程序就可以访问系统上的文件。 在今天,利用服务器的集群技术,通过周密计划和网络维护,系统破坏的机率是非常小的。所以,企业服

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论