(计算机应用技术专业论文)高可靠可扩展pc集群存储系统研究.pdf_第1页
(计算机应用技术专业论文)高可靠可扩展pc集群存储系统研究.pdf_第2页
(计算机应用技术专业论文)高可靠可扩展pc集群存储系统研究.pdf_第3页
(计算机应用技术专业论文)高可靠可扩展pc集群存储系统研究.pdf_第4页
(计算机应用技术专业论文)高可靠可扩展pc集群存储系统研究.pdf_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

摘要 摘要 随着计算机技术和网络技术的飞速发展,由此产生的各种数据呈几何级数爆炸式 增长,各种在线数据增长迅速,促使数据存储容量以每年3 到5 倍的速度急剧增加。大 量数据密集型的应用,如数字图书馆、数据仓库、数据挖掘、气象数据处理、医药视频 图像数据处理、生命科学研究、多媒体点播、在线数据处理等,对存储系统的性能( i o 带宽、吞吐率、响应时间等) 提出更高的要求。如何构建一个高性能、高可靠、可扩展 的存储系统就成为了目前存储系统所面临的一个重要问题。 因此,针对当前网络存储技术存在的存储服务瓶颈问题,与价格昂贵的大型磁盘阵 列相比,介绍了一个高可靠可扩展p c 集群存储系统的设计方案,并提出了一种对各个 存储结点所挂磁盘的分组方案,对大、小数据对象分别采用不同的放置、定位技术,重 点讨论了小数据对象的伪随机放置算法,该算法在系统扩展时也能够有效地定位数据对 象。另外通过有效的对数据对象的复锘如使系统具有很好的容错性。最后对系统的性能 进行了分析。 关键词集群存储;数据分发;数据复制;系统容错 a b s t r a c t w i t ht h ed e v e l o p m e n to ft h ec o m p u t e rt e c h n o l o g ya n dn e t w o r kt e c h n o l o g y , v a r i o u s k i n d so fd a t ap r e s e n tt h ee x p l o d i n gt y p eo f g e o m e t r i cs e r i e st oi n c r e a s e v a r i o u sk i n d so f o n l i n ed a t ai n c r e a s er a p i d l yt h i si m p e l st h e s t o r a g ec a p a c i t yo ft h ed a t at oi n c r e a s e s h a r p l ya tt h es p e e do f3t o5t i m e so fe v e r yy e a r al a r g ea m o u n to fa p p l i c a t i o nw i t h i n t e n s i v ed a t a ,s u c ha st h ed i g i t a ll i b r a r y ,d a t aw a r e h o u s e ,d a t am i n i n g ,m e t e o r o l o g i c a l d a t ap r o c e s s i n g ,m e d i c a lv i d e op i c t u r ed a t ap r o c e s s i n g ,s c i e n t i f i cr e s e a r c ho ft h eb i o l o g y , m u l t i m e d i ar e q u e s t i n g ,o n l i n ed a t ap r o c e s s i n g ,e t c ,p u tf o r w a r dh i g h e rr e q u e s tt ot h e p e r f o r m a n c e ( i 0b a n d w i d t h ,t h r o u g h o u tr a t e ,r e s p o n s et i m e ,e t c ) t ot h es t o r a g es y s t e m h o wt oc o n s t r u c tah i g hp e r f o r m a n c e ,h i g hr e l i a b l ea n dh i g hs c a l a b l es t o r a g es y s t e m b e c o m e sa ni m p o r t a n tp r o b l e mt h a tt h es t o r a g es y s t e mf a c e sa tp r e s e n t a i m i n g a tt h ec h o k ep o i n to fs t o r a g es e r v i c ei nt h e c u r r e n tn e t w o r ks t o r a g e t e c h n o l o g y , ah i g h r e l i a b i l i t ys c a l a b l ep cc l u s t e r b a s e ds t o r a g es y s t e mi sp r o p o s e d ,a s w e l la sad i s ks t r i p i n gs c h e m eo ft h es t o r a g en o d e si nt h es y s t e m i nt h i ss c h e m e , d i f f e r e n tp l a c e m e n ta n dl o c a t i o nt e c h n i q u e sa r ea d o p t e da c c o r d i n gt ot h ed a t ao b j e c t s c a l e s t h ep s e u d o r a n d o mp l a c e m e n ta l g o r i t h mo fs m a l ld a t ao b j e c t si st h e nd i s c u s s e d i ns t r e s s ,w h i c hc a ne f f e c t i v e l yl o c a t ed a t ao b j e c t sd u r i n gt h es y s t e ms c a l i n g i na d d i t i o n , t h es y s t e mf a u l tt o l e r a n c ei sa c h i e v e db yt h ee f f e c t i v er e p l i c a t i o no fd a t ao b j e c t s f i n a l l y , t h es y s t e mp e r f o r m a n c ei sa n a l y z e d k e y w o r d s :c l u s t e rs t o r a g e ,d a t ad i s t r i b u t i o n ,d a t ar e p l i c a t i o n ,s y s t e mf a u l t 河北大学 学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下进行的研究 工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外, 论文中不包含其他人已经发表或撰写的研究成果,也不包含为获得河北大学 或其他教育机构的学位或证书所使用过的材料。与我一同工作的同志对本研 究所做的任何贡献均已在论文中作了明确的说明并表示了致谢。 作者签名: i 垂垒姿壹 日期:放年上月生日 学位论文使用授权声明 本人完全了解河北大学有关保留、使用学位论文的规定,即:学校有权 保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅 和借阅。学校可以公布论文的全部或部分内容,可以采用影印、缩印或其他 复制手段保存论文。 本学位论文属于 1 、保密口,在年月日解密后适用本授权声明。 2 、不保密日。 ( 请在以上相应方格内打“4 ”) 作者签名:l 盘丝! 塾:日期:卫年l 月止同 导师签名:鱼出罐日期:兰! 堑年l 月日 1 1 引言 第1 章绪论 大量数据资料应用的持续、快速增长,如仿真、建模、i n t e r n e z 和i n t r a n e t 浏览、 多媒体、交互进程、电子商务、资料仓库和数据采集等,导致了对更大的存储设备容量 的需求,同时,网络带宽的需求也在持续增加。然而,随着网络技术的不断发展和建设, 巨大的网络客户使传统的文件服务器成为网络服务的瓶颈,尤其在数据存储方面,才一仅 数据存储容量成指数增长,而且对存储设备的性能i 可扩展性、安全性及可管理性等诸 多方面有进一步的要求。当前的( 分布式并行) 文件系统“与数据库系统都无法较好地 满足这一类需求。 一个高性能可扩展集群存储系统是数据密集型应用中的重要组成部分”1 ,在庞大的 存储市场需求的推动下,存储技术也从传统的以主机为中心的存储结构向网络存储系统 发展。在网络存储技术中,由网络存储设备提供网络信息系统的信息存取和共享服务, 其主要特征体现在超大存储容量、大数据传输率以及高的系统可用性、远程备份、异地 容灾等方面。目前,网络存储技术正在成为计算机领域的热点,可以说网络存储技术将 引发继c p u 、i n t e r n e t 之后i t 领域的第三次技术浪潮。如何适应新的存储需求,采用 什么技术来突破当前存在的存储服务的瓶颈,是当前所要面对的、必须解决的难题。 1 2 研究背景 当前,在中高端计算机信息系统的建设中,高性能计算资源和大容量存储资源都是 建设单位首要考虑的必备资源。但是在计算机应用的早期,由于硬件成本昂贵,系统软 件在设计上也仅以科学计算为主。系统软件对远程通信模块的支持较弱,高性能计算资 源和大容量存储资源在当时是极为稀缺的资源。一般情况下,高性能计算资源与大容量 存储资源是紧密联系在一起的。经过这几年计算机v l s i 技术的飞速发展,高性能计算 技术和大容量存储技术在其各自领域中得有了长足发展。同时,计算机的应用领域和应 技术和大容量存储技术在其各自领域中得有了长足发展。同时,计算机的应用领域和应 河北人学工学硕士学位论文 用模式也发生了极大变化:应用领域从早期的以科学计算为主,发展到关键业务中运行 核心业务系统为主,核心业务系统又是为本行业基础数据提供加工处理,为行业发展提 供决策支持的基础;应用模式也从早期的单纯科学计算,发展到现在的高性能计算处理 与大容量数据存储处理相分离的模式。 近年来,随着计算机技术及网络技术的飞速发展,为高性能计算资源和大容量存储 资源在物理上的分离提供了条件。随着各行各业信息化建设的深入发展,数据信息量急 剧增加,用户对计算机系统的高性能计算和大容量存储的需求不断增长。这使得高性能 计算系统与大容量存储系统走向分离。 用户对于存储系统的容量、性能、可靠性、可用性、可扩展性、安全性等要求越来 越高。在现代化管理的国家机关、企事业单位中,应用系统将越来越多的关键业务信息 转变为数据,存放在存储系统中的业务数据的价值也就越来越高。在一个生产系统中, 存储系统的高可靠、大容量、可动态扩展特性是关键因素。因为一旦生产数据进入存储 系统后,存储系统首先就必须保证3 6 5 天2 4 小时不间断、高可靠运行。其次,存储系 统必须有海量存储能力和良好的可扩展性,否则如果再用其他的存储资源来替换,则要 付出高昂的代价。同时数据迁移对于生产系统而言是一件风险极高的事情,对于海量存 储系统则更加严重。 由此可见,传统的与独立的计算系统上连接的存储系统以及d a s 。1 工作模式显然无 法满足现代用户的需求。从可靠性的角度看,在d a s 方式下,存储设备所附属的计算设 备一旦发生故障,则直接导致存储资源不可用。而在网络存储的环境下,存储数据的安 全性主要由存储设备自身来保障,受外界影响较小。同时在网络存储环境中,可以在更 广泛的范围内对数据进行冗余、复制、备份,为用户提供更加安全的高可用数据服务。 从可扩展性的角度看,在d a s 方式下,单独的计算资源可连接的存储设备总是有限的, 无法满足用户在线可扩展的需求。而计算资源和存储资源分离后,存储资源通过自身的 高可靠性与灵活扩展能力可满足各种离性能计算系统的需求。 随着集群技术及网格计算的发展,用户越来越只关心计算结果而不关心数据在哪台 具体的计算机上存储;同时,企事业用户从成本的角度考虑,还会要求现有的存储资源 应能够通过动态组合充分利用,以适应不断变化的存储需求。 本课题是河北省科技转化基金项目“高可靠可扩展分布式存储服务器”( 2 0 0 1 0 5 0 1 ) 第l 章绪论 的一部分。本文研究其中的数据管理与数据容错部分,并给出了基于p c 集群的存储体 系结构。 1 3 研究现状 目前,用于网络的存储主要有4 种:附属于服务器的磁盘阵列 r a m ) 、集中式磁 盘阵歹帽匣务器、附网存储( n a s ) 和存储区域陋j ( s a n ) 。前两种由于其可用性、可扩展性、 数据备份和数据迁移等方面的缺陷,已经越来越难以满足存储市场的需求【1 0 。 目前分布式文件系统 1 1 - 1 5 1 及基于集群的存储系统 1 6 - 1 卅得n t 广泛的关注,在这些系 统中,存储资源是直接连接到专用或通用的集群节点上,集群节点通过一个共享的l a n 来相互协作并整合分布式的存储资源。本文接下来会对它们的研究现状做进一步的分 析。 1 3 1x f s ) ( f s 【l l 】是一种采用了无服务方式以提供可扩展的文件服务的机群文件系统。x f s 集 成了存储分组结构和目志结构,并且也实现了数据存储与元数据管理的彼此分离。x f s 通过全部分布数据存储与元数据管理的功能减少了集中的瓶颈。为了获得更高的性能, x f s 采用了合作缓存,一种通过各客户缓存的协调合作来替代传统的集中的服务端缓存。 在x f s 中,任何机器都可以缓存、存储或者控制任意的数据块,这种方式可以提供比传 统文件系统结构更好的性能和可扩展性。但是它有一个缺点是它必须维护在文件级粒度 下的缓存一致性,否则可能导致在某些情况下的共享错误问题( f a l s e s h a r i n gp r o b l e m ) 。 1 3 2c o s m o s c o s m o s 1 2 是在曙光3 0 0 0 超级服务器上实现的一种可扩展单一映像集群文件系 统。c o s m o s 的底层基于a i x 文件系统j f s ,系统中每个节点通过高速网络互相连接, c o s m o s 构建于这些操作系统平台之上,向用户提供文件服务。c o s m o s 由核心相关 层( k e r n e l ) 和用户层两部分组成。核心层是在虚拟文件系统一级中实现的,它接收来 自逻辑文件系统的f o 请求,并以一定的格式转发给用户层。c o s m o s 的用户层由3 河北大学。i :学硕士学位论文 统的i o 请求,并以一定的格式转发给用户层。c o s m o s 的用户层由3 类用户进程构成, 被分别称为客户( c l i e n t ) 、元数据管理器( m a n a g e r ) 和存储服务器( s t o r a g e ) ,它们协调 工作,共同完成核心层转发过来的i o 请求。其中s t o r a g e 实现具体的数据存储,c l i e n t 完成数据及元数据的缓存,而m a n a g e r 负责缓存一致性的维护及元数据的存储管理。需 要存取c o s m o s 文件系统的节点要配置c l i e n t ,本地磁盘上存有c o s m o s 子文件数据的节 点要配置s t o r a g e , 对于m a n a g e r ,通常是平均每数个节点才配置一个。 c o s m o s 中文件数据的定位是由管理服务器来完成的,并且在c o s m o s 中实现的是分 布式的元数据管理机制以提供可扩展的定位服务。另外,管理服务器的另一个任务是维 持缓存的一致性。在c o s m o s 中,每一个管理服务器负责维护整个文件系统的一个子囊 的位置信息,管理服务器可以应用这种信息来转发i o 需求到正确的位置信息( 合作缓 存或附属存储器) 。管理服务器也控制对相同数据块的并行存取。c o s m o s 利用一个管理 服务器映射来实现分布式元数据管理。这种映射包括了一系列的机器标志符,运用这个 可以知道哪个机器管理文件系统的哪一部分子集。 相比较x f s ,c o s m o s 的低层是基于j f s 来实现的,没有实现日志管理功能,因此元 数据的内容和组织是不同的。在c o s m o s 中,没有必要记录在一个节点中记录每个数据 块的磁盘位置信息,而是“块组i d ,起始节点”对信息被记录在节点中。起始节点标志 了文件的起始块存储在哪个机器上。因为不同的缓存一致性协议,缓存相关的元数据的 内容和组织也是不相同的。为了减少网络的负载,c o s m o s 直接将元数据和目录文件存储 在管理服务器上,这是与x f s 不同的另一个方面,在x f s 中,目录文件和元数据都存储 在存储服务器上,这是由x f s 采用的日志结构所决定的。 1 3 3p v f s c l e m s o n 大学的并行虚拟文件系统( p v f s ) 项目用来为运行l i n u x 圆操作系统的 p c 群集创建一个开放源码的并行文件系统。p v f s 已被广泛地用作临时存储的高性能的 大型文件系统和并行i o 研究的基础架构。作为一个并行文件系统,p v f s 将数据存储到 多个群集节点的已有的文件系统中;多个客户端可以同时访问这些数据。并行文件系统 具有众多优势: 1 ) 提供一个全局命名空间 第1 章绪论 2 ) 将数据分配到多个磁盘上 3 ) 允许使用不同的用户界面 4 ) 可以包含其它的i o 接口来支持大型文件 为高速访问群集中的文件系统,p v f s 将文件数据进彳亍条块化划分,分散存储到某些 群集节点( 称作i o 节点) 的多个磁盘上。条块化数据的方法可在群集上提供相当大的 存储容量,具体容量取决于群集中节点的数量。p v f s 所带来的存储容量可以为用户提供 整个集群内的大型全局操作空间。 与很多网络文件系统或并行文件系统一样,p v f s 是利用客户一服务器架构实现的。 它利用一组协作的用户空间进程( d a e m o n ) ,提供一个群集范围内的一致的命名空间, 并将数据条块化,分配到多个群集节点中。p v f & 客户和服务器之间的消息传递通过 t c p i p 来完成,提供可靠的通讯环境。所有的p v f s 文件系统数据都保存在i o 节点的 本地文件系统中,本地的文件系统可以是一个硬盘驱动器上的一个分区,可以是整个磁 盘驱动器,也可以利用本地所支持的l i n u x 文件系统( 例如e x t 2 ,e x t 3 和r e i s e r f s ) 所提供的多个磁盘驱动器的逻辑卷。 p v f s 使用三种类型的节点:管理节点,i 0 节点和计算节点。一个群集节点可以提 供其中的一种功能,也可以同时提供其中的两种功能或三种功能。当前的p v f s 实现中 拥有一个管理节点,一个或多个i o 节点和多个计算节点。 p v f s 存在的问题: 1 ) 集中的元数据管理成为整个系统的瓶颈,可扩展性受到一定限制。 2 ) 数据没有采取相应的容错机制,系统的可用性有待提高。 3 ) 静态配置,不具备动态扩展性。 1 3 4l u s t r e l u s t r e “4 1 是h p ,i n t e l ,c l u s t e rf i l es y s t e m 公司联合美国能源部开发的l i n u x 集群并行文件系统。该系统目前推出1 0 的发布版本,是第一个基于对象存储设备的, 开源的并行文件系统。其结构由客户端,两个m d s ,o s d 设备池通过高速的以太网或q w s n e t 所构成。目前可以支持1 0 0 0 个客户端节点的i o 请求,两个m d s 采用共享存储设备 的a c t i v e - - s t a n d b y 方式的容错机制,存储设备跟普通的,基于块的i d e 存储设备不同, 河北人学 :学硕士学位论文 是基于对象的智能存储设备。l u s t r e 采用分布式的锁管理机制来实现并发控制,元数据 和文件数据的通讯链路分开管理。 1 3 5 综合比较 通过分析我们可以看出,x f s “”和p e t a l “”是将存储设备组织成r a i d 卷的形式,这 种基于卷的存储资源虚拟方案具有以下两点不足:( 1 ) 当扩展系统中现存卷容量时,通 常需要重新配置现存的磁盘组和重新组织数;( 2 ) 结点失效或磁盘组中的一个磁盘失效 时会降低系统的冗余水平,从而使系统变得更脆弱,甚至使系统崩溃。p v f s “”最大的缺 点就是元数据服务器容易成为系统中的单点故障点,数据没有采用容错机制,系统可靠 性不高。与p v f s 相比,l u s t r e “4 1 虽然在性能,可用行和扩展性上略胜一筹,但它需要 特殊设备的支持,而且分布式的元数据服务器管理还没有实现。 1 4 研究目标 本课题着重研究在高速网络互联的计算机集群上提供一个大容量存储系统,并使其 具备高可用性、可扩展性和高可靠性,从而构建上千个节点的超大规模集群计算机,提 供性价比高的集群存储服务器,使其成为一个完善的存储解决方案。 本课题的研究目标是: 1 整合现有计算机存储资源,通过高速网络互连的集群技术实现高可靠,可扩展 存储服务器。 2 提出了一种对各个存储结点所挂磁盘的分组方案,对大、小数据对象分别采用 不同的放置、定位技术,重点讨论了小数据对象的伪随机放置算法,该算法在系统扩展 时也能够有效地定位数据对象。 3 。利用广泛用于加密解密技术的s h a 一1 算法来产生数据对象的副本i d ,然后根据 各个存储结点的权值信息,利用散列函数将数据对象复制到各个存储结点,使系统具有 很好的容错性。 4 引入移动代理技术实现结点状态、负载信息的收集 第1 章绪论 1 5 论文结构 本文共分七章。第一章为绪论,介绍了本文的研究背景,国内外关于集群存储的研 究现状,以及本文的研究目标;第二章介绍了与集群存储系统相关的背景知识;第三章 概括介绍了集群存储系统的体系结构及用到的一些关键技术和策略;第四章重点介绍了 集群存储系统的数据分发策略,给出了数据分发算法,并从理论上对其性能进行了评估; 第五章进一步对数据的容错进行了研究,使系统具有高可用性特征;第六章从系统的可 用性,系统的i 0 带宽,所支持的最大用户数量等指标进行了分析;第七章对本文所做 的工作进符了总结,并对下一步的工作进行了展望。 河北火学工学硕士学位论文 第2 章相关背景知识 本课题是一个从整体出发考虑的研究课题,涉及的研究领域较为广泛。为了更好的 阐述本课题的研究工作,本章将介绍一些相关的背景知识,以及在本系统设计过程中使 用的技术。 2 1 集群 2 1 1 集群的特点和优点 集群是一种并行或分布式处理系统,由多台互联的独立计算机( 称之为结点) 整合 而成,像一个单独集成的计算资源一样协同工作。集群使用廉价的商品化组件,其结点 可以是p c 、工作站或s m p ,每结点都拥用c p u 、内存、i o 设备和操作系统,可以提供 大量冗余设备保证系统的高可用性。集群的计算能力随结点增多而增加,在集群管理系 统的统一协调下,可以达到大型机的计算机能力。 集群具有以下特征:单一系统映像、高性能、高可用性和良好的可扩展性。 典型的集群系统结构包括以下一些重要的部件: ( 1 ) 配有优秀的操作系统的多个高性能计算机; ( 2 ) 高性能网络; ( 3 ) 集群中间件( 单一系统映像和系统可用性基础) ; ( 4 ) 并行编程环境和工具。 集群中间件是一个重要的层次,它负责为独立但互联的计算机对外提供统一的系统 映像,使集群的各结点像一台计算机一样工作。 中间件层基本上由软件基础结构的两个子层构成:s s i 基础结构和系统可用性基础 结构。 s s i 基础结构与操作系统联系在一起,在所有的结点上提供资源的统一访问。系统 可用性基础结构在集群各结点上提供集群服务,如检查点、自动故障检测、故障恢复和 容错支持等。 r 第2 章相关背景知识 集群系统非常复杂以至于很少有用户能够完整地把握它,因此统一的管理工具非常 必要。如果一组互联的计算机被设计成看作好像统一的资源,就说它实现了单系统映 像( s i n g l es y s t e mi m a g e - - s s i ) 。s s i 的着眼点是减少集群系统管理的复杂性并增加集 群系统的易用性。s s i 使系统管理员能够像管理一台机器一样来管理整个集群。 s s i 的设计目标是提供系统完全的透明性、可扩展性和可靠性。首先,s s i 应使用 户看到一个单独的系统而不是互相独立的结点的集合。换句话说,s s i 的目的就在于隐 藏物理上分布结构的同时得到大部分理论上可能的计算能力:其次当有更多的结点加入 集群时,s s i 使得集群的性能也得到相应提高。要求花费在执行s s i 服务上的系统开销 要小,执行相同的操作,集群花费的总时间不能比在单机上花的时间长很多。最后,在 任何时候,s s i 服务都应该是高度可靠的。任何单点失效的恢复都应该是对用户透明的, 不影响用户应用程序的运行。 2 1 2 集群的应用 集群以其性能价格比高、可扩展性好等优势,逐渐成为一种很有前途的主流高性能 计算环境。集群可以作为所有类型的并行和分布式应用程序的运行平台。它的应用领域 已由当初的科学计算迅速扩大到事务处理、w e b 服务等商务应用领域中。 以应用目的分类,目前最常见的集群类型包括高性能计算集群和商业集群,其中商 业集群又可分为负载均衡集群和高可用性集群。 ( 1 ) 高性能计算集群( h i g hp e r f o r m a n c ec l u s t e r ) 高性能计算集群( h p c ) 的设计目的是对任何类型的任务提供一个可任意分配多结 点机器的系统资源环境,以充分利用机器的能力。h p c 常用来解决复杂的科学问题,这 些科学问题一般都需要大量的计算。h p c 不使用专门的并行超级计算机,而是使用商业 部件,如通过高速网络连接的一组p c 机或s m p 计算机,并且在公共消息传递层上进行 通信以运行并行应用程序。 高性能计算集群通过快速通信协议和高性能网络互联,使用低开销的消息传递系统 或者使用结点之间直接内存访问( d m a ) 等在结点之间进行通信,可以达到相当高的带 宽和低延迟,其处理能力可以与超级计算机相媲美。 高性能计算集群的典型代表是n a s a 的b e o w u l f 类集群和s g i 的a d v a n c e dc l u s t e r 河北大学一j :学硕士学位论文 e n v i r o n m e n t ( a c e ) 。 ( 2 ) 高可用性集群( h i g ha v a i l a b i l i t yc l u s t e r ) 高可用性集群通过使用冗余的硬、软件资源保证系统的可靠性和容错性,其目的是 为了使集群的整体服务达到最大限度的可用度。 h a 集群由主辅两套系统组成,辅助服务器通常是主服务器镜像。一般情况下主服务 器运行作业,辅助服务器保持闲置。辅助服务器对主服务器进行活动监控或心跳观察, 以查看它是否仍在运行。如果主服务器发生了故障,则辅助服务器将接管网络和系统身 份( 如i p 主机名和地址) ,用户的应用程序会在几秒之内迁移到辅助服务器继续运行。 用户可能只会察觉到响应稍微慢了一点。对于用户而言, i a 集群永远不会停机。 h a 集群中经常采用共享文件系统、硬件i p 地址抢夺,自动侦测对方系统状态等等 机制来保证系统的高可用性。 最有名的h a 集群项目是l i n u x h a 。其核心组件是h e a r t b e a t ,提供了心跳、监视 和i p 抢夺等机制。它可用串口设备、u d p 广播组播实现心跳检测,可在一个结点死机 时重新给集群各结点分配i p 地址和其它资源,而死机结点恢复时又可将集群恢复到原 来的状态。 ( 3 ) 负载均衡集群( l o a db a l a n c i n gc l u s t e r ) 负载均衡集群的目的是尽可能使系统负载在集群各结点上平均地分摊处理。负载均 衡是一种特殊的高可用性功能,它既提供了高可用性集群的结点监测、恢复功能,还能 将服务请求均衡分布到各结点,这可提高服务的响应和减轻服务器的负载。 一般情况下,负载均衡集群中的每个结点都是运行单独软件的独立系统。结点之间 通过中央负载均衡服务器或直接通信来检查每个结点的当前负载,并确定哪些结点可以 接受新的作业,使用特定的算法在结点之间分发和处理负载。 这样的系统非常适合于运行同一组应用程序的大量用户。每个结点都可以处理一部 分负载,并且可以在结点之间动态分配负载实现平衡。 最有名的负载均衡集群项目是l v s 。它可以将用户请求均衡地分发给各服务器,任 何基于t c p 或u d p 协议的服务都适用。 集群的三种基本类型之间,经常会发生混合与交叉。可以发现高可用性集群也可以 在其结点之间均衡负载,同时仍试图维持高可用性程度。在高性能集群中也经常使用进 第2 章相关背景知识 程迁移算法,使负载较低的结点执行计算任务。 高性能工作站、高档微机的使用是提出并行集群系统的前提条件,高速网络设备的 出现为集群系统的发展打下了坚实的基础,极大的推动了它的使用和推广,快速通信协 议的研究又进一步发挥了高速网络的性能,使得集群系统具有更好的性能和更广的适应 性。 随着集群性能的提高,对集群系统的需求在逐渐增加。l i n u x 集群的出现给大家提 供了一种用低廉的价格构建高性能应用平台的可能,大大推动了集群的广泛应用。成熟 的软件资源和不断发展的硬件资源日益弥补了集群和专用超级并行计算机之间的差距。 2 2l i n u x 的集群系统概述 2 2 1l in u x 的发展及特点 l i n u x 最早是芬兰赫尔辛基大学研究生l i n u sb e n e d i c tt o r v a l d s 在1 9 9 1 年开始 对外发布的一套全新的完全开放源代码的优秀操作系统。最初的发行的内核版本是 , 0 0 2 。1 9 9 1 年1 1 月,l i n u x o 1 0 版本推出,0 1 1 版本随后在1 9 9 1 年1 2 月推出,当时 将它发布在i n t e r n e t 上免费供人们使用。1 9 9 4 年3 月,正式的l i n u x1 0 出现了,截 至那时为止它的用户基数已经发展得很大,而且l i n u x 的核心开发队伍也建立起来了。 自从发布了第一个正式版本l i n u x1 o 以来,每隔一段时间就有新的版本或其修订版本 公布。发展到现在,l i n u x 内核的稳定版的最后版本有:1 0 9 、 1 2 1 3 、2 0 3 7 和 2 2 1 1 ,直至今天最新的2 6 x 。虽然它在外表和特性上同常见的u n i x 非常相像,但系 统核心代码与u n i x 的内核完全不同,它支持p o s i x 标准,具有b s d 和s y s v 的扩展特性, 支持多种硬件环境具有良好的可移植性,是一个安全可靠、高效稳定、开放免费,且具 有强大网络支持功能的操作系统。 2 2 2 l in u x 集群服务器优越性 1 ) l i n u x 操作系统具有很高的安全性、稳定性。 安全性现在应用最广泛的w i n d o w s 系列在安全性方面漏洞很多,互联网上受到 河北大学一l :学硕士学位论文 攻击的主机大部分是w i n d o w s 系统。由于w i n d o w s 不提供源码,像一个黑盒子,对它 的安全性难以进行估量和增强。l i n u x 系统是一个开放的系统,企业和个人通过修改 l i n u x 源代码使其更加安全。出于安全的考虑,国家重要政府部门的计算机将不允许使 用微软新操作系统w i n d o w s 2 0 0 0 ,而改用l i n u x 。政府上网也将推广l i a u x 平台。 稳定性l i n u x 的内核比w i n d o w s 系统的稳定,而且l i n u x 的用户态与核心态的隔 离比w i n d o w sn t 的好,因此在运行大型的应用程序或安装大量的应用程序时l i n u x 的 稳定性要比w i n d o w s 好。l i n u x 作为一种类u n i x 的操作系统,现在基本上已经达到或 超过了某些u n i x 版本的稳定性和性能,它也可广泛应用于高端系统。 2 ) 用l i n u x 只需要很低的成本。使用l i n u x 可以减少软件投资:l i n u x 系统与现有 的任何一种商业系统之间没有版权和授权关系。它是在g n u 和g p l 条款下发行,属于 源代码开放的自由软件,并且还有大量基于l i n u x 的自由应用软件。这决定了基于l i n u x 进行网络基础平台建设在软件上基本不用花钱或相对投资非常低。其次降低硬件投资: 在实现同样功能和效率的情况下,相对w i n d o w s 和u n i x 来讲,l i n u x 对硬件资源的要 求低很多,这样可大大降低网络建设的硬件投资,还可充分利用现有资源,从而避免了 资源的浪费。 3 ) l i n u x 作为集群的操作系统优点在于:由于集群系统和操作系统连接的非常紧密, 开放源代码的操作系统更加有利于集群系统的设计,更能够满足设计应用的需要。 2 3 移动代理技术 代理( a g e n t ) 一词最早出现在人工智能领域,指在一定环境中能够持续运行,具有 自主性的计算实体。目前,a g e n t 技术应用在很多领域,对它的研究早已经成为信息科 学领域的研究热点。随着应用领域的不同,a g e n t 也被赋予了不同的含义。在分布式系 统中,a g e n t 被认为是“解决在异构环境中软件界面、数据结构及协议不兼容的途径”。 但无论怎么描述a g e n t 的定义,自主性、协同性、响应性、学习性和能动性依然是a g e n t 固有的特性。为此,a g e n t 又被称为智能代理,其行为是它自主决定的结果。通常谈到 的a g e n t 都是静态的,它们自始至终都在同一个系统上执行,如果需要其他系统上的信 息,或者需要和其他系统交互会采用类似于r p c 的通信机制。在网络环境中,当a g e n t 的任务目标在本地难以实现的时候,人们很容易就想到能否让a g e n t 移动到其他节点上 第2 章相关背景知识 继续执行? 于是,移动代理的概念出现了,而这里的移动与移动代码的移动却有着本质 的区别。 j a n v i t e k ( u n i v e r s i 够o f g e n e v a ) 对移动代理做了如下描述: 移动代理是代表用户执行计算豹一组对象集; 这种计算是在能够控制代理执行的执行环境平台中进行的; 代理可以中断正在进行的计算,将请求移动到另一个主机上,并在新平台上恢 复被中断的计算; 它是一段程序,经过个人或组织的授权,可在无人干涉的情况下长时间运行( 比 如说,一周的时间) ,并可以同其遇到的其它代理交互: 移动代理在其生命周期中的不同时间运行在不同计算机系统上。 根据上面的描述,我们将移动代理( m o b i l e a g e n t ) 定义为:移动代理是一段独立的 计算机程序,它按照一定的规程,能够自主的在异构网络上移动,寻找合适的计算资源、 信息资源或软件资源,利用这些资源同处一台主机或一个局部网络的优势,处理或使用 这些资源,代表用户完成特定的任务。从这个定义可以看出,移动代理同移动代码有着 很大的不同: 1 ) 普通移动代码,如j a v a 的a p p l e t 是基于“拖”( p u l l ) 方式被下载到本地系统的, 而移动代理则是基于“推”( p u s h ) 方式到达网络节点以寻找需要的资源。 2 ) 普通移动代码移动的时机和移动的目标节点是系统决定的,而移动代理的移动 是自主行为,是代理自己选择时机和位置的。 3 ) 普通移动代码移动的是代码和数据,而移动代理封装的不仅仅是代码和数据, 还封装了它在当前节点上的运行状态进行了封装一起移动到下一个节点。 4 ) 普通移动代码被下载到本地系统后,其执行是从头开始的;而移动代理通过恢 复其运行状态,在新节点上从被中止的地方继续执行。 5 ) 移动代码通常是点到点的一次移动,而移动代理是根据移动规程做连续移动。 移动代理不仅具备a g e n t 的自治性、智能性等特点,而且具有移动特性。从根本上 说,m o b i l ea g e n t 是a g e n t 技术与分布计算技术的结合。它的提出为分布式计算增添了 智能性、动态性等新内容,极大地延伸了分布式计算的概念,并且使a g e n t 具有了大规 模问题求解的能力。移动代理技术在分布式应用中体现了多方面的优势: 河北大学。i :学硕士学位论文 1 )“对象传递”服务方式:除了能够以传统的过程和对象引用方式提供服务, m o b i l ea g e n t 能够移动到服务请求者,通过本地交互提供服务。对象传递可能 带来以下好处:降低网络拥挤和出错率:提高服务的安全性。 2 ) 支持异步操作:移动a g e n t 不需要统一的调度,也无需系统保持同网络长时间 稳定连接,移动装置将a g e n t 发送到网络之后,用户就可以断开同网络的连接, 在需要获得结果的时候再连接到网络上。另外,由用户创建的a g e n t 可以异步 地在不同结点上运行,待任务完成后再将结果传送给用户。如可以将a g e n t 发 送到股票交易系统等待某种股票达到某一价格,然后代表用户自主决定是否买 下,这个过程无需用户参与。 3 ) 减少网络开销:大量数据在网络上传输,其代价往往很高。比如处理气象数据 时,若将大量数据传输到计算节点上进行计算,那么由此产生的网络流量将是 巨大的。但是,如果利用移动代理把计算移动到存放数据的节点上,进行本地 处理,最后只需将结果返回,这将大大节省网络带宽。 4 )可以建立灵活的分布并行计算结构:移动代理提供了独特的分布计算体系结构, 为了完成某项任务,可以创建多个智能体,将它们同时放在相同或者不同的节 点上运行,能实现较好的并行性。 5 ) 智能化处理:移动代理具有根据任务目标,网络通信能力等因素动态规划下一 步操作的能力,因此能很好的优化网络资源,实现负载平衡,避免盲目的资源。 移动代理技术的这些特征使它在越来越多的领域发挥作用,如网络管理、自动远程 程序安装、分布式信息检索口。矗“、电子商务 、测试以及错误诊断、主动网络和移动 通信等。 2 4s h a 。1 算法原理 m d 5 算法嘲是使用最普遍的一种安全散列算法。m d 5 算法输出一个1 2 8 位的消息摘要, 而s h a 一1 算法。”可以一个任意长数据块作为输入,输出个1 6 0 位的消息摘要。输入被 划分成5 1 2 位的数据块,处理过程遵循安全散列算法的一般结构。s h a l 的算法形式化 描述如下: 第2 苹相关背景知识 设置c v o = i v ; 对q = 1 , 2 ,- l 计算c 圪= c v q 一1 + 4 + b + c + d + e q ; c 圪是最终的报文摘要m d 。 其中,y 是缓存一,b ,c ,d ,e 的初值;4 ,b ,c ,d ,e 。是报文的第g 个报文分组e 处理 后,最后一个循环输出的缓存器一,b ,c ,d ,e 的值;三为报文的分组数;c 为处理第g 个报文分段的链接变量;基中的加法是对5 个缓存寄存器爿,曰,c ,d ,e 进行3 2 位加法。 s h a 一1 的典型应用是对一段信息( m e s s a g e ) 产生信息摘要( m e s s a g e d i g e s t ) ,以 防止被篡改,即数字签名。另外该算法还广泛应用于加密解密技术中。 2 5 小结 本章介绍了与集群存储系统课题相关的一些背景知识,首先在第一节概念性的介绍 了集群系统。由于本课题的实现主要是基于l i n u x 操作系统,因此在第二节概括地介绍 了l i n u x 操作系统及由其组成的集群服务器的优势。在系统设计实施时,用到了移动代 理技术,因此在第三节介绍了有关移动代理的一些知识。在第四节介绍课题中用到的 s h a 一1 算法的基本原理。 河北大学工学硕七学位论文 第3 章p c 集群存储系统简介 在引入集群系统概念的基础上,对现有的文件系统以及基于集群的存储系统进行了 客观的分析,并且陈述了其固有的弊端。针对这些弊端,我们介绍了一种用高速网络将 普通p c 机相连成一个可扩展集群存储系统方案,相对于价格昂贵的大型磁盘阵列,有 极高的性能价格比。 3 1 集群存储系统的系统结构 集群存储系统将局域网内单个p c 上的存储资源整合成具有统一逻辑视图的高性能 存储系统。 图l 集群存储系统体系结构 f i g1t h es t r u c t u r eo fc l u s t e rs t o r a g es y s t e m 如图1 所示,整个系统分为三大组成部分:元数据服务器,数据服务器池,客户端。 各部分之间通过高速网络互联,如1 0 0 0 m se t h e r n e t 。元数据服务器,由两台高性能 p c 或服务器采用主从容错工作方式,数据服务器由普通商用p c 挂载大容量磁盘构成, 第3 苹p c 集群存储系统简介 通过高速以太网互联形成一个对用户透明的存储服务器池。其中,元数据服务器主要存 放文件的元数据信息,包括文件或目录的访问权限,创建修改时间,目录项,存放策略, 分片文件的h a n d l e 列表等。本系统中所有的存储对象都由一个唯一的h a n d l e 值来标识。 数据服务器之间构成一个逻辑环,实现数据分片的存储和备份。由于系统基于p v f s 2 文件系统,因此客户端有3 种不同形式的数据访问接口,支持应用程序的直接访问,调 用系统的库函数访问和m p i 程序调用。 3 2 集群存储系统的功能模块 如图2 所示,集群存储系统中的核心功能模块分为如下几部分,元数据服务器端服务进

温馨提示

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

评论

0/150

提交评论