论文部分内容阅读
云计算是一种通过网络以便利的、按需付费的方式获取计算资源的范型,这些资源来自一个共享的、可配置的资源池,并能够以最省力的、无人干预的方式获取和释放;它们通常是基于虚拟化技术将硬件资源进行分割或聚合以实现按需缩减或扩展,并在虚拟化硬件之上辅以多种类型的基础软件和应用系统,最终以服务的方式进行供给。其中,云基础设施主要包括虚拟化基础设施及其上的基础软件,它为上层应用系统提供了硬件资源和运行环境,其管理技术是云计算重点研究内容之一。 云计算服务类型的差异性导致存在多样化的云基础设施管理需求,因此,需要按照用户特定的管理需求采用不同的解决方案来对云基础设施进行管理。学术界和产业界都对云基础设施的管理做了大量的研究工作,存在许多管理软件,旨在对云基础设施中的不同资源进行管理。对于新出现的一个管理需求,目前主要采用的管理方式是,对已有管理软件进行集成,通过管理功能的获取和组织来满足用户特定的管理需求。然而,由于缺乏通用的方法,集成管理的复杂度和难度依然很大,主要存在以下两方面挑战:一方面,资源多样性给系统管理功能的获取带来较大的复杂度,管理员不仅需要能够有效使用不同类型的管理接口,还需要熟悉不同类型的管理软件,以实现管理功能的交互和数据的转换;另一方面,服务随需性给系统管理功能的组织带来较大的难度,管理员需要根据不断变化的受管系统和用户偏好,来进行管理功能的组织,即使用户特定的管理需求仅仅发生微小变化,都需要进行底层代码的重开发。 本文针对云基础设施集成管理进行研究,基于已有的管理软件对云基础设施进行集成管理,需要解决以下两个问题:(1)如何进行系统管理功能的获取?获取方法应能够适用于多种类型的管理软件和管理接口,并方便于开发人员的理解、使用和复用。(2)如何进行系统管理功能的组织?组织方法应能够适用于不断变化的管理需求,并尽可能减小因管理需求变化而带来的系统重开发代价。 软件体系结构用一组可管理的单元来表示系统的整体架构,常用来解决需求到实现映射的过程中系统复杂性所带来的问题;此外,模型驱动工程的研究也已经能够支持问题域抽象描述到软件具体实现的转换。为了能够按照管理需求快速定制、集成、扩展已有的管理软件,本文将运行时体系结构模型引入到云基础设施集成管理过程中,建立了基于运行时模型的云基础设施管理技术框架,其主要特色和贡献包括: 首先,针对资源多样性给管理功能获取带来的挑战,提出了一种面向运行时模型的管理功能获取方法,包括一种半自动的服务封装方法和一种云基础设施运行时模型的构造方法,将管理功能封装为服务以实现管理功能的远程调用和交互,并通过构造运行时模型实现管理功能的抽象和复用。服务封装方法从系统管理功能出发,定义了一种统一模型,将接口类型不同的管理操作转化为符合统一模型的管理操作,并进一步转化为标准的Web服务。模型构造方法依据云基础设施体系结构,为不同的管理软件建立系统元模型,并在管理服务基础上建立系统访问模型,最后借助SM@RT工具生成运行时模型,使得能够在模型层对云基础设施进行管理。 其次,针对服务随需性给管理功能组织带来的挑战,提出了一种适应多样化资源管理场景的管理功能组织方法,包括一种分布式运行时模型的同步方法和一种半自动的模型转换方法,通过模型同步对不同软硬件系统的管理功能进行重组织,并通过模型转换来满足不断变化的管理需求。模型同步方法将运行时模型作为单个系统管理功能的载体,以组合模型的形式对其进行重组织,组合模型由不同系统运行时模型中的片段构成,其状态与单个系统运行时模型保持一致,从而实现多个软硬件系统的统一管理。模型转换方法使用用户特定模型来描述用户特定的管理需求,并建立用户特定模型与组合模型间的元素映射关系,来实现用户特定模型与组合模型的双向转换,从而通过对用户特定模型进行调整来满足不断变化的管理需求。 最后,为了验证本文方法的可行性和有效性,实现了支撑工具并针对广州电网云平台的容量规划问题进行了实例研究。容量规划的实施,需要对虚拟机硬件资源及其上基础软件同时进行管理,而目前尚不存在成熟的整体解决方案。本文在OpenStack和Hyperic的基础上,通过服务获取、模型构造、模型同步和模型转换,实现了虚拟机及其上基础软件的统一管理,以满足容量规划过程中软硬件资源的指标监测和资源分配等管理需求;进一步的,使用容量规划方法对资源使用进行预测,并根据预测结果进行资源配置。