(计算机系统结构专业论文)面向自强3000的集群管理系统的研究与实现.pdf_第1页
(计算机系统结构专业论文)面向自强3000的集群管理系统的研究与实现.pdf_第2页
(计算机系统结构专业论文)面向自强3000的集群管理系统的研究与实现.pdf_第3页
(计算机系统结构专业论文)面向自强3000的集群管理系统的研究与实现.pdf_第4页
(计算机系统结构专业论文)面向自强3000的集群管理系统的研究与实现.pdf_第5页
已阅读5页,还剩47页未读 继续免费阅读

(计算机系统结构专业论文)面向自强3000的集群管理系统的研究与实现.pdf.pdf 免费下载

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

文档简介

上海大学硕士学位论文 t h ep o s t g r a d u a t et h e s i so f s h a n g h a iu n i v e r s r y 摘要 集群系统以其本身所具有的高性价比、可扩展性和可靠性等优点逐渐成为高 性能计算领域里令人瞩目的焦点。如何提高集群系统的运行效率、可用性和易用 性是集群计算领域的一个重要的课题。集群管理系统( c l u s t e rm a n a g e m e n t s y s t e m ) 作为集群软件系统中一个重要组成部分,主要的设计目标就是实现上述 的需求。 本文研究并且开发了一套适用于自强3 0 0 0 高性能集群计算的集群管理系 统,该系统可运行在r e d h a tl i n u x7 3 以上版本的平台上。该系统的主要功能有: 集群系统的动态部署、集群系统的性能监测、集群系统的统一管理和集群系统的 作业管理,使得集群的管理变得方便和高效。我们还提出了一套自己的集群管理 的协议,该协议能够十分高效和安全的对于集群进行管理和监控。 本文涉及的研究课题来自上海高校网格的主节点构建项目,而集群管理系统 实际上是网格计算的基础,只有打好这个基础,网格计算才能更快地应用到各个 层面上去。经测试,本文研究的集群部署系统及监控系统性能优秀,并在实际使 用中反应良好。 关键词:集群,集群管理系统,集群部署系统,集群作业管理系统,单一系统映像 上海大学硕士学位论文 t h e p o s t g r a d u a t e t h e s i s o f s h a n g h a i u n i v e r s i t y a b s t r a c t b e c a u s eo ft h ep r o p e r t i e so fh i g hc a p a b i l i t y p r i c er a t e ,s c a l a b i l i t y a n dr e l i a b i l i t y ,c o m p u t e rc l u s t e rb e c o m e st h ef o c u si nh i g hp e r f o r m a n c e c o m p u t i n ga r e a h o wt oi n c r e a s et h ee f f i c i e n c y ,u s a b i l i t ya n dc o n v e n i e n c e o fc l u s t e r si sat a s ki nh i g hp e r f o r m a n c ec o m p u t i n ga r e a b e i n ga n i m p o r t a n tp a r to fc l u s t e rs o f t w a r es y s t e m ,c l u s t e rm a n a g e m e n ts y s t e m ( c m s ) i se x p e c t e dt os a t i s f yt h o s er e q u i r e m e n t s w er e s e a r c h e da n dd e v e l o p e das u i t eo fc l u s t e rm a n a g e m e n ts y s t e m , w h i c hi sd e s i g n e df o rz i q i a n g3 0 0 0h i g hp e r f o r m a n c ec l u s t e r r e dh a tl i n u x 7 3o rh i g h e rv e r s i o ni ss u p p o r t e d t h em a i nf u n c t i o n so ft h i sc l u s t e r m a n a g e m e n ts y s t e ma r e :c l u s t e rs y s t e md e p l o y m e n t , c l u s t e rs y s t e m p e r f o r m a n c em o r t i t o r ,c l u s t e rs y s t e mc e n t r a l i z e d c o n t r o la n dc l u s t e rj o b m a n a g e m e n t w i t ht h e s ec a p a b i l i t i e s ,t h em a n a g e m e n to ft h ec l u s t e rs y s t e m b e c o m e se a s i e ra n dm e r ee f f i c l e n t b e s i d e s ,w ea l s od e v e l o p e dap r o t o c o l , w h i c hi su s e dt om a n a g et h ec l u s t e rs y s t e m ,i no r d e rt om a n a g ea n dm o l l i t o r t h ew h o l ec l u s t e rs y s t e ms e c u r e l ya n de f f i c i e n t l y o u rr e s e a r c hi sap a r to fs h a n g h a ih i g he d u c a t i o ng r i d sc e n t r a ln o d e c o n s t r u c t i o n b e c a u s ec l u s t e rm a n a g e m e n ts y s t e mi sac r i t i c a lf o u n d a t i o n o fg r i d ,o n l yw i t ht h i sr e l i a b l ef o u n d a t i o n ,c a ng r i dc o m p u t i n gb e a p p li e dt oe v e r ya p p l i c a t i o n t h ec l u s t e rd e p l o y m e n ts y s t e ma n dt h e c l u s t e rp e r f o r m a n c em o n i t o rs y s t e mc a nw o r ke x c e l l e n t l yi no u rt e s t i n g , w h i c ha l s oh a sg o o dr e s p o n s ei np r a c t i c e k e y w o r d s :c l u s t e r ,c l u s t e rm a n a g e m e n ts y s t e m ,c l u s t e rd e p l o y m e n ts y s t e m , c 1 u s t e rj o bm a n a g e m e n ts y s t e m ,s s i i l l l 海大学硕士学位论文 t h ep o s t g r a d u a t et h e s i so f s h a n g h a iu n i v e r s i t y 图索弓 图卜1 集群系统体系结构2 图卜2 自强3 0 0 0 体系结构3 图2 1 集群管理系统的系统构架6 图2 - 2l i n i x 启动流程7 图2 - 3l i n o x 网络启动流程8 图2 - 4 集群部署系统架构9 图2 - 5 作业的通信原语1 3 图2 - 6 集群管理协议接口两边的协议的关系1 4 图3 - 1 集群部署系统软件环境1 6 图3 - 2n f s 服务器分享目录和客户端挂载目录示意图1 7 图3 - 3d h c p 对话流程1 8 图3 - 4d h c p 服务配置方式1 9 图3 - 5 集群管理系统的网络协议的数据报文的格式。2 l 图3 - 6 集群管理系统的节点故障的处理2 7 图4 - 1 集群的作业管理中作业的运行模型3 l 图4 _ 2 具有可扩展能力的程序一主机的重新分配方案,3 2 图4 _ 3 获得的最优的主机的子群3 3 图4 - 4 集群中作业调度的决策3 4 图4 - 5 集群中作业负荷分配的状态3 5 图4 - 6 调度者所采用的不同的调度算法的列表3 8 图4 7 集群中作业调度的使用点数的方法3 8 图4 8 集群中作业调度的使用报价的方法3 9 图5 1 集群节点启动速度与镜像服务器数量的关系4 0 图5 - 2 整个i 程序的执行过程的效率图4 1 图5 - 3 内存利用效率图4 l 图5 - 4 通信带宽利用率图4 2 图5 5 两个节点上运行f p l 程序的c p u 利用效率图。4 2 图5 - 6 内存利用效率图4 3 图5 7 通信带宽利用率图4 3 上海大学硕士学位论文 1 1 1 0 p o s t g r a d u a t e t h e s i s o f s h a n g h a j u n l v e r s l t y 公式索弓 公式2 - 1 集群系统资源的形式化描述一1 2 公式2 - 2 集群的硬件资源的形式化描述1 2 公式2 3 每个节点的通信量的形式化描述1 2 公式2 - 4 每个节点的软件环境的形式化的描述1 3 公式2 - 5 作业的四元组描述1 3 公式3 1 当前时刻所占用的网络的带宽的计算公式2 6 公式4 1 权重向量法节点负载公式3 0 v i i 原创性声明 本人声明:所呈交的论文是本人在导师指导下进行的研究工作。 除了文中特裂翔跌舔注和致谢鳇地方外,论文中不包含茭他人己发袭 或撰写过的研究成果。参与同一工作的其他阐志对本研究所做的任何 贡献均已在论文中作了明确的说明并表示了谢意。 本论文使用授权说明 本人完全了解上海大学有关保留、使用学位论文的规定,即:学 校有权保黯论文及送交论文复印件,允许论文被查阅和借阅:学校可 潋公毒论文酶全部袋部分癌容。 ( 保密的论文在解密后应遵守此规定) 签名:丘灶导师签名:鲰日期:垒型 上海大学硕士学位论文 t h e p o s t g r a d u a t e t h e s i s o f s h a n g h a i u n i v e r s i t y 第一章绪论 1 1 研究背景 近年来,随着网络技术及计算机技术的发展,计算模式逐步从以硬件为中心 ( h a r d w a r e c e n t r i c ) 转向以服务为中心( s e r v i c e c e n t r i c ) 。这种转变要求计 算机系统有更强的资源共享性,从而使很多研究者怀念起大型计算机的优点来。 目前采用多台普通计算机构筑大型服务器的技术已经走向成熟,特别是随着网络 带宽的大幅提高,促使网络计算机系统的应用日益普及,计算系统的体系结构朝 着高性能应用服务器加瘦客户端( t h i nc 1 l e n t ) 的方向发展“1 。自9 0 年代以来, 并行计算得以空前的飞速发展,一方面,由于单处理机的计算速度不断提高,并 行计算机的体系结构趋于成熟,数据传输网络的标准化和传输速率的大幅提升, 使得并行计算机的研制周期能够从几年到几个月,为研制并行计算机系统创造了 有利条件。 目前并行计算机的性能已经接近i o o t f l o p s ,1 0 0 0 t f l o p s 的并行计算机正在 规划之中。我国并行计算机的研制已经走在世界前列,正在研制生产i o o t f l o p s 的巨型计算机系统。2 0 0 4 年曙光公司生产的曙光4 0 0 0 a 在2 0 0 4 年6 月的世界t o p s 0 0 排名中位列第1 0 名,这是我国公开发布的高性能计算机在世界t o p s 0 0 中首次进入 前十名,这标志着我国在并行计算机系统的研制和生产中已经赶上了国际先进水 平,为提高我国的科学研究水平奠定了物质基础。 上海大学于2 0 0 4 年底成功研制了自强3 0 0 0 高性能集群系统,其无论是规模、 性能还是系统复杂度都远高于之前研制的自强2 0 0 0 系统。作为上海高校网格平台 的主节点,稳定、高效、安全成为整个集群的最基本要求,而针对其开发一套完 善的有自主产权的集群管理系统迫在眉睫。 1 2 集群系统描述 集群系统是通过高性能网络( l a n 或w a n ) 进行物理连接的计算机集合;这些 计算机在并行开发环境和并行程序设计下,统一调度,协调处理,实现高效并行 处理。一般称集群中的计算机为节点( n o d e ) ,集群的节点可以是任意类型的计算 机,包括p c 、工作站、s m p ,甚至是大型机,拥有独立的内存、i o 设备和操作 系统。节点可以是在一起的,也可以是物理上分散而通过l a n 连接在一起的。一 个连接在l a n 基础上的计算机集群对于用户和应用程序来说像一个单一的系统。 集群系统以良好的性能、可扩展性、可用性、可靠性及性价比优势,成为高性能 计算机体系结构的发展趋势”。理想的集群系统结构”1 如图1 1 所示。 上海大学硕士学位论文 t h ep o s t g r a d u a t et h e s i so f s h a n g h a iu n i v e m i 时 并行编程环境 ( j a v a , m p i ,p v m 等) 用户接口:g u i ,w c b s h e l l 等 用于管理与控制 单一系统映像基础设施 可用性支持 为上层提供服务的特定操作系统扩展或中间件层 操作系统 节点 操作系统 节点 操作系统 节点 网络互联部件( 千兆以太网或高速商品化网络) s 黼储区域网络一蔷馨薯酽i 一致裟瓣专篙 田1 - 1 集群系统体系结构 集群系统的优势在于良好的性能价格比,即:使用高速网络将廉价、高性能 的工作站连成工作站集群,只用花费很小的成本,就可以得到昂贵的大型机或并 行机的性能。集群系统除了成本低之外,还有许多优点:如可以保护已有硬件投 资,系统配置非常灵活,提高了系统的容错能力等。 计算机应用从早期以主机为核心转变到现在以网络为核心,导致了集群系统 的广泛应用。集群计算系统是继大规模处理机,向量计算机等技术之后的又一个 超级计算技术,它已经广泛地应用于许多不同的领域中,提供了强大的批处理和 并行计算能力,代表了高性能计算机发展的新方向。 然而,如果仅仅将工作站连成网络,并不能形成集群,还需要有对这些工作 站进行管理的软件系统,集群计算机以及所依赖的软件系统集群管理系统正 是为适应这种需求而出现并快速得以发展的。因此,集群管理系统己成为高性能 计算机领域的一个热点问题。当前比较有影响的集群管理系统包括b e r k e l e y 的 g l u n i x 、s u n 公司的s o l a r i sm c 、d i g i t a l 的t r u c l u s t e r 以及n a s a 的b e o w u l f 等队。 1 3 自强3 0 0 0 系统结构 自强3 0 0 0 包含1 7 4 台计算节点,每个节点配置2 个3 2 g h zi n t e lx e o n3 2 位处理器,另外配置了1 台管理节点以及1 台存储访问节点,运行l i n u x 操作系 统,通过i n f i n i b a n d 高速互联设备作为互联网络。该系统峰值浮点处理能力为 2 * 2 * 3 2 1 7 4 = 2 2 2 7 2 ( g f l o p s ) 。集群结构如图卜2 所示。 上海人学硕士学位论文 t h e p o s t g r a d u a t e t h e s i s o f s h a n g h a l u n i v e r s i t y 图1 - 2 自强3 0 0 0 体系结构 1 4 集群的优点 集群概念的提出带来了许多的优点,同时也带来了许多的挑战。其最主要的 优点是可易用性,可获得性,可伸缩性和良好的性能价格比。 可易用性:因为集群的单个节点仍旧是传统的平台,所以用户可以在他们平 时就很熟悉的环境下面开发和运行应用程序。同时这也可以让现有的许多程序可 以不加修改的运行在处理能力强大的集群平台上。非常有利于保护用户己有的软 件投资。 可获得性:可获得性包括可靠性和好的可用性等。在传统的系统中,如大型 机和容错系统,通常是以高费用为代价来提供可获得性。相反,在集群系统中, 却是用低费用的组件来提供较高的可获得性。集群系统可获得性的实现,其关键 技术是开发共享组件可获得的软件。 可伸缩性:一个集群系统的处理能力可以简单地通过增加节点来加强。同时, 集群的可伸缩性是多面的。包括资源的可伸缩性、应用的可伸缩性、和技术的可 伸缩性等。s m p 提供了处理器的可伸缩性,在集群系统中的可伸缩性可以是计算 机的各个组件,如处理器、硬盘、内存或者i o 设备以及软件组件等。 良好的性能价格比:集群系统良好的性能价格比是它受到人们青睐的重要因 素。它可以把一些廉价系统组合在一起协同地工作,在总体上的性能却可以超过 大型机甚至巨型机。美国亚特兰大的e m o r y 大学、c e s d i s 哥德航天飞行中心和 加利福尼亚技术学院的科学技术人员、研究人员和实验室工作人员一起在1 9 9 7 年建立了1 6 个节点的p 2 0 0 微机集群b e o w u l f 系统,只用5 万美元而使系统达到 每秒1 0 亿次浮点运算的能力。使用大众化的p c 通过l a n 互联而达到超级计算机 的功能和能力。 同时,集群技术可以保护用户在原有设备上的硬件投资,用户可以将新旧设 备组合起来成为一个集群,达到提供更高的性能的目的。 1 5 课题研究的意义 目前市场上绝大部分性能较高的集群管理系统都是国外产品,价格非常昂 贵,如i b m 的n e t w o r kd is p a t c h e r , c is c o 的l o c a ld i r e c t o r 等专有软硬件产 品都依赖于其技术专利或高性能服务器系统,软硬件的捆绑销售价格达上万美 上海大学硕士学位论文 t h ep o s t g r a d u a t e t h e s i so f s h a n g h a iu n i v e r s i t y 兀。 随着l i n u x 操作系统的流行,目前出现了基于l i n u x 、基于p c 的集群解决 方案,如l v s 。l i n u x 自问世以来,就受到了人们的关注,并得到了迅猛的发展。 特别是近年来,l i n u x 己经发展成为一个高性能、高可靠性的操作系统,可以与 各种商业操作系统分庭抗礼。l i n u x 的免费获取和开放源代码使得它在中小型服 务器领域成为性价比最佳的选择,有越来越多的用户选择使用l i n u x 构建高性能 并行计算机及各种应用服务器。因此,在l i n u x 平台下,研制具有自主知识产权, 具有一定通用性,满足高性能、高可用性、可伸缩性等要求的集群管理软件具有 重大的研究和实用意义。另外,在l i n u x 平台上已经有一些优秀的开发源代码软 件可以为我们所用,所以我们可以在前人研究的基础上做进一步的研究开发。 1 6 主要开展的研究工作 我们在研究该课题期间主要从事了以下几个方面的研究并且取得了一定的研 究成果。研究并开发了一套适用于上海大学自强3 0 0 0 高性能计算集群的集群管 理系统。 该系统的主要功能: ( 1 ) 集群系统动态部署 ( 2 ) 集群系统性能监测 ( 3 ) 集群系统的统一管理 ( 4 ) 集群系统的作业管理 有别于其他高性能集群管理系统,我们针对集群的伸缩性及易用性进行了重 点研究,这一思想体现在整个集群管理系统的设计中。 1 7 论文的结构 为了更好的为网格计算服务,同时为了提升整个集群的管理的效率,我们在 参考国内外的对于集群管理系统和作业管理系统的实现,考虑到我们在使用自强 3 0 0 0 系统作为上海高校网格平台主节点时遇到的实际的问题,设计了一个针对 c l u s t e r 集群进行部署、管理和作业管理的系统。 第二章我们将介绍集群管理系统的系统构架,提出了集群管理系统主要由集 群部署系统、集群管理系统、作业管理系统、集群管理协议所组成。 第三章我们介绍了集群管理的主要问题的研究和解决,并且就四方面展开了 讨论:( 1 ) 集群部署系统的构建;( 2 ) 集群管理系统的网络协议和具体的实现: ( 3 ) 集群管理系统的资源管理问题的解决;( 4 ) 集群管理系统的文件系统及其 相关的问题的解决。 第四章我们详细的讨论了集群作业的调度与管理,并且给出了集群作业的模 型,并且针对这个模型给出了一系列的集群作业的调度算法。 第五章我们将给出一系列的性能的评测的数据来反映出集群管理系统在部 署及监控方面的特点。 第六章是对于所有的工作的总结并且对于将来的工作和发展的情况做了一 些展望。 4 上海大学硕士学位论文 t h ep o s t g r a d u a t et h c s i so f s h a n g h a iu n i v e r s i t y 1 8 小结 本章中介绍的内容有:课题研究的背景与意义;集群系统的描述及优点:本 文的研究与设计工作和论文的组织结构。 上海大学硕士学位论文 t h e p o s t g r a d u a t e t h e s i s o f s h a n g h a iu n i v e r s i t y 第二章集群管理系统的构架研究 在我们的设计中,集群管理系统( c l u s t e r m a n a g e m e n t s y s t e m ,c m s ) 分为三 个模块:集群部署系统( c l u s t e rd e p l o y m e n ts y s t e m ) 、集群管理器( c l u s t e r m a n a g e r ) 、作业管理器( j o bm a n a g e r ) 。集群部署系统能够对集群节点操作系统及 软件进行快速便捷的安装,并在节点出现故障时将其迅速恢复到初始状态;集群 管理器用来对集群内各节点软硬件的状态进行监测及根据设置的危险值报警;作 业管理器主要是用来接收用户的作业,并且执行作业,同时将作业运行的结果返 回给用户的一套系统,要求在集群内节点数量增加或减少时能快速平滑地切换, 不影响集群的运行。1 。图2 1 为我们所设计的集群管理系统模型。 集群管理器 ( c l u s t e rm a n a g e r ) 作业提交 f j o bc l i e n t ) 作业管理器 ( j o bm a n a g e 0 守护进程 ( m o m ) 集群管理协议 ( c l u s t e rm a n a g e m e n tp r o t o c 0 1 ) 节点 f n o d e ) 节点 m o d e ) 节点 ( n o d e ) 节点 m o d e ) 节点 ( n 0 d e ) 集群部署系统 ( c l u s t e rd e p l o y m e n ts y s t e m ) 图2 - 1 集群管理系统的系统构架 2 1 集群节点的快速部署 随着集群内节点数量的增加,节点操作系统及软件的安装成为一项很烦琐的 工作。因此我们提出一种基于l if l u x 系统的集群快速部署方案,提供多个节点的 软件自动安装、升级、备份等功能。由于负载均衡且集群内各节点实现功能相同, 所安装的操作系统及软件也都相同,在硬件配置兼容的前提下完全可以采用软件 自动快速安装。同时也可以用此方法对故障节点进行快速恢复。这一思想曾有 论文提及,它是单一系统映象集群管理系统中的重要组成部分,我们针对通用性 及灵活性进行改进并取得一定成效。 2 1 1l i n u x 启动过程 计算机启动后,首先被执行的是b i o s 代码,其功能主要为初始化系统的硬件 上海大学硕士学位论文 t h e p o s t g r a d u a t e t h e s i s o f s h a a g h a i u n i v e r s i t y 设各。之后b i o s 载入启动设备的引导扇区。如果启动设备为硬盘,则引导区是 m b r ( 主引导记录) ;如果为软盘,则引导区就是第一个扇区。这部分数据包含一 个不大于5 1 2 字节的小型程序。这部分程序可能为一个分区管理程序、引导程序 或者仅仅是操作系统核心的一部分,类似的程序有l i l o 、g r u b 、s y s l i n u x 等。b i o s 代码执行完毕后,引导程序会接管并执行之后的启动代码。其包含若干执行步骤, 可能有选择菜单,显示信息或者获取核心参数等。 第二步是载入操作系统内核。启动l ir i l l x 所需的组件包括内核镜像及i n i t r d ( i n i t i a lr a m d i s k ,是一个启动时存在于内存的文件系统。) 。其中i n i t r d 是可 选的,它的主要功能是在操作系统启动之前载入一些附加的设备驱动,例如 r e d h a tl i n u x 中的i n i t r d 就是用于载入s c s i 和r a i d 设备的驱动。另外,由于内核 镜像有大小限制,当设备驱动不能编译迸内核镜像时,i n i t r d 也是必要的。成功 载入内核后,启动程序跳转到内核的入口,并开始进行子系统初始化。这些子系 统包括内存管理、网络、缓存、i 0 控制器等。 紧跟着,内核会载入根分区中的文件系统。当i n i t r d 装载后会运行一个名为 “l i n u x r c ”的程序,它的主要功能是装载系统设备,其可以是脚本或者二进制 程序。 最后执行文件系统中的前导程序。前导程序的任务是初始化系统组件。它会 激活网络界面,启动后台进程( 包括邮件服务,n f sj 务,n i s j 艮务等) ,并显示 终端登录界面或者图形登录界面。 至此,整个l i n u x 系统最终启动完毕。流程如图2 - 2 所示。 2 1 2 远程引导技术 图2 - 2l i n u x 启动流程 所有的p cb i o s 都支持的引导设备为硬盘、c d r o m 或者软盘,集群节点也不例 外。随着科技的发展,现在大部分的b i o s 允许使用u s b 设备或者网卡引导。目前 网络引导技术主要有以下几种: e t h e r b o o t ,首先建立一个自举程序镜像,并作为插件烧入网卡的 r o m e p r o m 。需要一个定制好的引导镜像来载入并启动系统。这种方式弓 上海大学硕上学位论文 t h ep o s t g r a d u a t et h e s i so f s h a n g h a iu n i v e r s i t y 导l i n u x 的速度是最快的,但它有一个最大的问题,就是支持这种远程 引导协议的启动芯片普及率很低。 n e t b o o t ,放弃了类似e t h e r b o o t 那种定制网卡驱动的方式,转而使用标 准d o s 驱动( p a c k e t 或者n d i s 一2 ) 。这种方案仍然需要使用n e t b o o t i 具包 来建立一个启动镜像。 p x e ( p r e b o o te x e c u t i o ne n v i r o n m e n t ) ,是i n t e l 公司提出的标准并迅速 推广,因此很多网卡支持p x e 启动方式,我们在这里主要讨论此种协议。 p x e 支持多种网络连接协议,包括d h c p 和t f t p 等。目前市场上大部分网络接 口卡都支持p x e 。在l i n u x 中,通用的引导程序名为p x e l i n u x 。与n e t b o o t 和 e t h e r b o o t 不同的是,它不含初始化白举代码,而仅仅与p x e 启动程序通讯。 我们采用的网络启动过程如下: 首先,网卡中的代码联系b 0 0 t p d h c p 服务器并获得i p 地址,继而获得样本 节点的i p 地址并使用t f t p 协议下载引导程序到本机,最后跳转到启动程序的入 口点进行正常启动。流程如图2 3 所示。 2 1 3 集群部署设计方案 b m s 4 e 码 寻找d h c p 服务器 l 获得本机i p 地址 i 和样本节点地址 + 下载引导程序 内核镜像 j 载入n f s 文件系统 0 i n i t r d j 前导程序 图2 - 3l i n u x 网络启动流程 本方案使用标准c l i e n t s e r v e r 架构。先安装好样本节点,集群内要安装系 统的节点通过p x e 引导安装样本节点的镜像,就可以实现快速自动安装,当集群 有变更时只需更改样本机器的设置,然后更新镜像就可以实现整个集群系统的 更新,当集群内节点出现重大故障时,按此方法将该节点系统重新安装即可恢 复。 上海大学硕士学位论文 t h e p o s t g r a d u a t e t h e s i s o f s h a n g h a i u n i v e r s i t y p x e 服务器用于网络启动的配置,镜像服务器和节点通过它获得i p 地址。这 样,节点才能下载启动所需的文件并使用共享的系统文件。p x e f l 艮务器可以同时 也是镜像服务器。架构如图2 4 所示。 d h c p 服务器镜像服务器 图2 4 集群部署系统架构 节点 首先每个节点要使用p x e 远程启动,开机后它会发送d h c p 请求,d h c p 服务器 收到请求后会返回分配的i p 地址以及镜像服务器的i p 地址,节点从镜像服务器下 载引导程序并运行,引导程序会取得启动所需的l i n u x 内核以及i n i t r d 并进行启 动。 此方案主要涉及启动程序的编写,另外需要n f s ,t f t p ,以及d h c p 的集成环 境。我们的目标是在p c 集群中使用共享的单- - l i n u x 镜像,同时保证系统性能。 因此系统镜像的导出和导入是方案成功的关键,这里采用n f s 来共享整个样本 t z l j 。并且需要对i n i t r d 进行调整,使之导入并建立根分区时能搜索本地磁盘缓 存,减轻镜像服务器的负担。 t f t p 是一个传输文件的简单协议,它基于u d p 协议而实现”。主要用于进 行小文件传输。这里主要用它来传输引导程序进行启动。 网络文件系统( n f s ) ,支持在不同类型的系统之间通过网络进行文件共享。 镜像服务器向其它节点提供对样本文件的访问,节点和程序可以象访问本地文件 一样访问镜像服务器上的文件。 2 2 集群管理系统 近些年来,随着技术的发展,集群的规模从过去的数个节点扩充到数百个节 点甚至数千个节点,集群的管理也变的越来越复杂,集群管理越来越成为一项具 有挑战性的工作。如何保持软件的更新,监视硬件和和软件的运行状态,以及对 集群进行定时的维护都将成为集群管理员极其费时费力的工作。因此我们需要一 套完善的集群管理系统实现对整个集群的管理。 2 2 1 集群管理系统所应实现的功能 近几年来,集群管理系统的研究己经成为集群领域内的一个热点,人们对集 群管理系统的兴趣不断增强,一些商业公司和开放源代码组织都开发了一系列可 以提供一定的管理功能的工具软件。但是,这些软件都是基于通用的角度开发的, 不一定能够完全满足特定领域的需要。通常情况下,一套集群管理系统应该具备 以下的基本功能: 上海大学硕上学位论文 t h e p o s t g r a d u a t e t h e s i s o f s h a n g h a i u n i v e r s i t y 任务管理 对于高性能计算集群来说,如何将计算任务通过集群管理系统提交到整个集 群上去运行,如何获取计算的结果是整个集群管理系统最重要的功能。在过去的 集群系统中,任务主要是通过m p i 或者p v m 命令分配到各个节点上去运行的。 这些命令通常是在集群中的一个节点上来运行的,这个节点通常被称为前端机 ( f r o n te n d ) 。集群管理员通过对前端机的操作来实现对计算任务的管理。这样, 管理员就必须和集群进行直接的接触。我们都知道,集群通常都处于一个独立并 且密闭的环境之中,并且要求保持一定的温度和湿度,而且由于多个节点的同时 运行,这个空间中会产生极大的噪音,因此,这种直接的接触对集群和集群管理 员都会产生伤害。集群管理系统的出现就允许管理员在一台与集群完全隔离的计 算机上进行对集群的全部操作。 节点监控 在集群运行的过程中,随时需要对节点的状态进行监控,从而掌握节点的运 行情况,从而采取相应的措施。对节点的监控主要包括两个方面:硬件监控和软 件的监控。 1 对硬件的监控主要包括c p u 的温度,机器风扇的转速等。 2 对软件的监控主要包括c p u 运行的负载,系统中当前所运行的进程,内 存和外存的使用状况等。 对于集群管理系统来说,应该实现在一个用户友好的管理界面上清楚的显示 各个节点的运行状态,并且应该提供相应的数据库支持来保存这些系统状态的历 史记录。 电源管理 电源管理包括系统的启动和关闭,通过集群管理系统采用批处理的方法进行 启动和关机操作省去了对每一个节点进行操作的麻烦。我们可以想象,如果是一 个几百个节点的集群,对每一个节点去进行开关机将是一件多么麻烦的事情。而 且,通过集群管理系统进行电源管理也从另一个方面保证了用户和集群系统的隔 离。 网络监控 前边已经提到,集群的硬件组成包括高性能的计算节点和高速网络。网络的 运行状况,对于整个集群的工作效率将起到巨大的影响。集群管理系统应该提供 对网络进行监控的功能,发现拥塞,及时解决。 远程访问 集群管理系统应该允许用户在管理节点上对集群系统进行访问,就相当于提 供了一个远程的s h e l l 系统,供用户进行一些特殊的操作。这种功能,可以用操 作系统所提供的t e l n e t 功能来简单的实现,也可以在集群管理系统中单独的实 现。 用户管理 集群管理系统给集群的使用提供了这样的灵活性,管理员可以将不同的节点 集合提供给不同的用户。这样的灵活性有什么好处呢? 对于特定的企业,他们对 于高性能计算的要求是不同的,假设一个企业在一个很长的时间段内才需要进行 一次大规模的计算,这样,这个企业如果为了这些偶尔的应用就购置一个并不是 很便宜集群就显得非常浪费了。有了这样的灵活性,就有可能出现一种新的企业 形式:集群服务提供商,他们可以将一个大的集群中的一部分节点出租给需要的 企业使用,对于企业来说,这显然减少了投资。有了用户管理的支持,不同的企 上海大学硕上学位论文 t h e p o s t g r a d u a t e t h e s i s o f s h a n g h a i u n i v e r s i t y 业用户可以使用相同的管理界面来使用集群中的不同节点,他们之间互不干扰。 对于每一个企业用户来说,就好像使用一个独立的集群一样。 在集群管理系统中提供用户管理的功能,就需要给集群的用户设定不同的角 色,对每个不同的角色提供不同的权限,例如管理员和普通用户。每一个计算节 点对管理员来说都是可见的,他可以将这些计算节点分配给不同的用户。而对于 每一个用户来说,他们只能看见管理员分配给自己的节点,这样就实现了用户使 用集群的透明性。 图形用户界面g u i 对于集群管理系统来说,一个友好的用户界面是必不可少的,以上提到的几 种功能,都应该通过图形用户界面的形式来实现。图形用户界面的提供,大大的 方便了用户,使用户不必记忆繁琐的命令格式,而通过简单的鼠标点击实现对集 群的管理和使用。 其他 随着集群规模的不断扩大和集群技术的不断发展,对集群管理系统提出了一 些新的要求。 1 支持集群节点数量的动态增加。 2 支持采用不同操作系统平台的集群节点。 3 集群管理系统的使用不会对整个集群的性能造成影响。 4 支持对集群进行远程管理等等。 2 2 2 单一系统映像s s i 集群管理系统的目的就是提供一个单一映像的控制模式,该控制模式通过在 单一节点上运行控制整个集群的软件,即整个集群可以由单一节点进行控制。 单一系统映像( s s i ) 基础结构与操作系统联系在一起,在所有节点上提供 对系统资源的统一访问。系统可用性基础结构在集群各节点上提供集群服务,如 检查点、自动故障检测、故障恢复和容错支持等。 实现一个全局的s s l ,必须支持以下服务: 单入口点:用户连接到集群上就象连接一个单个系统一样,而不是象分布式 系统一样连接到单个节点;单一文件层次:在进入系统时,用户看见的文件系统 是文件的单一层次;单点管理和控制:整个集群使用单一g u i 工具创建的单一 窗口进行管理和控制。 单一虚拟网络:节点可以通过集群域访问任意网络连接,即使并非所有的集 群节点都有物理连接; 单一内存空间:集群各节点的内存可以作为共享内存使用: 单一作业管理系统:用户以透明的作业提交机制在任一节点提交作业,作业 可以以批处理、交互或者并行模式调度执行; 单一用户接口:用户可以通过单一g u i 使用集群。 单一i o 空间:任一节点可以使用本地或远程的外设和磁盘设备的i o 操作; 单一进程空间:每一进程拥有集群范围的独特的进程i d 。任一节点上的进程 可以在同一节点或不同节点上生成子进程或与任何远程节点上的其它进程通信。 集群支持全局进程管理,允许象在本地一样管理全部进程; 检查点设置和进程迁移:检查点机制使进程状态和中间计算结果得到定期保 存。当节点失效时,故障节点的进程可以在另一有效节点重新开始,而不会丢失 上海大学硕士学位论文 t h e p o s t g r a d u a t e t h e s i s o f s h m 3 9 h a i u n i v e r s i t y 计算结果。 2 2 3 集群管理系统描述 管理系统应该能够完成包括所有节点的系统重启,状态查询,显示远程控制 台,安装操作系统升级各节点系统及应用软件等功能。一个集群只需一套外置输 7 , 输出设备( 键盘、鼠标、显示器) 。集群管理系统同时具有方便的运行时在线管 理。在c m s 的支持下,管理员只需登录到管理节点,便可完成在所有指定计算 节点上同时安装卸载r p m 软件、升级c m s 客户端、更新配置文件、并行执行同 一s h e l l 命令( 脚本) 等操作,可以对集群节点进行动态、静态分组管理,删除或新 增节点。有效地监控各节点的资源状况。c m s 的后台进行时刻监控所有指定资 源的状态,并且及时响应给相应的处理程序或集群管理员,而并不需要很大的带 宽。可以及时检测到系统错误,准确定位错误,并自动解决或记录日志以帮助 管理员手工处理错误。 集群管理系统实际上就是对于整个集群的硬件资源( h ) 和软件资源( s ) 进行 管理和控制( c ) ,因此整个集群管理系统在任意时刻t 的所被使用的功能f ( f ) 形 式化表示就是: f ( t ) = c ( 日( 0 ,s ( f ) ) t 【0 ,+ o 。) 公式2 1 集群系统资源的形式化描述 集群系统中的硬件资源日包括c p u 资源c p ,内存资源m r ,网络资源n r , 存储资源s r 。以上这些资源可以在任意t 时刻通过标量的形式反映出来,即c p , m r ,n r , 和s r t 。所以对于集群管理系统而言,在任意时刻t ,其硬件资源就可 以表示为: 日,= ( c 只,m r ,n r , ,s r , ) t 【0 ,+ o o ) 公式2 2 集群的硬件资源的形式化描述 下面我们对于四元组中每个标量进行说明: c 只指的是在任意时刻f 集群的中的每个节点的c p u 占用率,m r ,指的是在任意 时刻f 集群的中的每个节点的内存占用率,n r , 指的是在任意时刻f 集群的中的每 个节点的通信量,该通信量又分为

温馨提示

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

评论

0/150

提交评论