(计算机系统结构专业论文)集群配置文件管理系统的设计与实现.pdf_第1页
(计算机系统结构专业论文)集群配置文件管理系统的设计与实现.pdf_第2页
(计算机系统结构专业论文)集群配置文件管理系统的设计与实现.pdf_第3页
(计算机系统结构专业论文)集群配置文件管理系统的设计与实现.pdf_第4页
(计算机系统结构专业论文)集群配置文件管理系统的设计与实现.pdf_第5页
已阅读5页,还剩52页未读 继续免费阅读

(计算机系统结构专业论文)集群配置文件管理系统的设计与实现.pdf.pdf 免费下载

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

文档简介

i 华 中 科 技 大 学 硕 士 学 位 论 文 摘 要 大量计算机应用对于存储规模和性能的迫切要求导致基于商业化部件的存储集 群系统产生和发展。存储集群将每个存储设备作为一个存储节点,所有的节点通过 高速互联网络连接起来。对成千上万的集群节点进行高效配置和管理成为重要的研 究内容。 虽然简单网络管理协议(snmp)能够收集节点运行信息和管理集群设备,并能 够发送异常报告。但是,目前没有专门的规范或者协议对集群系统配置做出完整的 定义。由于集群系统的多节点特征,手工配置集群节点效率低下。异构网络中,集 群配置复杂。特别是在大型系统中,配置集群更将成为一项繁琐的工作。因此,设 计一种高效的分布式集群配置文件管理方案用来改善集群管理工作。 集群配置文件管理方案能够应用于多种集群系统。它将集群中多个节点的配置 操作集中在一台服务器上,称之为控制节点。在控制端可以方便的查询、获取任何 一台节点机上的配置文件,如果对相关配置文件进行修改,可以把更新后的配置信 息立刻发送给该节点机。系统可以从控制端并行存取配置文件到所有节点。 控制端的日志文件中记录了管理配置文件的操作信息,包括配置文件名、文件 传输时间, 用来分析系统运行效率。 方案选用了 java 开源项目 apache 提供的强有力 的日志操作包 log4j,能够快速灵活地记录所需信息。 测试结果表明,此方案能够满足自动化集群配置管理的需求。运用系统配置集 群文件的时间约为没有使用该方案时的一半,在一定程度上提高了集群配置效率。 关键词:存储集群,集群配置,配置文件,日志文件,并行存取 该项研究受国家重点基础研究“973”计划(2004cb318203)和国家自然科学基金 (no. 60603075)的研究内容资 助 ii 华 中 科 技 大 学 硕 士 学 位 论 文 abstract storage cluster based on commercial components develops to meet the need of storage scale and performance at computer application. every storage device is seemed to be a code in storage cluster system. all the codes are connected by high speed network. it will be a highly concernful task to research configuration files and management on thousands upon thousands nodes. although simple network management protocol (snmp) can collect the information of the running cluster nodes, manage cluster devices and give an effective control in sending abnormal report, there is no special role or protocol to well define the configuration of cluster. it is an inefficient to configure a single code because cluster has too many codes. to configure cluster is a trivial task in a web environment which is heterogeneous. in large- scale cluster system the configuration is a awful work. so a distributed cluster configuration files management project is designed to consummate cluster management. this project can get rid of the effects on many kinds of cluster systems. it centralizes the operation of many other codes in the server, as the control node. it can search conveniently and get the configuration files from any code in the server. it also can send document to all the code immediately if the file is amended. the system can send files in a parallel way to nodes from the server. system stores the management operation of the configuration files to the log file, including configuration files names, time, which is used to analyze the efficiency of system. a powerful log operation packet log4j is chose to finish the function, which was provided by apache. it can record the information fast and flexibly. the result of test indicated that this project can satisfy the basic necessary of cluster configuration management which depicted above. make a comparison at configuration document management between clusters. it displays the cluster running the project uses a half time comparing to the other one. the design improves the efficient of storage cluster the research is supported by national basic research program “973” program (2004cb318203) and the national natural science foundation r (no. 60603075). iii 华 中 科 技 大 学 硕 士 学 位 论 文 in some degree. key words: storage cluster, the configuration of cluster, configuration file, log file, parallel accessing 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他 个人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集 体, 均已在文中以明确方式标明。 本人完全意识到本声明的法律结果由本人承担。 学位论文作者签名: 日期: 年 月 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有 权保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和 借阅。 本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据 库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密, 在 年解密后适用本授权书。 不保密。 (请在以上方框内打“”) 学位论文作者签名: 指导教师签名: 日期: 年 月 日 日期: 年 月 日 本论文属于 1 华 中 科 技 大 学 硕 士 学 位 论 文 1 绪 论 1.1 课题背景 1.1.1 课题来源 本课题来源于:国家重点实验室基础研究发展计划( 973 计划)资助项目 “ 下 一代互联网信息存贮的组织模式和核心技术研究” 的子课题“ 海量数据网络存储系统 的研究” (2004cb318203)以及国家自然科学基金“ 低熵存储系统(less)理论、方法 和实现技术研究” ( no. 60603075) 。 1.1.2 课题的目的和意义 为了获得高速的计算机,用有限的资金搭建一个相当于巨型机性能的高性能、 高可用性的集群系统有十分广阔的应用前景。在分布式系统中,利用集群技术可以 提高系统性能、可用性以及可伸缩性1。分布事务监控器2通常也采用集群方式进行 构造3。集群服务在企业组织、部署关键业务、电子商务与商务流程应用起到了日益 重要的作用。更重要的是,集群为存储开辟了新的技术领域。 随着信息技术不断的发展,数字存储量以爆炸式的速度增长,所有的数字信息 都将存储在文件中,导致文件的读取、访问越来越平凡,同时,存储设备技术也在 发展, 能提供越来越多的存储容量, 网络附加存储4,5network attached storage (nas) 也是这些技术中的一种。大部分nas系统通常采取了可升级扩展的方法来提供性能 和容量。但是,这种升级扩展方式带来了一系列问题:很难扩展数据路径,高容量 系统价格昂贵,而且难于管理,管理多个文件夹的做法非常不经济。 集群文件存储解决了此类 nas 系统的缺点。通过使用高级文件系统、集群存储 系统6,7,可以将不同的控制器和物理磁盘的性能和容量整合在一起,形成一个统一 的、可升级的、具有容错能力的 nas 资源。使用这种方法的结果是,系统成为统一 的共享命名空间,可以通过普通的文件访问协议。集群存储和传统的单集成电路存 储相比,有四大主要的优势: 2 华 中 科 技 大 学 硕 士 学 位 论 文 (1)i/o 可扩展性:这一能力不仅仅是支持绝大部分 i/o 密集的应用,还可以 将多个工作负载整合到一个统一的可扩展资源上; (2)单点管理:用统一的命名空间对多个物理节点或存储资源的虚拟环境统一 进行高级管理。 (3)容错:在遇到多个节点、磁盘或网络错误的时候,所存储的内容应该能够 继续访问。 (4)投资保护:随着时间推移扩展存储架构和容量的能力,不需要进行大量的 前期投资。 集群文件系统作为一种文件系统,与分布式文件系统相比,有如下几大优势: (1)共享数据:因为数据不需要从一个文件系统拷贝或复制到另一个文件系 统,通过集群系统共享应用和数据的任务执行起来要比在单独的设备上执行快得多。 (2)扩展存储空间:集群可以为文件和文件系统提供更多的空间,因为只需要 管理一个文件系统,而不再是每个存储设备或主机都需要一个文件系统,管理也更 容易了。 (3)易于故障恢复:如果集群内的某台服务器出现了故障,另一台服务器就可 以把它的工作接手过来,故障恢复也成为了现实;用户也可以同时对位于其网络上 的存储设备里的所有文件进行访问。 应此,研究集群文件系统是一项很有意义的工作。集群技术重要的特点就是多 节点,这样管理起来必须要能够对众多节点方便操作,集群中的配置成为一个难题。 因为配置往往要在每个节点上进行。现有的集群文件系统有很多,下面小节将做介 绍。但是,这些文件系统在处理集群配置时存在一定的局限性。 (1)配置自动化 有些集群文件系统没有对配置文件做统一的管理,每个节点的配置需要人工一 个个的实现,在节点很多的情况下,工作效率低,容易出错。 (2)依赖性 集群文件系统有一定的依赖性,依赖于本身的集群环境,或者依赖于网络。在 自己的运行环境下能够很好的,在换了集群平台时就不能很好的对节点进行操作。 3 华 中 科 技 大 学 硕 士 学 位 论 文 (3)数据非结构化管理 随着信息的不断更新,数据不再像以前一样的有着固定的结构模式,各种各样 的数据结构应运而生,对这些非结构化的数据的管理现有集群文件系统没有一套统 一的管理方案。 由此看来,集群文件存储能够很好的解决存储相关的问题,扩大存储容量,方 便文件操作。然而,在网络应用规模越来越大,结构越来越复杂、异构网络越来越 普遍的情况下,基于网络的集群配置文件管理变得越来越困难,也显得越来越重要。 针对集群配置,需要对集群文件系统设计出一种能够方便管理配置文件,高效配置 集群的机制。这正式文章要阐述的内容,它将能提高集群配置的有效管理,最大限 度地保证其正常运行,并且要提高效率、降低成本,完善现有的集群管理,对集群 技术的发展有着深远的意义,是一项值得研究的课题。 1.2 国内外研究概况 1.2.1 集群存储的兴起 目前,用于网络的存储主要有4种:附属于服务器的磁盘阵列(raid)、集中式磁 盘阵列服务器、附加网络存储(nas)和存储区域网8,9 (san)。前两种由于其可用性、 可扩展性、数据备份和数据迁移等方面的缺陷,已经越来越难以满足存储市场的需 求。 传统的存储系统由于其物理组成,例如,磁盘驱动器的数量,所连接服务器的 数量,内存大小和控制器性能的限制,会造成很多功能上的局限,如支持文件系统 的数量,快照或复制的数量等。一旦遇到存储系统的瓶颈,就会不断地促使用户升 级到更大的存储系统和添加更多的管理工具。这给用户带来极大地不便,在扩展的 存储体系中文件的管理显得更为复杂。 集群系统是一组通过特定的硬件和软件连接起来的独立计算机系统,它在用户 面前表现为一个单一系统。这些集群计算应用之间的共同点是它们必须共享数据, 存储的性能是决定整个应用的响应时间和吞吐量的一个关键。简而言之,单集成电 路存储系统不达到这些新的应用类别所需要的高吞吐量、容错能力和无缝扩展的要 4 华 中 科 技 大 学 硕 士 学 位 论 文 求。随着这些分布式和集群应用逐步在企业数据中心得到应用,开始重新考虑他们 的存储架构。集群存储系统是非常好的整合解决方案,因为它们提供了一个模块化、 可扩展、具备容错能力的平台,将多个文件服务器整合成一个统一管理的系统。 集群可提供按比例增加的服务器或存储资源的性能、容量、可靠性及可用性, 突破了单机设备的种种限制。图1.110为一典型的高性能集群系统的体系结构。 集群软件应用层 并行运行环境(mpi) 系统管理系统监控作业调度i/o文件系统 节点系统层 操作系统函数库1函数库2 图1.1 高性能集群系统的体系结构 集群存储系统将每个存储设备作为一个存储节点所有的节点通过高速互联网络 连接起来,所有节点之间通过消息进行通信。每个i/o节点不仅可以访问本节点的存储 空间,还可以访问其他节点的存储空间。所有存储节点的空间以一个虚拟磁盘的方式 提供给客户端用户。在集群里,一组独立的节点或主机可以像一个系统一样步调一 致地工作。它们不仅可以共享公用的存储阵列或者san,也可以拥有只有一个命名 空间的公用文件系统。集群存储系统将局域网内单个pc上的存储资源整合成具有统 一逻辑视图的高性能存储系统。在这些系统中,存储资源是直接连接到专用或通用 的集群节点上,集群节点通过一个共享的局域网来相互协作并整合分布式的存储资 源。 1.2.2 集群文件系统的介绍 在集群存储逐渐成熟的条件下,一些小型的初创公司已经证明它们有能力实现 集群存储概念的目标。集群存储架构囊括了所有类型的存储系统,包括基于块的 5 华 中 科 技 大 学 硕 士 学 位 论 文 (fibre channel和 iscsi)和基于文件的(nfs 和 cifs)11系统。现在,集群存储 架构主要被 iscsi 和 nas 所影响。一下是几种集群文件系统的介绍。 1)xfs xfs12是一种采用了无服务方式以提供可扩展的文件服务的机群文件系统。xfs 集成了存储分组结构和日志结构,并且也实现了数据存储与元数据管理的彼此分离。 xfs 通过全部分布数据存储与元数据管理的功能减少了集中的瓶颈。 为了获得更高的 性能, xfs 采用了合作缓存,一种通过各客户缓存的协调合作来替代传统的集中的服 务端缓存。在 xfs 中,任何机器都可以缓存、存储或者控制任意的数据块,这种方 式可以提供比传统文件系统结构更好的性能和可扩展性。但是它有一个缺点是它必 须维护在文件级粒度下的缓存一致性,否则可能导致在某些情况下的共享错误问题。 2)cosmos cosmos13是在曙光 3000 超级服务器上实现的一种可扩展单一映像集群文件 系统。cosmos 的底层基于 aix 文件系统 jfs,系统中每个节点通过高速网络互相 连接,cosmos 构建于这些操作系统平台之上, 向用户提供文件服务。cosmos 由核心相关层(kernel)和用户层两部分组成。 核心层是在虚拟文件系统一级中实现的, 它接收来自逻辑文件系统的 i/o 请求,并以一定的格式转发给用户层。cosmos 的 用户层以一定的格式转发给用户层。cosmos 的用户层由 3 类用户进程构成,被分 别称为客户(client)、元数据管理器(manager)和存储服务器(storage),它们协调工作, 共同完成核心层转发过来的 i/o 请求。其中,storage 实现具体的数据存储, client 完成 数据及元数据的缓存,而 manager 负责缓存一致性的维护及元数据的存储管理。需 要存取 cosmos 文件系统的节点要配置 client,本地磁盘上存有 cosmos 子文件数据的 节点要配置 storage,对于 manager,通常是平均每数个节点才配置一个。cosmos 中文件数据的定位是由管理服务器来完成的,并且在 cosmos 中实现的是分布式的 元数据管理机制以提供可扩展的定位服务。另外,管理服务器的另一个任务是维持 缓存的一致性。在 cosmos 中,每一个管理服务器负责维护整个文件系统的一个子 集的位置信息,管理服务器可以应用这种信息来转发 i/o 需求到正确的位置信息(合 作缓存或附属存储器)。管理服务器也控制对相同数据块的并行存取。cosmos 利用 6 华 中 科 技 大 学 硕 士 学 位 论 文 一个管理服务器映射来实现分布式元数据管理。这种映射包括了一系列的机器标志 符,运用这个可以知道哪个机器管理文件系统的哪一部分子集。 3)pvfs clemson 大学的并行虚拟文件系统pvfs) 14项目用来为运行 linux. 操作系统 的 pc 群集创建一个开放源码的并行文件系统。pvfs 已被广泛地用作临时存储的高 性能的大型文件系统和并行 i/0 研究的基础架构。作为一个并行文件系统,pvfs 将 数据存储到多个群集节点的已有的文件系统中,多个客户端可以同时访问这些数据。 并行文件系统具有众多优势: (1)提供一个全局命名空间。 (2)将数据分配到多个磁盘上。 (3)允许使用不同的用户界面。 (4)可以包含其它的 i/0 接口来支持大型文件。 为高速访问群集中的文件系统,pvfs 将文件数据进行条块化划分,分散存储到 某些群集节点(称作 i/0 节点)的多个磁盘上。条块化数据的方法可在群集上提供相当 大的存储容量,具体容量取决于群集中节点的数量。pvfs 所带来的存储容量可以为 用户提供整个集群内的大型全局操作空间。与很多网络文件系统或并行文件系统一 样,pvfs 是利用客户一服务器架构实现的。它利用一组协作的用户空间进程 (daemon),提供一个群集范围内的一致的命名空间,并将数据条块化,分配到多个群 集节点中。pvfs 客户和服务器之间的消息传递通过 tcp/ip 来完成,提供可靠的通 讯环境。所有的 pvfs 文件系统数据都保存在 i/0 节点的本地文件系统中,本地的文 件系统可以是一个硬盘驱动器上的一个分区,可以是整个磁盘驱动器,也可以利用 本地所支持的 linux 文件系统(例如 ext2, ext3 和 reiserfs)所提供的多个磁盘驱动器 的逻辑卷。pvfs 使用三种类型的节点:管理节点,i/0 节点和计算节点。一个群集 节点可以提供其中的一种功能,也可以同时提供其中的两种功能或三种功能。当前 的 pvfs 实现中拥有一个管理节点,一个或多个 i/0 节点和多个计算节点。pvfs 也 存在下面的问题: (1)集中的元数据管理15成为整个系统的瓶颈,可扩展性受到一定限制。 7 华 中 科 技 大 学 硕 士 学 位 论 文 (2)数据没有采取相应的容错机制,系统的可用性有待提高。 (3)静态配置,不具备动态扩展性。 4)lustre lustre 16,17是 hp, intel, cluster file system公司联合美国能源部开发的 linux集 群并行文件系统。该系统是第一个基于对象存储设备的,开源的并行文件系统。其 结构由客户端,两个 mds, osd设备池通过高速的以太网或 qwsnet 所构成。目前 可以支持 1000 个客户端节点的 i/0 请求,两个 mds 采用共享存储设备的 active- standby方式的容错机制,存储设备跟普通的,基于块的 ide 存储设备不同, 是基于对象的智能存储设备。lustre采用分布式的锁管理机制来实现并发控制,元数 据和文件数据的通讯链路分开管理。 5)clustre3.0 最后介绍的是 sun 推出的 sun clustre3.0 中,提出的集群文件系统。这个 集群文件系统中,采用了一个基于内核的客户/服务器结构,此结构建立在 vfs/vnode 接口之上,因此无论系统将来支持的文件系统有哪些,都可以最小化的减少对这些 进行支持所需要的改动。在 sun clustre3.0 软件中,具有一下几个特色: 全局设备允许多个磁盘,cd- rom以及其他存储设备连接到任意一个集群中的节点 (1)集群中的所有节点机都可以像访问自身设备一样透明的访问这些设备。 (2)全局网络为用户的连接提供了一个单独的地址来提供高效系统服务。 (3)全局文件服务允许同时在多个节点上安装多种文件系统。并且集群中任意 节点访问这些文件就像访问安装在自身的文件系统一样。 这些特色都是在 solaris 集群18环境下开发的。但是应该看到的是 sun 的全局文 件服务没有提供全局目录。集群中的节点都需要有一个单独的系统盘,以及一个能 使所有系统盘都保持同步的软件层。 以上介绍的几个典型的集群文件系统,基本上都是在分布式文件系统的基础上 提供的。实际上,每个系统仍然作为一个独立的节点进行管理,时间和复杂度都没 有减少,管理仍然是“ 多节点、多步骤” 的。针对集群服务器应用的多种网络服务, 以及集群配置的多节点操作问题,有必要对集群中的多个结点进行合理的分组和管 8 华 中 科 技 大 学 硕 士 学 位 论 文 理,使得配置节点不需要单机进行,不需要受到网络环境的影响,提高集群配置管 理的效率。 1.3 课题主要研究工作 集群对外要体现为单一的资源,集群的节点数量并不是固定的,可以根据性能 需求加入或是减少。集群是在各节点的基础上提供服务的,因此集群环境中各个节 点之间数据的存取、传输是集群工作中重要的一部分,要求具有高效,灵活,可移 植等特点。 通过上面对集群技术的介绍,集群文件系统的分析比较得出,需要一种有效的 管理集群配置的文件系统,能够使集群的配置不依赖于特定的集群环境、网络结构。 主要研究工作如下: (1)设计一种便利集群配置文件管理应用系统,实现在各个节点之间的数据同 步传输,方便的进行配置文件提取,更改。 (2)该应用软件要能够跨平台,摆脱网络结构、数据存储结构、集群环境的限 制,适用与任何大型复杂的集群系统。 (3)对成型的应用软件进行功能分析比较,提出不足,进一步完善改进。 文章对本课题的研究具体内容如下: 第一章讨论集群存储技术的兴起,分析现有集群文件系统的特点,由此提出本 课题的研究意义。 第二章对几种网络管理协议分析比较,找出缺陷,为本应用系统设计提供参考。 阐述集群配置文件在集群系统中的重要作用,并以 linux 操作系统为例,说明集群配 置文件的类型。 第三章分模块简单介绍配置文件管理的设计方案。控制端是系统中的重要设计 模块,节点端配合控制端完成响应需求。本章还阐述了系统设计的几项技术包括多 线程、loj4j 开源项目、tcp/ip 协议。 第四章给出系统流程图,分模块详细介绍系统应用软件的数据结构,进程调度 关系以及应用的关键技术。 9 华 中 科 技 大 学 硕 士 学 位 论 文 第五章测试系统功能,将用过该方案的集群配置时间与没有用该系统的进行比 较得出,大大的提高了集群配置的效率,证明了该系统有着较强的实用价值。同时, 也存在尚待改进的问题。 第六章全文总结并对以后工作的展望。 1.4 本章小结 本章提出了课题的研究内容,包括其来源、目的和意义。阐述了集群的体系结 构,引出存储集群的概念,以及对集群配置文件管理的必要性。.对现阶段国内外集 群文件系统的情况也做了相应分析, 列出了包括 xfs、 cosmos、 pvfs、 pvfs、 lustre、 clustre3.0 几种文件系统,比较他们的管理优缺点,提出集群配置文件管理方案的研 究内容,并对文章每个章节内容给出初步介绍。 10 华 中 科 技 大 学 硕 士 学 位 论 文 2 分布式配置文件管理 配置文件在保障系统正常运行、系统安全性、错误分析时有着重要的意义。在 集群环境下,已有许多网络管理协议为集群信息采集、设备管理、异常诊断方面做 出了贡献。但缺乏一种便于集群配置文件管理的设计。在单个系统中有多种配置文 件,他们维护着系统的各项功能执行。本章将对网路管理协议和分布式配置文件进 行相关阐述。 2.1 网络管理协议 集群是在互联网下发展壮大起来的,其管理当然受网路的影响。网络管理系统 中最重要的部分就是网络管理协议,它定义了网络管理器与被管代理间的通信方法。 下面简单介绍几种网络管理协议。他们广泛运用于各种集群系统中,对集群系统中 的组件,设备进行不同层面的管理。 (1)snmp协议 近年来,简单网络管理协议19,20,22(simple network management protocol,简称 snmp)发展很快,已经成为事实上的标准网络管理协议。snmp 是被设计成与传输 协议无关的,所以它可以在各种传输协议上使用。snmp 是由一系列协议组和规范 组成的,它们提供了一种从网络上的设备中收集网络管理信息的方法。从被管理设 备中收集数据有两种方法:一种是轮询方法,另一种是基于中断(interrupt- based) 的方法。 如果只是用轮询的方法,那么网络管理工作站总是在控制之下。但这种方法的 缺陷在于信息的实时性,尤其是错误的实时性。多久轮询一次、轮询时选择什么样 的设备顺序都会对轮询的结果产生影响。轮询的间隔太小,会产生太多不必要的通 信量,间隔太大,而且轮询时顺序不对,那么关于一些大的灾难性事件的通知又会 太慢,就违背了积极主动的网络管理目的。 与之相比,当有异常事件发生时,基于中断的方法可以立即通知网络管理工作 站,实时性很强。但这种方法也有缺陷,产生错误或自陷需要系统资源。如果自陷 11 华 中 科 技 大 学 硕 士 学 位 论 文 必须转发大量的信息,那么被管理设备可能不得不消耗更多的事件和系统资源来产 生自陷,这将会影响到网络管理的主要功能。 结果,以上两种方法的结合:面向自陷的轮询方法(trap- directed polling)可能 是执行网络管理最有效的方法了。一般来说,网络管理工作站轮询在被管理设备中 的代理来收集数据,并且在控制台上用数字或图形的表示方法来显示这些数据。被 管理设备中的代理可以在任何时候向网络管理工作站报告错误情况,而并不需要等 到管理工作站为获得这些错误情况而轮询它的时候才会报告。 (2)cmip协议 作为国际标准,由 iso 制定的公共管理信息协议23, 24(common information model protocol ,简称 cmip)着重于普适性。cmip 主要针对 osi 七层协议模型22 的传输环境而设计,采用报告机制,具有许多特殊的设施和能力,需要能力强的处 理机和大容量的存储器。 在网络管理过程中,cmip 不是通过轮询而是通过事件报告进行工作,由网络中 的各个设备监测设施在发现被检测设备的状态和参数发生变化后及时向管理进程进 行事件报告。管理进程一般都对事件进行分类,根据事件发生时对网络服务影响的 大小来划分事件的严重等级,网络管理进程很快就会收到事件报告,具有及时性的 特点。 这两种管理协议各有所长。snmp 是 internet 组织用来管理 tcp/ip 互联网和以 太网的,由于实现、理解和排错很简单,所以受到很多产品的广泛支持,但是安全 性较差。cmip 是一个更为有效的网络管理协议,把更多的工作交给管理者去做,减 轻了终端用户的工作负担。此外, cmip 建立了安全管理机制,提供授权、访问控制、 安全日志等功能。但由于 cmip 是由国际标准组织指定的国际标准,因此涉及面很 广,实施起来比较复杂且花费较高。 (3)smi- s 由美国存储网络行业协会(storage networking industry association,snia)提 出了存储管理建议规范25(storage management initiative specification,简称smi- s) 。 开发一种通用管理标准的优势显而易见,特别是在存储产品来自多个不同厂商 12 华 中 科 技 大 学 硕 士 学 位 论 文 的异构计算环境中。从根本上说,采用 smi- s 就无须在添加不同组件时再学习新的 管理工具或流程。smi- s 可以从单一控制台利用和网络上其他组件相同的方法管理 网络各组件。 由于各个设备在协议、传输技术、安全机制等领域大相径庭,令整合工作更加 困难,必须集中精力去集成多个设备互不兼容的接口。相对来说,smi- s 使存储开 发者可以采用单一标准接口独自进行开发。由于不再受到产品兼容性的困扰,就无 须开发及整合异构和专有的接口,从而缩短产品上市时间,能够更有效地推出产品 并进行更新,同时提升产品性能。 目前对 smi- s 标准的质疑也越来越多。首先,它事实上并没有涉及不同设备的 硬件兼容问题。其次,它现在还没有涉及到的问题有备份、远程复制、设备的性能 管理和存储管理软件的互操作等。 按照 smi- s 的初衷,它可以管理用户所有的存储资源,但是目前的情况来看, 它还处在一个发展初期:它仅能够发现各种问题,但是无法进行主动管理。发现功 能对于实现管理当然是重要的,但是它仅是管理的第一步,而 smi- s 的问题就在于 发现功能基本上是它的全部。 由上述的三种网络管理协议看来,都存在着各自的缺陷。毕竟网络管理是一项 复杂的工作,网络的异构环境使得很多协议、规范都有一定的局限性。而且这些协 议一般都是从设备中收集网络管理信息、管理网络组件设备、发现错误并报告错误 问题等几个方面设计的。对分布式网络集群配置问题,例如环境配置、用户配置、 服务器配置等没有给出一套好的协议方案。然而,配置问题在集群构建中又是必不 可少的,一套好的配置文件管理方案能够大大提高集群系统运行效率从而提升整体 性能。下面将着重介绍一下集群配置文件。 2.2 集群配置文件 由于大多数集群都是在 linux平台搭建的,所以这里以 red hat linux 系统为例 来介绍配置文件。 13 华 中 科 技 大 学 硕 士 学 位 论 文 2.2.1 配置文件的作用 linux 系统的配置文件,在多用户、多任务环境中,配置文件控制用户权限、 系统应用程序、守护进程、服务和其它管理任务。这些任务包括管理用户帐号、分 配磁盘配额、管理电子邮件和新闻组,以及配置内核参数。 内核26本身也可以看成是一个“ 程序” 。内核需要配置文件了解系统中用户和组 的列表,进而管理文件权限。这些文件不是明确地由程序读取的,而是由系统库所 提供的一个函数读取,并被内核使用。例如,程序需要某个用户的密码时不应该打 开 /etc/passwd 文件,相反,程序应该调用系统库的 getpw() 函数。这种函数也被称 为系统调用。 打开 /etc/passwd 文件和之后查找那个被请求的用户的密码都是由内核 决定的。 每个 linux 程序都是一个可执行文件,它含有操作码列表, cpu 将执行这些操 作码来完成特定的操作。几乎每个程序的行为都可以通过修改其配置文件来按照需 要去定制。在 linux 中,配置文件格式因开发人员而异,从 /etc/shells 文件,到 apache 的复杂的 /etc/httpd.conf 文件有各种各样的形式。所以配置文件没有统一的 标准格式。 用户和用户组的配置文件,是管理者最应该了解和掌握的系统基础文件之一, 另外,了解这些文件也是系统安全管理的重要组成部份。用户管理主要通过修改用 户配置文件完成。用户管理控制工具包括查询、添加、修改和删除用户等系统管理 工具。比如查询用户的 id,添加用户名和用户地址 、删除用户 、设置密码、修改用 户等。通过用户查询和控制工具所进行的动作的最终目的也是修改用户配置文件, 所以当进行用户管理的时候,直接修改用户配置文件也可以达到用户管理的目的。 网络功能的运行往往须要借助许多配置文件的内容,虽然目前有许多工具或程 序可用来针对这些文件的内容进行设置,但是站在系统维护的角度上,了解这些文 件的内容是绝对必须的。因为无法保证所有的命令或程序随时可用,如果命令或程 序的执行产生问题时,就必须回到原始的配置文件中手动进行修改或维护。 启动配置文件存有整个系统的环境参数和启动程序,用来以正常的顺序开启系 统,这对系统的安全性起着很大的作用。另外,关闭 linux 系统时,遵循正确的过 14 华 中 科 技 大 学 硕 士 学 位 论 文 程也是很重要的。因为 linux 使用磁盘缓存,并不是立即将数据写入磁盘,而是间 歇性回写。这极大改善了性能,但同时意味着如果用户突然关闭电源,cache 有可能 保留着大量数据,而磁盘上的数据可能不是一个完整的能正常工作的文件系统,突 然关闭电源可能损失惨重。 除开用户、网络、启动配置文件外,在系统配置27中还有网卡、ftp、ip 等系统 配置文件。在集群环境下还有 dns、dhcp 等配置文件,他们都控制集群环境下的 参数,设置。如果没有配置好,或者配置文件坏死,系统都将出现严重漏洞,有的 甚至无法正常运行。 另外,配置文件在应用开发中也担当一定的较色。asp.net 技术将网站所需的配 置信息都存储在一个 xml28配置文件中。这些配置信息控制门户内容的布局,以及安 全设置。网络管理员通过修改配置文件就可以达到修改网站布局和调配各模块用户访 问权限。将网站的配置信息存储在 xml配置文件中而不存储在数据库中的好处有: (1)减少对数据库的 i/o 操作,因为配置一旦设置好,就很少改动。在初始化 application时将配置文件信息一次性读入内存就能大大提高性能。 (2)将相对固定的配置信息放到 xml 配置文件中可以简化数据库的结构,将 数据库主要用来存储用户模块信息,这样也利于以后的扩展。 由此看出,配置文件无处不在,从小的工作系统,到大的集群环境;从系统设 置到网络应用它都发挥着不小的功效。因此要维持集群系统的正常运行,管理好配 置文件是一项不可忽视的工作。 2.2.2 系统配置文件的种类 因为各项应用技术中的配置文件有很多,而且格式多样,需要在具体应用中具 体分析。本节根据配置文件的使用和其所影响的服务的情况对目前 red hat linux 系统中的配置文件29进行了分类。除非另行指定,red hat linux 系统中大多数配置 文件都在 /etc 目录中。配置文件可以主要分为下面几类: 1)文件系统 内核提供了一个接口,用来显示一些它的数据结构,这些数据结构对于决定诸 如使用的中断、初始化的设备和内存统计信息之类的系统参数可能很有用。这个接 15 华 中 科 技 大 学 硕 士 学 位 论 文 口是作为一个独立但虚拟的文件系统提供的,称为 /proc 文件系统。很多系统实用 程序都使用这个文件系统中存在的值来显示系统统计信息。例如,/proc/modules 文 件列举系统中当前加载的模块。lsmod 命令读取此信息,然后将其以可以看懂的格 式显示出来。下面 mtab 文件以同样的方式读取包含当前安装的文件系统的 /proc/mount 文件。 (1)/etc/mtab 这将随着 /proc/mount 文件的改变而不断改变。换句话说,文件 系统被安装和卸载时,改变会立即反映到此文件中。 (2)/etc/fstab 列举计算机当前“ 可以安装” 的文件系统。 这非常重要,因为计 算机引导时将运行 mount - a 命令,该命令负责安装 fstab 的倒数第二列中带有“ 1” 标记的每一个文件系统。 (3)/etc/mtools.conf dos 类型的文件系统上所有操作的配置,例如建目录、复 制、格式化等。 2)守护进程和系统程序 守护进程是永远运行在后台的程序,它默默地执行自己的任务。常见的守进程 有 in.ftpd(ftp 服务器守护进程)、in.telnetd(telnet 服务器守护进程)和 syslogd (系统日志记录守护进程)。 有些守护进程在运行时会严密监视配置文件,在配置 文件改变时就会自动重新加载它。但是大多数守护进程并不会自动重新加载配置文 件。我们需要以某种方式告诉这些守护进程配置文件已经被发生了改变并应该重新 加载。可以通过使用服务命令重新启动服务来达到这个目的(在 red hat linux 系 统上)。例如,如果我们更改了网络配置,就需要发出:service network restart。 这些服务最常见的是 /etc/rc.d/init.d/* 目录中存在的脚本,在系统被引导时由 init 启动。 3)用户程序 与用户相关的系统配置文件主要有/etc/passwd 和/etc/shadow, 其中/etc/shadow是 用户资讯的加密文件,比如用户的密码口令的加密保存等。/etc/passwd 和 /etc/shadow 文件是互补的。 用户或系统程序在每次启动时都会读取其配置文件。尽管如此,有些系统程序 16 华 中 科 技 大 学 硕 士 学 位 论 文 在计算机打开时情况不一样,它们的行为依赖于在 /etc/ 中的配置文件中读到的内 容。 所以, 用户程序第一次启动时将从 /etc/ 目录中存在的文件读取缺省配置。 然后, 用户可以通过使用 rc 和 .(点)文件来定制程序。 “ 普通” 用户不能简单地进入 /etc 然后更改配置文件。从文件系统的角度来看,配置文件的所有者是 root 用户。这就 是大多数用户程序都定义两个配置文件的原因,第一个是“ 系统” 级别的,位于 /etc/; 另一个属于用户专用,可以在他或她的主目录中找到。 4)更改配置文件 在更改配置文件时,如果程序不是由系统管理员或内核控制的,就要确保重新 启动过使用该配置的程序。普通用户通常没有启动或停止系统程序或守护进程的权 限。 更改内核中的配置文件会立即影响到系统。例如,更改 passwd 文件以增加用 户将立即使该用户变为可用。而且任何 linux 系统的 /proc/sys 目录中都有一些内 核可调参数。只有超级用户可以得到对所有这些文件的写入权力,其它用户只有只 读访问权力。此目录中文件的分类的方式和 linux 内核源代码的分类方式一样。此 目录中的每个文件都代表一个内核数据结构,这些数据结构可以被动态地修改,从 而改变系统性能。 5)守护进程 守护进程是一种运行在非交互模式下的程序。一般来说,守护进程任务是和联 网区域有关的:它们等待连接,以便通过连接提供服务。linux 可以使用从 web 服 务器到 ftp 服务器的很多守护进程。 /etc/syslogd.conf syslogd 守护进程的配置文件。syslogd 是一种守护进程,它负 责记录(写到磁盘)从其它程序发送到系统的消息。这个服务尤其常被某些守护进 程所使用,这些守护进程不会有另外的方法来发出可能有问题存在的信号或向用户 发送消息。 /etc/httpd.conf web 服务器 apache 的配置文件。这个文件一般不在 /etc 中。 它可能在 /usr/local/httpd/conf/ 或 /etc/httpd/conf/ 中,但是要确定它的位置,您还需 要检查特定的 apache 安装信息。 17 华 中 科 技 大 学 硕 士 学 位 论 文 /etc/conf.modules or /etc/modules.conf kerneld 的配置文件。 kerneld 并不是作为守 护进程的内核。它其实是一种在需要时负责快速加载附加内核模块的守护进程。 上面介绍的配置文件都是指的单机上的配置管理操作,虽然有的比较复杂,但 是由于是在一台电脑上进行,只要管理员熟悉配置文件的内容,是容易修改完成的。 现在我们在集群环境下将有无数的节点,对每个节点的配置工作如果一台一台完成 几乎是不现实的,就算能够完成,效率也十分低下,因为有很多重复的工作。所以 设计一种管理配置文件的协议对集群系统意义重大,该机制能够有效的对集群配置 文件进行查询、修改。将大大提高配置集群工作的效率。 2.3 本章小结 本章主要介绍了两方面的内容。首先对 snmp、cimp、smi-

温馨提示

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

评论

0/150

提交评论