




已阅读5页,还剩69页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
监狱监控存储系统的研究与实现毕业论文目录表 目 录 . III 图目录 . IV 摘要. i ABSTRACT . ii 第一章 绪论 . 1 1.1 研究背景和意义. 1 1.2 监狱监控存储系统现状. 2 1.2.1 监狱监控系统构成 . 2 1.2.2 监狱监控存储系统需求 . 3 1.3 本文的研究内容 . 4 1.4 本文的组织结构 . 4 第二章 相关研究. 6 2.1 存储系统 . 6 2.2 分布式文件系统 . 7 2.2.1 分布式文件系统介绍 . 7 2.2.2 典型分布式文件系统分类比较 . 8 2.2.3 文件系统功能对比 . 15 2.3 存储网络技术 . 17 2.3.1 IP 存储网络 . 17 2.3.2 FC 存储网络 . 17 2.3.3 InfiniBand 存储网络 . 18 2.4 本章小结 . 21 第三章 基于 Lustre 的监狱监控存储系统结构设计 . 22 3.1 监狱监控系统需求分析 . 22 3.2 监狱监控存储系统结构 . 22 3.2.1 系统的物理构成 . 23 3.2.2 系统的逻辑构成 . 24 3.3 基于 Lustre 的分布式文件子系统 .26 3.3.1 Lustre 文件系统功能特点 . 26 3.3.2 Lustre 文件系统中的条块化 . 26 3.4 基于 IB 的存储网络子系统 . 27 3.4.1 Lustre 的存储网络堆栈构成 . 27 3.4.2 基于 IB 网络的 Lustre 文件系统 . 29 3.5 本章小结 . 30 第四章 监狱监控系统高可靠性研究与实现 . 31 4.1 MDS 服务器的高可靠性研究 . 31 4.1.1 MDS 服务器构架及脆弱性分析 . 31 4.1.2 DRBD 和 Heartbeat 分析 . 31 4.1.3 高可靠性 MDS 架构方案 . 32 4.2 MDS 高可靠性实验测试分析 . 33 4.2.1 测试环境 . 33 4.2.2 实验结果及分析 . 34 4.3 OST 存储节点可靠性研究 . 35 4.3.1 RAID 概述 . 35 4.3.2 使用 RAID5 构建存储节点 . 36 4.4 本章小结 . 36 第五章 Lustre 文件系统性能优化与测试 . 37 5.1 测试环境 . 37 5.2 服务器端设置对性能的影响及分析 . 38 5.2.1 条块化数目对性能影响分析 . 38 5.2.2 条块化大小对性能影响分析 . 39 5.3 客户端设置对性能的影响分析 . 39 5.3.1 并发进程数的多少对性能的影响及分析 . 40 5.3.2 块大小对文件系统性能的影响及分析 . 40 5.4 本章小结 . 41 第六章 总结和展望 . 42 6.1 本文的工作 . 42 6.2 未来工作展望 . 42 致 谢 . 44 参考文献 . 45 作者在学期间取得的学术成果 .48表 目 录 表 2.1 各分布式文件系统主要性能比较. 15 表 4.1 MDS 可靠性性测试主机配置 . 33 表 5.1 测试软件配置 . 37 表 5.2 测试硬件配置 . 38 表 5.3 条块化数目和大小对 Lustre 文件系统性能的影响 . 38 图 目 录 图 1.1 监狱监控系统示意图 . 3 图 2.1 元数据对象结构 . 7 图 2.2 PVFS 文件系统结构图 . 9 图 2.3 GlusterFS 结构图 . 11 图 2.4 GlusterFS 数据流图 . 11 图 2.5 GFS 文件系统结构图 . 12 图 2.6 Lustre 文件系统结构图 . 14 图 2.7 Lustre 文件系统数据流图 . 15 图 2.8 IB 网络结构图 . 19 图 2.9 IB 网络的分层模型 . 20 图 3.1 系统物理结构图 . 23 图 3.2 数据传输流程图 . 24 图 3.3 系统逻辑图 . 25 图 3.4 文件条块化示意图 . 25 图 3.5 LOV 示意图 . 27 图 3.6 Lustre 文件系统网络堆栈结构图 . 28 图 3.7 Portals 关系图 . 29 图 4.1 当前 MDS 构架 . 31 图 4.2 DRBD 结构图 . 32 图 4.3 高可靠 MDS 构架 . 33 图 4.4 正常情况下 MDS 与 Client 显示 . 34 图 4.5 MDS 停止及恢复工作显示 . 35 图 5.1 测试环境拓扑图 . 37 图 5.2 条块化数目对性能的影响 . 39 图 5.3 条块化大小对性能的影响 . 39 图 5.4 进程数对性能的影响 . 40 图 5.5 块大小对性能的影响 . 41 摘 要 监狱是关押和改造犯罪人员的特殊场所,做好监狱的安保工作,有效防止犯罪分子越狱、暴狱、破坏,是保障社会和谐稳定的重要措施。随着信息化建设的不断发展,监狱的安保也充分利用现代先进的信息化资源,依托数字监控技术实现对监狱的全方位监控,采用远程视频、音频监控可以保证管理人员随时监控系统的现场状态,监狱监控系统日益成为监狱管理的有力工具,对犯罪分子具有极大地震慑作用。 而随着监狱监控系统规模的日益增加和功能的不断扩展,传统模式的监狱监控存储系统已经很难满足大规模监狱监控数据存储的需求。本文从监狱监控存储系统的实际需求出发,分析了其在数据存储、高性能网络传输以及数据可靠性方面的需求,设计了基于 Lustre 文件系统的监狱监控存储系统,该系统可以充分满足系统对数据海量存储、高性能传输和高可靠性方面的需求。 本文首先分析比较了 Lustre 和其他主流的分布式文件系统,提出 Lustre 文件系统用于监狱监控存储系统中的优越性,并给出了基于 Lustre 文件系统的监狱监控存储系统系统结构设计。同时针对网络带宽对系统传输性能的限制,提出利用InfiniBand 网络构建其网络传输子系统的设计方案,充分利用 InfiniBand 网络高带宽、低延迟的特点,大大降低了数据传输的时延,通过与 Lustre 文件系统的无缝融合,保证了监控存储系统对存储系统性能的需求。 本文还就监狱监控系统对数据可靠性的高度需求,提出了利用 DRBD 和Heartbeat 技术构建高可靠的元数据器构架;利用 RAID5 构建系统的存储节点,使系统数据存储的可靠性得到了很大的加强,满足了监控存储系统对高可靠数据存储的需求。 最后,针对监狱监控存储系统数据传输的特点,通过工程实践,分别对 Lustre文件系统服务器端和客户端进行优化配置,搭建了工程实验环境,对系统的性能进行了测试与验证,给出了测试结论,对充分发挥 Lustre 在监狱监控存储系统中的最佳性能具有重要的参考价值。 主题词:存储系统;Lustre 文件系统;IB 网络;性能优化 第一章 绪论1.1 研究背景和意义 监狱是一个特殊的应用场所,是人类社会发展到一定历史阶段的产物,它是随着阶级的出现,国家的产生而产生。在现代社会,监狱是惩治犯罪,维护社会安全稳定,保障人民群众利益的重要手段。其主要功能有: 1、惩罚功能,是指国家使受刑人的身心置于刑罚的条件下,限制其精神和物质生活而产生的心理痛苦。 2、改造功能,是指监狱以转变罪犯的犯罪思想对其进行的刑罚,培养其成为遵纪守法的公民的教育。 3、防卫功能,是指监狱通过对罪犯执行的刑罚而防止其再次犯罪,同时警戒、威慑、教育社会上其他可能犯罪的人,使他们远离犯罪道路。 可以说,监狱是法律的一把屠龙宝刀,是镇压邪恶的最后法宝。监狱一旦出现不稳定状况或发生任何事故,都会给人民群众生命财产安全和社会治安带来消极影响和严重后果。监狱内的服刑人员作为刑事犯罪分子,管理难度很大,如何确保监狱的安全是监狱管理首要面对和考虑的问题;既要防范犯罪分子非法脱逃、暴动或者同伙的劫狱,对社会造成危害,也要保障监狱工作人员的安全以及服刑人员的正常工作生活。而我国正处在社会转型期,意识形态的分歧、贫富差距加大导致各类矛盾凸显,更有西方敌对势力的反动宣传,使得现今社会治安环境不断恶化,更显做好监狱的安保工作的重要性。所以必须坚决遏制和有效预防狱内重特大案件的发生,不断提升监狱处置突发事件能力和全面监管工作水平,形成人防、物防、技防三防并举的立体防范新格局。同时,为进一步提高对基层监狱突发事件的防范和应急指挥能力,在充分利用现代先进的信息化资源的基础上,依托数字监控技术,完成监狱监控系统的建设,实现了对的监狱的远程视频、音频监控,可以保证管理人员随时监控系统的现场状态,监狱监控系统日益成为监狱管理的有力工具,对犯罪分子具有极大地震慑作用。 可以说一个性能优良、反应灵敏、稳定可靠的监狱监控系统可以极大地提高监狱的安全可靠性,它对于监督犯人的改造、防范监狱内突发事件的发生和保障监狱工作人员的人身安全都起到了十分重要的作用。它可以帮助监狱管理人员随时随地进行整个狱区人员、设施以及环境进行网络化监控,及时反映重要部位的实时状况,有效遏制和预防狱内重特大案件的发生,不断提升监狱处置突发事件能力和全面监管水平。 1.2 监狱监控存储系统现状 1.2.1 监狱监控系统构成 1、囚室监控,对于在押的囚犯,利用监狱监控报警系统,通过安装的摄像头,就可以对囚室内情况进行全实时的视、音频录像,通过远程控制中心还能实现在无人操作时的实时录像,实现对其活动的实时和完全的监控,以防意外事件发生,保障其本人以及监狱中其他人的安全; 2、监狱周边、门口 监狱的周边及门口是监狱与外界联接的部分,往往是在押人员越狱逃跑或者犯罪分子劫狱、向监狱内在押犯传递消息的地方,通过监控、报警系统,有效配合监狱看管人员联防联动,防止在押人员越狱、传递消息和犯罪分子劫狱行为的发生并保障工作人员本身的安全。3、公共场合,由于在押犯人情况混杂,容易受到挑拨,在在押犯集中的公告场合往往是各种异常情况频发的地方,为保证各种公共场合内人员、设施的安全,可以通过监控系统,有效地对这些场合进行实时监控及录像,通过报警系统,可以在出现非正常现象时,及时向监狱保卫部门发出报警信号,以便及时处理各种突发情况。 4、看管人员工作生活区,为保证监狱内部的安全与稳定,负责在押人员管理的狱警及负责监狱安全的武警官兵担负着重大的任务,他们的安全,是保证监狱整体安全稳定的重中之重,通过监控报警系统,在看管人员工作区设立控制室,可以在看管人员较少的情况下,有效地对全监狱内情况进行全面掌握,以便及时做出反应,确保看管人员的人身安全不受侵害,为监狱的整体安全与稳定打好基础。其整体结构模型如图 1.1 所示:图 1.1 监狱监控系统示意图 监狱监控系统包括很多子系统,如闭路电视系统、报警系统、出入口控制系统、监听系统、广播系统、对讲系统等。正常规模的监狱拥有超过 100 个摄像头,一个摄像头每天录下的影像在 10G 左右,高清的的摄像头更多,而一般监狱的录像都需要保存半年以上,再加上录音、对讲、广播等系统,所以监狱监控中心存储量是相当大的。 1.2.2 监狱监控存储系统需求 随着计算机网络的飞速发展,监狱监控系统的需求主要体现在三个方面: (一)存储容量需求。随着监狱监控系统功能和规模的不断更新和扩展,信息量也呈现几何级数增长的趋势,并且增长势头迅猛。使其对信息获取的需求日益增长,也直接导致了对存储的容量需求。 (二)存储性能需求。监狱监控系统中,通过数据采集设备存储的数据量是非常大的,同时又有相当多的用户对这些数据进行访问,所以整个系统需要在单位时间内存储、读取、处理和输出大量的数据,对系统的性能提出了极高的要求。 (三)系统可靠性需求。由于监狱本身的特殊性,监狱监控系统整体可靠性要求非常高,系统任何的不稳定或者数据的丢失等因素都将造成严重的后果。因此,系统的可靠性是整个系统的重中之重。 而整个监狱监控系统存储的数据量是非常巨大的,如何保证存储数据的安全、数据传输的性能以及拥有良好的可扩展性,是整个监狱监控系统的重要环节。Lustre 文件系统是基于对象存储的分布式文件系统,该文件系统的传输性能和可扩展性都不错,不仅如此,Lustre 文件系统还拥有基于对象的智能化存储、安全的认证机制、比较完善的容错机制等优点,可以为整个系统提供良好的安全和可扩展性,并能保证系统的传输性能。 1.3 本文的研究内容 作为工程硕士论文,在分析了监狱监控存储系统的需求后,设计了一个基于Lustre 文件系统的监狱监控存储系统。本文主要进行了以下几个方面的研究。 1、对比其他分布式文件系统,分析 Lustre 文件系统用于监狱监控存储系统的优越性,并提出用 IB 网络构建 Lustre 文件系统,解决网络性能对监狱监控存储系统的瓶颈问题,通过 IB 和 Lustre 的无缝融合,满足了监狱监控系统对存储系统的性能要求。 2、设计了一个基于 Lustre 文件系统的监狱监控存储系统的模型,提高了系统整体的性能。 3、针对监狱监控存储系统对可靠性的高度需求,设计实现了 Lustre 文件系统MDS 的高可靠性构架,同时使用 RAID5 构建系统的存储节点,以提高系统的可靠性。 4、针对监狱监控存储系统数据传输的特点,搭建环境优化 Lustre 文件系统的参数配置,发挥 Lustre 的最佳性能。 1.4 本文的组织结构 本文共分为六章,各章节组织内容如下: 第一章 绪论。主要阐述了课题的背景意义、研究现状及本课题主要解决的问题。最后给出了论文的组织结构。 第二章 相关研究。主要介绍了与本文相关技术的发展现状。主要介绍了分布式文件系统和存储网络,并列举了一些典型的分布式文件系统,对其主要性能进行对比,突出 Lustre 文件系统使用在监狱监控存储系统中的优越性。 第三章 基于 Lustre 的监狱监控存储系统结构设计。针对监狱监控存储系统的需求,基于 Lustre 文件系统设计了系统模型。同时针对网络带宽对系统传输性能的限制,提出利用 InfiniBand 网络构建其网络传输的子系统,克服了网络带宽的瓶颈问题。 第四章 监狱监控系统高可靠性研究与实现。针对监狱监控存储系统对可靠性的高度需求,提出利用 DRBD 和 Heartbeat 技术构建高可靠的元数据服务器构架,以及 RAID5 构建系统的存储节点。 第五章 Lustre 文件系统性能优化测试。针对监狱监控存储系统数据传输的特点,从数据条带化、读写块大小,并行进程数等方面进行测试分析,优化 Lustre文件系统的配置参数,发挥其最佳性能。 第六章 总结和展望。总结全文,并对下步工作提出具体方向。 第二章 相关研究 2.1 存储系统 随着计算机技术的不断发展,存储系统的研究成为了现今研究的主流。近十多年来,人们对存储的新技术新方法进行了孜孜不倦的探索和研究,使得存储系统的体系结构和实现技术有了很大的革新,从最初的本地磁盘和冗余磁盘阵列RAID(Redundant Array of Independent Disks)1等本地存储和服务器内置存储设备的体系结构,发展到后来的网络附加存储 NAS(Network Attached Storage)、区域网络存储 SAN(Storage Area Network)、基于 TCP/IP 的 IP SAN 以及面向对象的存储结构2-7。数据量的高速增长必然导致数据中心的大量建设以及数据密集型应用的高速发展,PB 级以上规模的存储系统是现在饿得发展趋势,但这些大规模存储系统随着应用进一步的深入和数据量的进一步增加都面临存储 I/O 性能、可扩展性、安全以及可靠性管理等多方面的巨大挑战8-10。 随着计算机技术的进一步发展,研究的核心正从计算逐步向数据存储技术倾斜,存储系统不再仅仅是计算机系统的外部辅助设备,而发展成为与计算和网络并列的信息系统主要核心基础设施,具有庞大市场10。人们对信息中心的称谓从之前的“计算中心”、“网络中心”到现在的“数据中心”,很形象地表明了处理、传输和存储这三个要素的比重变化的趋势。信息技术正在从以计算为中心的计算时代进入到以存储为中心的存储时代,而网络环境下的海量数据存储将成为未来全球存储市场的热点。有人评论说:网络存储已经成为继“计算机浪潮”和“互联网浪潮”之后的第三次浪潮10。 基于对象存储系统 OBSS (object-based storage system)概念的提出弥补了传统存储体系结构的不足,提供直接的、存储设备的文件存取,使可升级、高性能、跨平台与数据安全共享的体系结构成为可能。 面向对象技术的发展催生了基于对象的存储体系结构,存储的核心是对象。对象包含两个部分,数据文件及包含其可扩展存储属性的元数据,是存储的基本单元。文件数据与元数据分离存储,通过类 RAID 技术将数据分解成若干相互独立的对象单元进行分布存储。基于对象的存储设备 OSD (Object-based Storage Devices)应运而生,成为面向对象的数据存储载体,这种设备又被称为“智能磁盘”。元数据对象作为被存储对象的一部分,用来保存文件元数据,包括文件属性信息和全局唯一的对象标识。元数据对象的结构如图 2.1 所示。 国防科学技术大学研究生院工程硕士学位论文 第 7 页 全局标识符 对象长度属性序号属性个数 属性向量 关联域数据类型 长度 数据关联类型 关联类标识符 关联实例标识符 图 2.1 元数据对象结构 对象存储结构是近年来兴起的存储技术,为应用程序提供文件系统接口,结合了可扩展的元数据管理层,可管理文件扩展属性、访问权限、目录隶属关系等。将存储在 OSD 各个设备上的数据进行高效地重组恢复原文件,确保数据的正确、可靠、可用等性能。 周功业等针对对象存储系统中的热点数据问题,提出了一种基于预测和数据副本迁移的均衡策略。其原理是首先对象存储结点的热度进行预测,而后元数据服务器(MDS)根据存储结点不同的热度,对资源进行均衡协调。谢黎明等针对现有对象属性放置与管理方法的不足,提出了对象属性基于扩展 Hash 的管理方法,以及属性的放置策略、缓冲策略。 单颖等分析传统基于对象存储系统体系结构的基础上,提出一种体系结构SOBSS,通过扩展元数据服务器功能,简化体系结构内部数据交互模式。 喻占斌等提出了一种基于对象存储的集群存储系统空间数据的存储与管理的新的解决方法。该方法实现了在逻辑层对面向对象空间数据模型的支持,简化了数据模型的映射。 2.2 分布式文件系统 2.2.1 分布式文件系统介绍 随着存储技术的发展和监狱监控系统信息量的不断增加,传统的单机存储方式已不不再适用于海量数据的存储,必须建立文件存储系统来对数据信息进行存储和管理。 随着运算能力和存储需求的增加,分布式系统的应用越来越广泛,分布式文件系统(Distributed File System)是指文件管理软件通过计算机网络将各存储节点连接起来,将所需要存储的数据分散存储在这些存储节点上,而不是存储在单一的存储介质中。当前,由于对数据管理的软件需求很高,因此分布式文件系统主 要是基于 C/S 结构。用户可以通过客户端访问分布式文件系统的服务器,进而对文件进行操作。与普通的单机文件系统相比,分布式文件系统具有突出的技术特征: 1、系统的透明性。当多台服务器通过网络连接,同时运行在分布式文件系统中时,呈现给用户和应用程序的感觉与单台机器相同,用户可以用访问本地文件相同的方式访问系统中的远程文件。分布式文件系统的用户无需知道文件实际的物理位置,应用程序对待本地文件和远程文件没有区别。 2、系统的可扩展性。分布式文件系统能自动适应因系统节点变化而导致的物理资源变化,以满足用户对系统规模的设置。 3、系统的高可用性。在系统中,用户的文件访问过程不会因为局部网络故障或系统调度而出现中断,单个节点的故障不会导致系统数据的丢失。 4、系统的资源管理能力出色。分布式文件系统能自动地适应系统节点数的变化以及由此带来的负载均衡和系统稳定性,动态决定文件资源的分布情况,且能在必要的时候进行相应调整。分布式文件系统可分为通用分布式文件系统和专用分布式文件系统。通用分布式文件系统采用标准文件系统操作方式,对开发者门槛较低。但系统复杂性较高,需要支持若干标准的文件操作,如:目录结构、文件读写权限、文件锁等。直接采用内核级 mount 编码方式,复杂性更高。因为要支持 POSIX 标准,尤其是采用 FUSE 来实现 mount,系统整体性能有所降低。通用分布式文件系统的典型代表有 Lustre。专用分布式文件系统复杂性较低,不需要支持若干标准的文件操作,系统比较简洁。因为无需支持 POSIX 标准,可以省去支持 POSIX 引入的环节,比如采用 FUSE 来实现 mount 等,系统运行更加高效,系统整体性能较高。但系统需采用专有API,对开发者门槛较高。专用分布式文件系统的典型代表如FastDFS、TFS。根据专用性和通用性的原则,架构师在选择两种分布式系统的时候需要考虑有关分布式系统的应用环境。 2.2.2 典型分布式文件系统分类比较 当前主流的集群文件系统有 PVFS、GlusterFS、GFS 和 Lustre 等。2.2.2.1 PVFS 并行虚拟文件系统 PVFS(Parallel Virtual File System)项目开源项目,来源于 Clemson 大学,为 Linux 系统提供了可扩展和高性能的并行文件系统,在 GNU公共版权许可证下发布。PVFS 对底层的硬件没有非常强的依赖性,只需要运行在一般的 Linux 操作系统下就可以实现对文件的管理。PVFS 是基于 C/S 模型的,一 共有三种节点类型,分别是管理节点(Management Node)、I/O 节点(I/O node)和计算节点(Compute Node),结构如图 2.2所示。MGN 运行元数据服务器,负责对元数据进行管理;ION 负责运行文件系统的 I/O 服务,对文件系统的存储进行管理;CN 负责对数据进行运算,利用 libpvfs 的 I/O 库,从底层访问 PVFS 系统的服务器。 图 2.2 PVFS 文件系统结构图 PVFS 可以使用 Linux 系统自带的 UNIX POSIX I/O,也自己定义了 PVFS 接口和 MPI-IO 接口,但并没有遵守 POSIX 一致性语义。应用程序可以通过 UNIX POSIX I/O 接口、PVFS 接口和 MPI-IO 接口访问 PVFS 文件系统,但是为了提高稳定性和存储性能,PVFS 是无状态的,并且没有使用锁功能,仅仅是通过 Collective I/O 策略实现文件系统的并行优化,在一定程度上降低了系统的稳定性和可用性。 同样,PVFS 客户端同文件系统一样,也是无状态的,可以保证同文件系统的一致性,提供更高的访问效率,并且便于系统的扩展。 PVFS 中的数据访问详细流程为: 1、发起文件操作请求,请求被传送到底层的 PVFS 文件系统模块。 2、PVFS 向元数据服务器发送一个请求,要求取得相关文件在各个 I/O 节点上的元数据信息。 3、PVFS 元数据服务器把元数据信息返回给计算结点。 4、使用这些信息,计算节点直接与所有相关的 I/O 节点进行通信,获得整个文件。 这些步骤对于调用应用程序来说都是透明的;计算节点使用 libpvfs 直接联系相应的 I/O 节点进行读写操作,中间不需要与元数据服务器通信,显著提高了访问效率。值得一提的是,PVFS 文件系统对元数据信息进行分布存储和管理,这样设计的目的是为了避免传统的元数据集中存储造成的性能瓶颈和问题,提高了数据 信息的可靠性的同时,也具备向用户提供统一目录体系与命名空间的能力16。 PVFS 文件系统还存在一些问题,这样的元数据管理模式使整个系统可扩展性受到一定限制;可扩展性较差,应用规模很大时容易导致服务器崩溃。只能使用静态配置,不能进行动态扩展。此外,PVFS 目前还不是由商业公司最终产品化的商品,而是基于 GPL 开放授权的一种开放技术。虽然免费获取该技术使整体系统成本进一步降低,但由于没有商业公司作为发布方,该技术的后续升级维护等一系列服务,都难以得到保证。 2.2.2.2 GlusterFS GlusterFS 是一个开源的分布式文件系统,与当前其它分布式文件系统相比,GlusterFS 具有如下技术特点17: 首先,GlusterFS 采取无元数据服务器设计,不需要元数据的一致性维护,降低了系统的复杂性;也有效的避免了元数据服务器成为整个系统的性能及稳定的瓶颈问题,同时也使得整个云存储得到了近乎线性的高扩展性和极大的确保了其可靠性。弹性哈希算法是计算文件名 hash 值,获得一个 32 位整数。弹性哈希算法具有非常好的 hash 分布性,计算效率很高。假设逻辑卷中的存储服务器有 N 个,则 32 位整数空间被平均划分为 N 个连续子空间,每个空间分别映射到一个存储服务器。这样,计算得到的 32 位 hash 值就会被投射到一个存储服务器,即我们要选择的子卷18。 其次,它的弹性存储允许动态增删数据卷、增删存储服务器。具有强大的横向扩展能力,通过扩展能够支持数 PB 存储容量;GlusterFS 文件系统的存储卷是对底层硬件的抽象,可以根据需要进行扩容和缩减,以及在不同物理系统之间进行迁移。存储服务器可以在线增加和移除,并能在集群之间自动进行数据负载平衡,数据总是在线可用,没有应用中断。 第三,GlusterFS线性横向扩展通过增加存储节点来提高整个系统的容量或性能,能同时处理数千客户端;GlusterFS 借助 TCP/IP 或 InfiniBand (使用 IPoIB 实现对IP 网络的支持)网络把物理分布的存储资源聚集在一起,并使用单一全局命名空间来管理数据19 。 GlusterFS 的高可靠性体现在假定故障是正常事件,采取自动复制和自动修复来保证可靠性。 国防科学技术大学研究生院工程硕士学位论文 第 11 页 如图 2.320所示,在这里可以更直观的看到 GlusterFS 是没有 MeteData 模块的,这个设计使得整个系统的复杂度降低,也有效的避免了 MeteData 成为系统的性能瓶颈问题。客户端与服务器之间可以基于 IB(Infiniband)高性能网络使用 IPoIB来实现数据通信,网络不会成为系统的瓶颈,可以大大增强系统的扩展能力。 如图 2.4GlusterFS 数据流图所示,在 GlusterFS 文件系统中,用户是通过统一的全局文件系统视图来访问数据的,因此底层云存储集群系统对用于是透明的;而用户的读写操作是由本地的 linux 系统的 VFS 来处理;再由 VFS 将数据提交给FUSE,而 FUSE 则是将数据通过/dev/fuse 传输到客户端。客户端负责和服务器端进行交互,最后写入到服务器所控制的各个底层物理存储设备当中。 2.2.2.3 GFS 系统内部层面 服务器端 客户端 用户请求 FUSE VFS /dev/fuse 系统调用 VFS ext 应用层面 GlusterFS 客户端 GlusterFS 客户端 存储网关 NFS/Samba GLF 客户端 可兼容windows用 Infiniband IPoIB OR TCP/IP 存储服务器 Gluster FS 存储服务器 Gluster FS 存储服务器 Gluster 卷 Gluster 集群存储池 存储客户端 图 2.4 GlusterFS 数据流图 图 2.3 GlusterFS 结构图 国防科学技术大学研究生院工程硕士学位论文 第 12 页 GFS(Google File System) 是谷歌公司开发的一个可扩展的大型分布式文件系统,“让每个人都能找到自己家的屋顶”是其最终目标,现在它已经能够高效的提供覆盖全球 1/3 人口地区的高分辨率卫星影像,部分地区的影像分辨率甚至达到了 0.5m。GFS 可以运行在大量的低端硬件上,通过分布式容错机制和备份多副本及技术,具有强大的容错功能和依靠扩展性取得的服务性能。与通常的标准相比较,GFS 可以处理文件可以轻易的达到 GB 级。此外 GFS 绝大部分文件的修改是采用在文件尾部追加数据,而不是覆盖原有数据的方式。同时,应用程序以及文件系统 API 的协同设计使整个系统的灵活性得到了提高。 GFS主服务器文件命名空间CHunk 2ef0/foo/bar应用程序GFS客户端(文件名 chunk索引)(chunk句柄chunk位置)(chunk句柄,字节范围)(chunk数据)GFS数据块服务器向数据块服务器发出指令Linux文件系统GFS数据块服务器Linux文件系统控制流数据流 图 2.5 GFS 文件系统结构图 如图 2.5 所示,一个 GFS 集群包含多个块服务器和一个主服务器,可以支持多客户端并发访问。大容量文件需要被划分成固定大小的块,由块服务器作为文件保存在本地硬盘上,并为其分配块句柄和字节范围,用户可以根据块句柄和字节范围来读写数据,每个块都具有 3 个副本,提高其可靠性。主服务器则负责管理文件系统中所有块数据的元数据,此外还负责文件到块的映射以及块物理位置、访问控制、命名空间等相关信息的维护与管理。 21。 GFS 存储的文件被分割为固定大小的块(Chunk)。在块创建时,主服务器会给每个块分配一个不变并且唯一的 64 位标识。服务器把块以 linux 文件的形式保存在本地的硬盘上面,并且根据指定的块标识以及字节范围来读写块数据22。出于可靠性的考虑,每个块都会复制到多个块服务器上。主服务器节点管理所有的文件系统元数据。这些元数据包括名字空间、访问控制信息、文件和块的映射信息、以及当前块的位置信息。主服务器节点还管理着系统范围内的活动。主服务器节点使用心跳信息周期地和每个块服务器通讯,发送指令到各个块服务器并接收块服务器的状态信息23。GFS 客户端代码以库的形式被链接到客户程序里。客户端代码实现了 GFS 文件系统的 API 接口函数、应用程序与主服务器节点和块服国防科学技术大学研究生院工程硕士学位论文 第 13 页 务器通讯、以及对数据进行读写操作。客户端和主服务器节点的通信只获取元数据,所有的数据操作都是由客户端直接和块服务器进行交互实现的。GFS 将文件条带化,按照类似 RAID0 的形式进行存储,以提高聚合带宽。GFS 将文件按固定长度切分为数据块,主服务器在创建一个新数据块时,会给每个数据块分配一个全局唯一且不可变的 64 位 id。每个数据块以 linux 文件的形式存储在块的本地文件系统里。 GFS 设计考虑了谷歌的特殊应用需求和实现技术的环境因素。主要体现在如下四点:(1)由于采用了大量的低端廉价服务器作为存储设备,导致可能会有大量节点失效,因此通过软件将容错功能集成在系统中;(2)适应谷歌的搜索业务需求,构造了与其相适应的系统参数,文件通常以 G 字节为主,并兼顾大量的小文件;(3)充分考虑谷歌应用的特性,对文件的追加操作、顺序读写进行了特别优化,提高了这两项的速率;(4)由于主要为谷歌应用系统服务,包含一些谷歌应用专用系统接口,对传统应用的支撑不在完全兼容21。 2.2.2.4 Lustre Lustre 集群文件系统由 Peter Braam 博士于 1999 年发起,是主流的开源集群文件系统24。最大可支持上万个节点规模的集群系统、系统支持的存储容量达到PB 级、存储网络带宽可以达到 100GB/S,具有较好的安全性和可管理性和维护性24。Lustre 主要采用基于对象的思想进行存储管理,取代了传统的基于磁盘块的管理方法24。Lustre 使用了 Sandia 开放的 Portals 网络传输协议,支持多种网络,如 GigE, QSW Elan, Myrinet, InfiniBand, TCP/IP 等。 传统分布式文件系统中的高性能、高可用性以及可扩展性方面存在较多问题,Lustre 文件系统针对上述问题,基于 Linux 实现了标准的 POSIX 兼容的 API 接口,起主要技术包括分布式锁管理机制和元数据管理技术24。 国防科学技术大学研究生院工程硕士学位论文 第 14 页 Lustre 是一个基于对象存储的文件系统。但是其底层文件系统采用和传统Linux 系统相兼容的文件系统,支持 ext3、ext4 和 zfs 等,用来具体承载文件的目标存储功能。每个对象就是存储在目标设备中的具有智能的一个文件对象24。如图 2.6 所示,Lustre 主要由元数据服务器 MDS(Metadata Servers)、对象存储服务器 OSS(Object Storage Servers)和客户端三部分构成24。 MDS 主要功提供元数据服务,管理整个文件系统的命名空间。每个文件系统的 MDS 都有一个元数据目标设备 MDT(Metadata Target),MDT 主要负责保存文件元数据对象,包括目录结构、文件名和访问权限等属性24。 OSS 主要功能是管理数据的分布和具体存储。负责与存储设备相适配,为系统具体的提供 I/O 服务。每个 OSS 管理着一个或者多个对象存储目标设备 OST(Object Storage Target)。OST 就是存储文件的数据对象。文件数据会被条块化到多个位置不同的 OST 上,这样可以提供高速的并发读写能力。 MDS 是存储和维护数据对象的定位信息的文件属性,Client 上实现了 POSIX文件系统的接口,通过网络来进行文件访问。用户在 Client 上访问数据,无需知道具体数据的分布,在用户看来,Lustre 是一个完全透明的文件系统 24。 Client 与 OSS 时进行文件数据的交互,如对文件的读写、创建、删除等;同MDS 进行文件元数据的交互,主要是文件目录和命名空间的管理;MDS 和 OSS的主要进行的交互是数据对象的创建,状态的查询和恢复等24。三个子系统的关系如图 2.7 所示。 MDS 集群 Client OST 图 2.6 Lustre 文件系统结构图 国防科学技术大学研究生院工程硕士学位论文 第 15 页 Lustre 是一种开源的集群文件系统,具备高可靠性和良好的性能,且已在多个应用中得到了证实。Lustre 已应用于很多大型集群系统,为很多 HPC 高速网络提供了良好的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医药企业研发外包(CRO)模式在药物研发过程中的质量控制报告
- 2025年事业单位工勤技能-浙江-浙江环境监测工五级(初级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-安徽-安徽地图绘制员三级(高级工)历年参考题库含答案解析
- 面试官必看商务面试题
- 行业精英之路:从面试题及答案挑选合适的岗位准备行动
- 免疫力与维生素课件
- 克和千克课件简介
- 从专业旅游论坛获得的专业旅游专家面试题及答案
- 年中工作会领导发言稿
- 精锐奖发言稿
- 配货服务代理合同协议
- 医疗行业中的跨学科人才培养
- 2025-2030中国机场酒店行业市场前瞻与未来投资战略分析研究报告
- 海康威视综合安防工程师认证试题答案HCA
- 医保基金监管与支付资格管理专题培训
- 物业保安劳务协议合同书
- 中医男性健康与性功能障碍
- 八年级下册英语2025电子版人教版单词表
- 2024-2025年度上海市社会工作者之中级社会综合能力高分通关题库
- 2025年中级消防设施操作员(监控类)资格理论必背考试题库(附答案)
- 2023秸秆类生物质能源原料储存规范第1部分:存放
评论
0/150
提交评论