(计算机应用技术专业论文)逻辑卷管理技术研究.pdf_第1页
(计算机应用技术专业论文)逻辑卷管理技术研究.pdf_第2页
(计算机应用技术专业论文)逻辑卷管理技术研究.pdf_第3页
(计算机应用技术专业论文)逻辑卷管理技术研究.pdf_第4页
(计算机应用技术专业论文)逻辑卷管理技术研究.pdf_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

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

文档简介

摘要 摘要 随着信息量的爆炸式增长,信息存储技术显得越来越重要。个人计算机磁 盘容量也越来越大,目前几百g b 已经比较常见,企业的存储容量更是以较快的 速度增长。很多企业要求他们的数据不仅要全面而且还比较可靠,同时应该提 供连续的服务能力,因为系统的停机意味着巨大的经济损失。 数据备份、决策支持等很多操作都需要获取存储系统的瞬时状态,简单的 方法是停止用户对存储系统的访问,获取当前时刻数据的完整拷贝。获取数据 副本往往需要较长时间,这显然是与高可用性的需求是背道而驰的,而且随着 存储系统规模越来越大,考虑到磁盘技术的发展趋势,这一矛盾还会更加严重。 理想的方式当然是不中断业务处理或有很短的暂停,以在线的方式完成存储系 统状态的保存。快照( s n a p s h o t ) 技术能够较好得满足这些需要。当前工业界主 流存储产品几乎都声称具有快照功能。 逻辑卷管理技术l v m 是被广泛使用的存储技术,l v m 能够动态增加和减 少卷容量,支持条纹化等多种优点,得到了广泛的应用,已成为u n i x 系统存储 管理事实上的标准,主要的l i n u x 发布版本都嵌入了l v m 模块。逻辑卷管理器 ( l 、,m ) 也支持快照功能,然而随着存储系统容量越来越大,l v m 现有的快照 实现方案也体现出一些不足,最明显的就是内存占用过多。 本文设计并实现了基于l i n u x 2 4 下l v m l 的增强型逻辑卷管理器e l v m 。 e l v m 采用了快照元数据缓存机制,并具有依赖快照和快照自动扩容功能。 l v m l 的快照采用的是虚拟视图方式,把所有快照元数据均驻留内存,难以满足 大容量快照和大量快照并存的需求。本文提出了新的快照元数据的磁盘组织方 案和内存组织方案,利用c a c h e 技术,在内存仅缓存少量元数据信息,通过c a c h e 写回和c a c h e 替换保证元数据的一致性和正确访问,极大地降低了快照卷的内存 占用。实验表明,通过一些优化手段,元数据缓存方式对源卷、快照卷读写性 能影响不大,而对于大容量快照和大量快照并存具有较好地支持。新增的依赖 快照和快照自动扩容功能使得快照性能更强,更实用化。 关键字:l v ms n a p s h o tc h u n k 源卷 a b s t r a c t a b s t r a c t a l o n gw i t ht h er a p i dg r o w t ho fi n f o r m a t i o nc o n t e n t s ,t h ei n f o r m a t i o ns t o r a g e t e c h n o l o g yb e c o m e sm o t ea n dm o r ei m p o r t a n t t h ep cf l o p p yd i s kc a p a c i t yi sq u i t e b i ga n de n t e r p r i s e ss t o r a g ec a p a c i t ya l s og r o w si m m e n s e l y n o to n l ym a n y e n t e r p r i s e sr e q u e s tt h e i rd a t at ob ei n t e g r i t ya n da v a i l a b i l i t y , b u ta l s os h o u l dp r o v i d e t h ec o n t i n u a ls e r v i c e a b i l i t y , b e c a u s et h e s y s t e mo u t a g em e a r l sh u g ee c o n o m i cl o s s m a n yo p e r a t i o n si nt h ed a t ab a c k u p ,p o l i c y - m a k i n gs u p p o r ts y s t e m sn e e d st o g m nt h es t o r a g es y s t e mt r a n s i e n ts t a t e t h es i m p l em e t h o di ss t o p p i n gt h eu s e r sv i s i t t o s t o r a g es y s t e m ,g a i n i n gc u r r e n tt i m ed a t ac o m p l e t ec o p y t h ec o p yo fd a t a t r a n s c r i p t i o no f t e nn e e d sl o n gt i m ew h i c hc o n f l i c t sw i t ht h eh i g hu s a b i l i t y w i t ht h e s t o r a g es c a l e sg r o w t h ,t h i sc o n t r a d i c t i o na l s oc a nb em o r es e r i o u s t h ei d e a lw a y c e r t a i n l yi sg a i n i n gt h es t o r a g es y s t e ms t a t e sp r e s e r v a t i o nb yt h eo n l i n ew a y , n o t i n t e r r u p t i n gt h eh a n d l i n go ft r a f f i c ,o rh a v i n gt h ev e r ys h o r ts u s p e n s i o n t h es n a p s h o t m e c h a n i s mc a nb ea b l ei d e a lt om e e tt h e s en e e d s t h ec u r r e n tm a i n s t r e a mi n d u s t r i a l s t o r a g ep r o d u c t sn e a r l ya l lh a v et h es n a p s h o tf u n c t i o n l o g i c a lv o l u m em a n a g e m e n t ( l v m ) i st h es t o r a g et e c h n o l o g yw h i c hi sw i d e l y u s e d l v m ,w i t ht h ed y n a m i ci n c r e a s i n ga n dr e d u c i n gv o l u m ec a p a c i t ya n d s u p p o r t i n gt h es t r i p e ,o b t a i n st h ew i d e s p r e a da p p l i c a t i o n i th a sb e c o m eu n i xs y s t e m s t o r a g em a n a g e m e n ti nf a c ts t a n d a r d t h em a i nl i n u xd i s t r i b u t i o nh a sa l li n s e r t e dt h e l v mm o d u l e l v ma l s os u p p o r t st h e s n a p s h o tf u n c t i o n a l o n gw i t ht h es t o r a g e s y s t e mc a p a c i t yi sm o r ea n dm o r eh u g e ;t h el v mo r i g i ns n a p s h o tr e a l i z a t i o n m a n i f e s t ss o m ei n s u f f i c i e n c i e s ,t h em o s to b v i o u so n eo fw h i c hi st h eo v e r u s e d m e m o r y t h i sa r t i c l ed e s i g n e da n di m p l i e db a s e do nl i n u x 2 4l v m le n h a n c e dl o g i c a l v o l u m em a n a g e m e n te l v m e l v m a d o p t st h es n a p s h o tm e t a d a t ab u f f e rm e c h a n i s m , s u p p o r t i n gt h ed e p e n d e n ts n a p s h o ta n dt h es n a p s h o ta u t o m a t i ce x t e n s i o nf u n c t i o n t h el v m1s n a p s h o tm e c h a n i s mi st h ev i r t u a lv i e wm o d e l v m 1p u t sa na l ls n a p s h o t m e t a d a t at ot h em e m o r y , w h i c hc a nn o ts a t i s f yt h el a r g ec a p a c i t ys n a p s h o ta n dt h e a b s t r a c t m a s s i v es n a p s h o tc o e x i s t i n g t h i sa r t i c l ep r o p o s e st h en e ws n a p s h o tm e t a d a t af l o p p y d i s ko r g a n i z a t i o na n dt h em e m o r yo r g a n i z a t i o nw h i c hi su s i n gt h ec a c h em e c h a n i s m t h a tp u t saf e wm e t a d a t ai nt h em e m o r ya n dg e t sa l lt h em e t a d a t a t h r o u g h r e p l a c e m e n to fm e t a d a t ao nt h ed i s k ,r e d u c i n gm e m o r yu s ei m m e n s e l y t h e e x p e r i m e n ti n d i c a t e st h a t ,t h r o u g hs o m eo p t i m i z e dm e t h o d ,t h em e t a d a t ab u f f e rw a y t ot h es o u r c ev o l u m e ,t h es n a p s h o tv o l u m er e a d - w r i t ep e r f o r m a n c ei n f l u e n c ei sn o t o b v i o u s ,b u tr e g a r d i n gt h el a r g ec a p a c i t ys n a p s h o ta n dt h em a s s i v es n a p s h o t c o e x i s t i n gs u p p o r t ,h a st h ee x t r e m e l yo b v i o u ss u p e r i o r i t y 1 1 1 ea d d i t i o n a ld e p e n d e n t s n a p s h o ta n dt h es n a p s h o ta u t o m a t i ce x t e n s i o nf u n c t i o nc a u s e st h es n a p s h o tt ob e m o r ee f f e c t i v e p r a c t i c a l k e y w o r d s :l 1 明s n a p s h o tc h u n ko r i g i nv o l u m e i i i 图目录 图目录 图2 1 镜像分裂快照技术5 图2 2 虚拟视图技术的工作原理7 图2 3 按需拷贝技术的工作原理9 图3 1u n i x 传统的硬盘管理机制。1 1 图3 2l v m 的工作机制1 2 图3 3l v m 结构关系图1 3 图3 4l v m l 的源码架构1 4 图3 5l v m 与文件系统关系图1 5 图3 - 6 源数据卷初始时源数据块1 8 图3 78 :3 0 时源数据卷与快照卷的数据块组织1 8 图3 89 :3 0 时源数据卷与快照卷数据块组织_ 1 9 图3 - 91 0 :3 0 时源数据卷与快照卷数据块组织1 9 图3 1 0l vb l o c k 结构图20exception t 图3 1 1 快照卷上的数据存放方式2 1 图3 1 2c o w 映射表项与h a s h 表之间的关系- 一2 1 图4 1l i n u xl v m l 快照数据组织3 0 图4 2e l v m 快照元数据组织3 0 图4 3 快照卷上各数据结构对应关系3 2 图4 4l vb l o c ke x c e p t i o nt 结构3 3 图4 5l vc o wt a b l ed i s kt 结构一3 3 图4 6 源卷写算法3 6 图4 7 快照读算法3 7 图4 8 逻辑地址与物理地址关系3 8 图4 9 依赖快照工作机制3 9 图4 10 依赖快照删除示意图4 1 图4 1 1p e 数组扩展4 3 图4 1 2v g d a 组成4 4 图5 1 源卷顺序写性能4 7 v i i 图目录 图5 2 源卷顺序写时请求的i o 数4 7 图5 3 源卷随机写性能4 8 图5 4 源卷随机写时的i o 数4 8 图5 5 快照顺序读性能4 9 图5 - 6 快照顺序读的i o 数。4 9 图5 7 快照随机读性能5 0 图5 8 源卷顺序写性能,- :o 一5 1 图5 - 9 源卷随机写性能对比5 2 图5 1o 快照顺序读性能。5 2 图5 1 1 快照随机读性能5 3 图5 1 2 带有不同类型快照的源卷顺序写性能5 3 图5 1 3 带有不同类型快照的源卷随机写性能5 4 图5 1 4 快照写性能5 4 v i i i 表目录 表目录 表l 移植所涉及的问题2 7 表2 添加的数据结构2 8 南开大学学位论文版权使用授权书 本人完全了解南开大学关于收集、保存、使用学位论文的规定, 同意如下各项内容:按照学校要求提交学位论文的印刷本和电子版 本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、 扫描、数字化或其它手段保存论文;学校有权提供目录检索以及提供 本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有 关部门或者机构送交论文的复印件和电子版;在不以赢利为目的的前 提下,学校可以适当复制论文的部分或全部内容用于学术活动。 学位论文作者签名:付审豇希 pg 年f 月硝e t 经指导教师同意,本学位论文属于保密,在年解密后适用 本授权书。 指导教师签名:学位论文作者签名: 解密时间:年月日 各密级的最长保密年限及书写格式规定如下: 南开大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下,进行研究工作 所取得的成果。除文中已经注明引用的内容外,本学位论文的研究成果不包含 任何他人创作的、己公开发表或者没有公开发表的作品的内容。对本论文所涉 及的研究工作做出贡献的其他个人和集体,均已在文中以明确方式标明。本学 位论文原创性声明的法律责任由本人承担。 学位论文作者签名:f 寺蝴 1 t o 。g 年3 - 月6 日 第一章绪论 第一章绪论 第一节逻辑卷管理相关技术 传统的磁盘存储是通过分区来实现,在系统安装之前用户必须正确选择每 个分区的大小,分区大小是固定不变的,同时也就限制了文件系统的大小,分 配给分区的磁盘空间必须是连续的,这个特点限制了分区不能跨越多个物理卷。 为了解决这些问题,人们通过逻辑卷技术来对磁盘进行管理。 逻辑卷管理器l v m t l 】是通过其提供的逻辑卷,冗余备份功能,为用户数据 的存储、恢复和保护提供了一种实用安全的方法。利用l v m 技术,用户可以不 受单个硬盘或单个硬盘分区物理大小的限制,在逻辑卷( 虚拟硬盘) 上,建立 较大的文件系统或文件。逻辑卷管理与一般硬盘的管理方法相比较,有其自己 的特点,归纳起来大致有三点: 1 卷跨越磁盘:逻辑卷能够比任何单一磁盘分区或磁盘容量大。该功能为 用户创建较大文件系统或文件提供了保证。 2 数据镜像:逻辑卷能自动对用户的数据进行镜像,即产生若干拷贝,以 减少因硬件介质或控制器故障造成数据丢失的危险,从而增强逻辑卷上 存储数据的可靠性。 3 动态控制逻辑卷大小:用户可以在逻辑卷使用过程中,动态地向已存在 的逻辑卷增加物理盘或物理区,从而增大逻辑卷的容量,以满足用户的 需要。 逻辑卷在物理硬盘与用户之间建立一座桥梁,用户可以通过l v m 较方便地 创建、使用文件系统。 在各种商业u n i x 系统中,譬如a i x 2 1 ,h p u x 【9 1 ,t r u 6 4u n i x 等系统中, 逻辑卷管理已经被广泛采用,成了事实上的一个标准。2 0 0 1 年1 月,l i n u x2 4 0 内核发布,开始支持逻辑卷管理,使得l i n u x 新内核更适应于服务器的应用。 r h 7 3 在安装时已经把逻辑卷管理作为单独安装模块供用户选择,进一步表明 l v m 应用上的趋势。 l v m 也提供了快照功能,常见的快照技术主要有镜像分裂技术、虚拟视图 技术和按需拷贝技术。逻辑卷管理采用的就是虚拟视图技术,这种技术具有较 第一章绪论 多优点,利用了写时拷贝技术提高效率。快照的使用,较好地满足了用户对数 据的可靠性要求,具有较大的实用意义。 现有的l i n u xl v m 模块存在着一些不足之处,主要是在快照的实现上。分 析l v m l 的源代码后,我们发现: 1 快照的元数据全部存放在内存中,这是为了快速查找,减少i o 操作, 但是当磁盘容量较大时,占据内存容量是不可接受的 2 没有考虑到快照的自动扩容功能 3 在快照较多时,源卷写性能效率很低。 我们根据以上不足,在原有的基础上,设计了增强型逻辑卷管理系统,并 进行了实现。该系统与现有的l v m 实现相比,具有内存占用少,支持自动扩容, 支持快照写,具备依赖快照功能等多种新特征。 第二节本论文的工作与结构 本文主要完成了以下工作: 充分地分析了l v m l ( l i n u x 2 4 中的i = v m ) 的技术架构及其部分源码,论 证了其原有技术的缺陷,并提出了一种新的元数据组织方案,该方案较好地解 决了内存占用问题。 在l v m l 的基础上设计并实现了增强型逻辑卷管理系统,该系统具备内存 占用少,支持依赖快照等特点,并实现了快照自动扩容和快照写功能,还对系 统进行了优化。 各章节组织如下: 第2 章介绍现在的主流快照技术的实现思想和特点。 第3 章介绍l i n u xl v m l 的系统架构以及主要部分的源代码分析。通过详细 的分析,解析了l v m l 的主要思想和实现技术,尤其是快照部分的实现原理和 读写流程,指出了目前情况下存在的问题。 第4 章介绍增强型卷管理器的设计思想与具体实现。详细给出了设计目标 和实现的关键技术,讨论了元数据组织方案、替换算法以及依赖快照和自动扩 容的实现 第5 章介绍增强型逻辑卷管理器的性能及结果分析。 第6 章是对本文的总结,指出了其中的结果以及将来可以进行研究的方向。 第一章绪论 最后列出了本文所参考的文献,以便于对该问题相关知识的进一步查阅。 3 第二章快照技术研究 第二章快照技术研究 快照技术的实现方式有多种,可分为基于硬件的实现和基于软件的实现 3 】。 基于软件的实现也分为多种层次,大体上可以概括为文件系统级的,块设备级 的和底层存储设备级的。 许多存储阵列销售商可以在硬件层提供快照或第三镜像分离的能力,使用 这种方法,可以在两个阵列或一个阵列中创建快照。镜像的分离和连接等逻辑 功能在阵列内部完成,而不是在主机系统中。我们称这种快照方式为硬件快照。 硬件快照一个显著的优点是执行快照功能的所有逻辑功能都在存储阵列内 部执行,不会增加主机系统的负担。但采用这种方法,用户会被限制在特定的 硬件中而不能随心所欲地选择最适合的存储阵列产品。当数据增长,用户需要 更多的存储空间时,为了集成数据快照的能力,用户往往必须选择与原有设备 相同的产品。在采用硬件快照时,用户往往为了这一功能而购买更高档次的磁 盘阵列,这不仅增加了成本,而且增加了操作环境的复杂性,需要专业存储管 理人员。 软件快照是在主机系统中创建逻辑快照,用户可以随心所欲的选择存储阵 列而不必关心存储阵列本身是否具有快照能力。通过软件的方式,可以为任何 存储阵列增加快照能力。与硬件快照方式相比,采用软件快照可以获得如下好 处: 1 使用任何存储硬件创建快照,既可以是昂贵的磁盘阵列,也可以是廉价 的j b o d ,而且复制卷可以跨越物理设备。 2 源卷和快照卷能使用不同的厂家的存储磁盘阵列。 3 支持广泛的服务器平台,包括许多主流的u n i x 和w i n d o w s 服务器。 当前常用的快照技术有三种方式,它们是镜像分裂技术( s p l i t m i r r o r ) 、虚拟 视图技术( v i r t u a lv i e w ) 、按需拷贝技术( c o p yo nd e m a n d ) 。镜像快照分裂技术是 基于硬件的技术,虚拟视图快照技术和按需拷贝技术是基于软件的技术,所以 后两种方式处理相对更为灵活。在本章中,将分别介绍一下这三种技术的实现 思想。而在虚拟视图快照技术和按需拷贝技术的实际实现中,可以基于设备或 者基于文件系统。 4 第二章快照技术研究 第一节基于硬件的实现 基于硬件的快照可使用分离镜像技术或克隆技术来提供原始卷的完整副本 或精确副本。使用镜像分裂技术可以更容易地对高事务速率生产数据进行备份。 2 1 1 镜像分裂技术 现在的市面上有不少产品采用这种技术实现,这其中有代表性就是e m c s t i m e f i n d e r 4 和h i 删ss h a d o w l m a g e 【5 1 。 2 1 1 1 实现思想 镜像快照分裂技术需要预先为源数据卷创建并维护一个或多个完整的物理 镜像卷,在快照时刻点到来之前,与r a i d l 6 】方式类似,这些卷之间处于完全 同步的状态,同一数据的多个副本分别保存在源数据卷以及它的多个镜像卷上。 当快照时刻点到来时,用做快照的镜像卷与源数据卷分离,此时镜像转化为快 照卷。当快照卷完成数据备份、数据挖掘等应用之后,将重新与源数据卷同步, 此时快照卷转化为镜像卷。需要做多个快照卷的情况下,只有存在相对应数目 的镜像卷,在快照时刻点将镜像卷与源数据卷分离即可。镜像分裂快照技术实 现如图2 1 所示: 凇瑶l凇醒i凇骚l瓣 啪明明日国 幻建立铙睾卷列步 b ) 弼步进行中c ) 嗣步究成d ) 分离镜像露 图2 - 1 镜像分裂快照技术 图中m i 和m 2 互为工作卷镜像,用于容错。m 2 用于镜像卷之前,需与源 数据卷m 1 经过一段时间的同步,在正常工作时,m 1 与m 2 的数据完全相同, 当需要使用快照卷时,将m 2 与m 1 分离开来,m 2 即为此时刻的快照卷。 5 第二犟快照技术研究 2 1 1 2 特点 镜像分裂技术采用硬件的方式实现,因而具备了其特殊的优点和缺点。它 的优点有:快照操作时间非常短,仅仅是断开镜像卷所需要的时间,通常只有 几毫秒,这么短的时间几乎不会对上层应用产生影响;在快照的命令发出之后, 能够立即得到一个完整的物理副本,不需要一些额外的复制操作,因而非常适 用于一些时间要求很高的完整物理副本应用。但是它同样也存在一些缺点,首 先,这种快照技术缺乏灵活性,无法在任意的时刻点建立快照,这主要在源数 据卷没有创建镜像卷和镜像卷正处于重新同步的情况下发生;其次这种技术缺 乏可扩展性,在建立快照卷之前需要预分配镜像卷,那在需要建立多个快照的 情况下,则要分配多个镜像卷,从而预先占用大量的存储资源,而且在多个镜 像卷的情况下,快照之前的镜像操作也将占用大量的系统资源,系统负荷大大 增加,因此这种技术不太适用于较多快照的应用。 第二节基于软件的实现 常见的软件实现方式有:虚拟视图技术,按需拷贝技术。 2 2 1 虚拟视图技术 2 2 1 1 实现思想 虚拟视图技术的思想是基于绪论中提到的一个统计试验结果,在连续运行 两个月的情况下,数据卷被更新的数据一般不会超过其总容量的2 0 - 3 0 。因 而在虚拟视图技术中,快照时刻点到来之后,建立一份快照时刻源数据卷的物 理副本,并分配少量的存储空间,一般为源卷的2 0 3 0 ,如果数据更新超过 这个比例,快照将失效。每个源数据卷都具有一个数据指针表,该指针表的记 录数量等于源数据卷的数据块数量,每条记录保存着指向对应数据块的指针。 在建立快照时,源数据卷的指针表建立一个副本作为快照卷的数据指针表。在 快照建立结束时,快照建立了一个可供上层应用程序访问的逻辑副本,快照卷 与源数据卷通过各自的指针表共享同一份物理数据。快照建立完成之后,当源 数据卷中的某数据需要更新时,采用写前拷贝技术来保证快照操作的语义,即 将原始数据拷贝到快照卷中某个数据块,并修改快照卷数据指针表的对应记录, 6 第二章快照技术研究 使其指向该数据块,然后再更新源数据卷中的数据块。对快照卷中数据的访问, 则必须查询快照卷的数据指针表,根据对应的数据块指针确定所访问的数据物 理存储位置。虚拟视图技术的工作原理如图2 2 所示。 源黼麟源黼快照卷 图2 2 虚拟视图技术的工作原理 2 2 1 2 特点 虚拟视图技术基于软件方式的实现以及采用了写前拷贝技术,从而具备很 多优点:首先快照的建立方式十分灵活,可以在任意时刻建立快照;不需要预 分配存储空间,只是在建立快照的时刻,分配少量的存储空间;快照建立的时 间较短,通常只有几秒;数据的拷贝只有在源数据卷发生更新的时候才发生, 系统的开销较小。但是虚拟视图技术也存在一些缺点:快照卷仅仅保存了源数 据卷被更新的数据,从而无法得到完整的物理副本,因而不适用于一些完整物 理副本的应用。 虚拟视图可以在块设备上实现,也可以在文件系统上实现。l v m 就是采用 的这种技术。其他支持虚拟视图的产品有i b m sr a m a cv i r t u a la r r a y ( r v a ) t 1 0 1 、 s t o r a g e t e k ss h a r e dv i r t u a la r r a y t l l 】等。 2 2 2 按需拷贝技术 按需拷贝技术采用软件方式实现,与虚拟视图技术相同的是,在源数据卷 写入的时候,需利用写前拷贝技术将数据拷贝到快照卷中,但不同的是按需拷 贝技术需要一个后台拷贝进程来拷贝数据,生成的快照是完整的物理副本。 7 第二苹快照技术研究 2 2 2 1 实现思想 与虚拟视图技术相同的是,写前拷贝技术在快照时刻点之后建立快照卷。 快照命令发出之后,首先暂停上层应用,接着建立快照卷,为其分配大于或等 于源数据卷容量的存储空间,然后建立一个控制位图,控制位图的每一个控制 位表示源数据卷的一个复制单位是否已经复制到快照卷,复制单位一般为数据 块( c h u n k ) ,最后初始化所有的控制位,表示所有的数据块均未复制。至此创建 快照的操作已经完成,快照已形成了一个可供上层应用程序访问的逻辑副本, 恢复运行暂停的上层应用。在快照时刻点,存储子系统要为快照卷分配存储空 间,并建立控制位图,因此快照的建立时间与源数据卷的容量成线性比例,一 般为几秒钟。快照建立之后,一个后台复制进程开始将源数据卷的数据块顺序 复制到快照卷,并在控制位图上标记该数据块完成复制。源数据卷上的某数据 发生更新时,采用写前拷贝技术来保证快照操作的语义,则如果该数据尚未完 成复制,该数据将首先被复制到快照卷上,并标记控制位图对应的控制位,然 后再更新源数据卷的数据,否则将直接更新源卷的数据。如果上层应用要访问 快照卷的某数据时,将首先检索控制位图,如果对应的控制位显示该数据还没 有被复制到快照卷上,则从源数据卷访问实际数据,否则直接访问快照卷。按 需复制快照的工作原理如图2 3 所示。 第二章快照技术研究 控制位图 源数据卷 快照卷 源数据卷数据块束发生巫新 源数据卷数据块发生更新 快照卷致据块已经拷贝 快照卷数据块尚未拷叭 凹2 0 按需拷贝技术的t 作原理 2 222 特点 按需拷贝技术具备如下优点:不需要预分配存储空间,只是在建立快照时, 才分配存储空间:快照的建立方式十分灵活,可以在任意时刻建立快照;快照 的建立时问较短,通常只有几秒;生成的快照是完整的物理副本,因而适用于 一些需要完整物理副本的一些应用。但是它也同样存在缺点:生成完整的物理 副本需要就较长的时间,在源数据卷的快照数目较多的情况下,后台复制进程 将占用大量的系统资源这将会严重影响系统的性能。 第三章l v m l 及其快照技术分析 第三章l v m l 及其快照技术分析 第一节l v m l 简介 l v m 机制最初是i b ma i x 特有的硬盘管理机制,它最主要的目的是为了克 服u n i x 作业系统规划硬盘空间给某个文件系统之后,就无法再改变此文件系统 的大小。例如在最初安装系统时,可能认为h o m e 目录只要5 0 0 m b 就可以了, 但是在实用的过程中由于使用者越来越多,原先规划的空间可能就不够使用。 针对这个问题,传统的做法就是将原h o m e 目录中的资料备份出来,重新划分一 个新的分区,格式化成新的文件系统,再将原有的资料还原回去。即使现有的 硬盘还有足够的空闲空间,也无法马上利用这些空间。l v m 通过利用在实际的 硬盘和文件系统之间加入一层逻辑映射机制,达到动态缩放文件系统大小的功 能,进而解决了u n i x 所面临的问题。 3 1 1l v m l 的特点 l v m 是目前l i n u x 内核 刀的一个重要组成部分,它在物理磁盘的基础上产 生一个抽象层,将多个物理磁盘或者分区组成存储池,再从存储池中划分出逻 辑卷,卷提供给上层的功能与物理磁盘提供的功能类似,可以在卷上创建文件 系统、建立数据库和进行原始设备访问( 洲i o ) ,但是卷可以提供比物理磁盘 更高的可用性,并且更易于管理。u n i x 传统的硬盘管理机制如下图3 1 : 1 0 第三章l v m l 及其快照技术分析 li ,。请求l ii 。应答i 上t 用户进程 一 。 上t 文件系统 1r t 物理设备驱动 上t 硬件 图3 - 1u n i x 传统的硬盘管理机制 而l v m l 的工作机制如下图3 - 2 : 第三章l v m l 及其快照技术分析 图3 - 2 l v m 的工作机制 l v m l 有以下优点: 1 提高访问性能,l v m l 支持条纹化等功能,通过并行访问提高性能; 2 可以分配非连续的区域,可以跨越多个磁盘 3 支持快照功能,利用l v m l 的快照功能,可以进行数据的热备份; 4 逻辑卷的大小可以在不停止上层应用程序的情况下进行动态调整,提高 了系统的可用性。 3 1 2l v m 的相关概念 l v m 是一种虚拟设备驱动程序,它在已有设备的基础上虚拟出逻辑设备以 便于管理。l v m 提出了以下一些概念: p v ( p h y s i c a lv o l u m e ) 物理卷,指一个物理磁盘或者分区,它由多个p e 组成。 v g ( v o l u m eg r o u p ) 卷组,由一个p v 或多个p v 组成,相当于p v 构成的存 1 2 第三苹l v m l 及其快照技术分析 储池。 l v ( l o g i c a lv o l u m e ) 逻辑卷,相对于非l v m 系统中的磁盘分区,从v g 中 划出的一定大小的逻辑存储空间,它由多个l e 组成。 p e ( p h y s i c a le x t e n t ) 物理区域,p v 的划分单位,通常l e 和p e 是一一映射 的。 l e ( l o g i c a le x t e n t ) 逻辑区域,l v 的划分单位,l v 中的每一个l e 对应一 个或多个p e ,通常l e 和p e 是一一对应的。 这几个概念之间的关系如图3 3 8 所示: p v l :d e v s d a p v 2 :d e v s d bp v 3 :d e v ,h d a 图3 - 3l v m 结构关系图 pe 圃le 在图3 3 中,p v l 、p v 2 、p v 3 组成一个v g ,从v g 中划分出了4 个l v 。 一个l v 上不同的l e 可以对应不同的p v 上的p e ,例如l v 2 的两个l e 分别映 射到p v l 和p v 2 的一个p e 上。 3 1 3l v m l 的源码架构 l m v l 采用两层体系架构,每一层都有其独立的功能。层之间通过一些预定 义的标准接口来实现调用。l v m l 的源代码一共有2 个部分:用户态、内核态。 第三章l v m l 及其快照技术分析 实际开发使用的版本分别是:用户态版本为1 o 8 ,内核版本为2 4 3 2 。 用户态的主要功能是提供逻辑卷管理功能,如物理卷的建立删除,卷组的 建立删除,逻辑卷的建立删除,逻辑卷、物理卷、卷组的元数据读写等。 内核态的主要功能是在内核态建立与用户态相对应的数据结构,并对文件 系统或者上层应用程序下发的读写请求根据卷类型的不同分别进行处理。它们 之间的主要关系如下图3 - 4 : 图3 4 l v m l 的源码架构 1 4 第三章l v m l 及其快照技术分析 3 1 4 创建p v ,v g ,l v ( 1 ) p v 的创建 用户态在创建物理卷时,要先将磁盘分区设置成l v m 类型,然后通过 p v c r e a t e 命令将磁盘分区格式化为物理卷 ( 2 ) v g 的创建 v g 是个存储池,它由p v 组成,一个或多个p v 组成v g ,v g 的创建是通 过v g c r e a t e 命令完成的。 ( 3 ) l v 的创建 逻辑卷是建立在v g 之上的,作为一个块设备呈现给用户,逻辑卷分为普通 卷和快照卷,创建快照卷要指明其源卷。普通卷创建完成后,就是一个通用的 块设备了,可以在上面创建文件系统,也可以直接当成块设备使用。 下图是磁盘分区、卷组、逻辑卷和文件系统之间的逻辑关系示意图: 图3 - 5l v m 与文件系统关系图 3 1 5l v m l 对逻辑卷上读写请求的处理 由于应用程序或者文件系统把逻辑卷看作一个普通的块设备,因此l v m l 必须处理来自上层的b h ( b u 蹶h e a d ) 请求3 2 1 。由于逻辑卷只是一个逻辑设备,因 此l v m l 并不进行实际的i 0 操作,而是对用户请求进行从逻辑设备到物理设备 第三章l v m l 及其快照技术分析 的映射,然后返回给操作系统,并标记请求未完成。 用户请求从逻辑设备到物理设备的映射过程如下: 1 根据用户请求中的设备号找到对应的逻辑卷 2 根据用户请求中的扇区号,查找到对应的p e 3 根据p e 类型的不同,将b h 请求进行相关的处理,主要是重定位地址和 设备,最后将b h 请求下发到p e 所在的实际的物理设备来完成实际的i o 操作。 3 1 6 相关的数据结构 3 1 6 1s t r u c tp v t 该结构表示一个p v ,用户态和内核态共用一个该结构,结构中完整地表示 了一个p v 的所有信息以及与v g 相关的信息。 3 1 6 2 s t r u c tv g _ t 该结构表示一个v g ,含有v g 的所有信息。 3 1 6 3s t r u c tl v t 该结构表示一个逻辑卷,包含很多与快照相关的域,当是快照时,这些域 才起作用。 第二节l v m l 快照技术分析 3 2 1 快照技术简介 在l v m l 中,逻辑卷可划分为以下几种类型: 1 普通逻辑卷,即与快照无关的逻辑卷; 2 源卷,即需要做快照的逻辑卷; 3 快照卷,为源卷在某一时刻的数据映像,快照卷是只读的。 l v m l 快照技术是虚拟视图技术,在某一时刻点建立快照卷时,源卷与快照 卷共享同一份物理数据。当源卷的数据产生变化时,快照只拷贝那些变化了的 1 6 第三章l v m l 及其快照技术分析 数据。 为了实现快照过程,l v m l 为每个快照卷创建一个c o w 区域( c o p y - o n w r i t e 区域,即写前拷贝区域) ,用于存放源卷自创建快照卷以来被修改的块在修改前 的数据。用户为一个普通逻辑卷创建快照卷后,该逻辑卷就变成一个源卷,l v m l 会在创建快照卷的同时创建c o w 区域。在快照卷创建后,用户可以对快照卷进 行备份,产生的备份为源卷在创建快照卷时的数据映像。l v m l 对源卷上的读写 请求和快照卷上的读写请求的处理方式不同,其核心思想如下: 1 对于源卷上的读请求处理保持不变。由于对于源卷的更新已经反映到其 对应的物理设备上,因此读请求返回的是最新的数据。 2 对于源卷的写请求处理,首先遍历该源卷的所有快照卷,如果请求的数 据所在的c h u n k ( 数据块,默认为6 4 i ) 没有拷贝到快照卷的c o w 区域中,则把该c h u n k 的数据拷贝到c o w 区域中并记录拷贝前后的映 射关系。上述拷贝过程称之为c o w 操作。然后再更新该c h u n k 上的数 据。上述处理保证快照l v 被创建后源l v 上所有数据在第一次修改前 被复制到c o w 区域。为了减少c o w 操作的次数,l v m 把每个p e 划 分成多个c h u n k ,每次c o w 操作的单位是一个c h u n k ,而不是一个扇 区,c h u n k 的大小是扇区大小的整数倍。 3 对于快照卷上的读请求,首先检查该请求所在的c h u n k 有没有拷贝到 c o w 区域,如果该c h u n k 已经拷贝到c o w 区域,则直接读取c o w 区域中的数据,否则需要映射到源卷,从源卷上读取该c h u n k 的数据。 l v m l 快照技术的工作方式如下例所示。设源数据卷在7 :0 0 创建,创建时 有4 个数据块a 、b 、c 、d ,然后在8 :0 0 创建一个快照卷s 1 ,9 :0 0 创建一个快 照卷s 2 ,1 0 :0 0 创建一个快照卷s 3 ,8 :0 0 8 :1 5 时段内数据块a 被改写为a ,9 :0 0 - - 9 :1 5 数据块b 被改写为b ,1 0 :o o 一1 0 :1 5 数据块c 被写为c 。在源数据卷 创建时数据块组织如下图3 - 6 所示: 1 7 第三章l v m l 及其快照技术分析 源数据卷 7 :00 源数据卷数据块 图3 - 6 源数据卷初始时源数据块 8 :3 0 时源数据卷与快照卷的数据块组织如下图3 7 : 源数据卷快照卷s 1 源数据卷数据块快照卷s 1 数据块 图3 78 :3 0 时源数据卷与快照卷的数据块组织 9 :3 0 时源数据卷与快照卷数据块组织方式如下图3

温馨提示

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

评论

0/150

提交评论