云计算平台中快速部署和更新虚拟环境系统及其方法_4

文档序号:8380771阅读:来源:国知局
按照该顺序执行模型差异算法输出的操作,部署、更新相应硬件和软件,最终获得所需的虚拟环境。
【主权项】
1.一种云计算平台中快速部署和更新虚拟环境系统,其特征在于:包括依次连接的配置输入模块、配置解析模块、模型差异计算模块和操作执行模块, 所述配置输入模块接收用户输入的配置文件并传入配置解析模块; 所述配置解析模块验证所接收配置文件的合法性和解析用户描述,检测不符合格式要求的描述并返回错误信息,并解析合法文本内容生成相应模型; 所述模型差异计算模块计算两个模型之间的差异,输出从模型A转换到模型B所需的最少操作集合,模型A可以为空,用于计算首次部署虚拟环境时需要的操作集合;并且,模型差异计算模块与配置解析模块之间设置有模型存储模块,所述模型存储模块存储配置解析模块生成的模型,该模型用于更新时进行的模型差异计算; 所述操作执行模块执行模型差异计算模块输出的所有操作集合,本模块包括有三个子模块:操作排序模块,以及分别与操作排序模块连接的硬件操作执行模块和软件操作执行丰吴块; 所述硬件操作执行模块的另一端分别连接有相互联通的云计算平台和硬件资源池模块;所述软件操作执行模块的另一端连接有自动化软件配置管理工具,自动化软件配置管理工具上还连接有软件包注册模块。
2.根据权利要求1所述的云计算平台中快速部署和更新虚拟环境系统,其特征在于:所述云计算平台和自动化软件配置管理工具上均设有编程接口; 所述硬件资源池模块设定资源池容量且维护池中虚拟机资源; 所述操作执行模块在创建虚拟机时优先使用硬件资源池中虚拟机,删除虚拟机时将虚拟机放入资源池而不是立即销毁虚拟机,除非当前资源池容量已经达到预先设定的最大值; 所述软件包注册模块在自动化软件配置管理工具上注册新的软件包; 所述操作排序模块根据操作对象在模型所表示的图形上的拓扑序进行反向排序形成工作流,硬件操作执行模块执行对虚拟机的增加、删除、修改操作,软件操作执行模块于执行对软件的增加、删除和修改操作。
3.—种根据权利要求1或2任意一项所述的云计算平台中快速部署和更新虚拟环境系统的方法,其特征在于:包括以下步骤: (1)用户按照虚拟环境配置描述规约描述所需虚拟环境,形成配置文件;其中,虚拟环境包括虚拟机硬件资源和软件系统,以及相互之间的关系; (2)解析上述所得的配置文件生成模型,模型由顶点和边形成有向图,顶点表示虚拟机和软件包,边表示顶点之间的关系,有向图整体表示所需虚拟环境; (3)进行模型差异计算得到部署或更新时需要执行的操作集合,并对该操作集合进行排序形成工作流,其中,所述操作集合中的操作包括对顶点和边的增加、删除和修改; (4)生成硬件资源池,在实际部署前创建虚拟机硬件资源;并使用该硬件资源池和云计算平台提供的编程接口执行硬件相关操作; (5)将部署和更新所涉及的软件在自动化软件配置管理工具上注册为软件包,注册后的软件包中包括有安装文件、安装方法、卸载方法和配置修改方法,且该软件包用于本次部署和后续更新以及其他部署和更新; (6)使用自动化软件配置管理工具提供的编程接口和已注册的软件包执行软件相关操作,对软件进行安装、卸载和修改; (7)按照步骤(3)所得工作流顺序,执行所述硬件相关操作和所述软件相关操作后获得虚拟环境; (8)修改配置文件并再次提交可以重复上述过程更新已部署的虚拟环境。
4.根据权利要求3所述的云计算平台中快速部署和更新虚拟环境系统的方法,其特征在于:所述步骤(I)中配置文件的描述规约包括: 使用kindOf关键词声明虚拟机类型和软件包类型,在语句末尾使用with关键词添加属性描述具体配置; 使用hostOn关键词声明某软件包安装于某虚拟机; 使用cbpengOn关键词声明软件包与软件包之间的依赖关系,在语句末尾使用at关键词声明所涉及的软件包配置项,未指定配置项的使用缺省配置项。
5.根据权利要求3所述的云计算平台中快速部署和更新虚拟环境系统的方法,其特征在于:所述步骤(2)中,边表示的关系包括软件包与虚拟机之间的hostOn、软件包与软件包之间的dependOn关系; 所述各个顶点和边的属性集为:顶点的属性表示虚拟机的名字、配置类型以及软件包的名字、类型、版本和具体配置;边的属性表示仅用于软件包与软件包之间的cbpendOn关系以及该dependOn关系所涉及的具体配置,软件包与虚拟机之间的hostOn关系不带属性。
6.根据权利要求3所述的云计算平台中快速部署和更新虚拟环境系统的方法,其特征在于:所述步骤(3)中,进行模型差异计算输出从模型A转换到模型B所需的操作集合,其具体计算过程包括: 设定四个集合,匹配集合M、新增集合N、删除集合D和修改集合C,集合M表示完全一致不需要进行操作,集合N表示需要创建新的虚拟机或安装新的软件包,集合D表示删除虚拟机或软件包,集合C表示修改软件包的配置或将虚拟机的类型进行更改,且修改虚拟机的类型由删除原虚拟机和创建新虚拟机组成; 对比模型A和模型B,利用顶点的名字匹配各顶点,利用边的起始点、终止点和属性集匹配各边,将所有匹配的对放入集合M ; 扫描所有模型A中不存在但在模型B中存在的顶点和边,放入集合N,即这些顶点和边需要新建; 扫描所有模型A中存在但在模型B中不存在的顶点和边,放入集合D,即这些顶点和边需要删除; 扫描M集合中所有匹配的对,将任何有属性更改的对放入集合C并标明修改之处,即这些顶点和边的属性需要修改; 扫描集合M和集合C中初始点是软件包、终止点是虚拟机的边,如果该虚拟机处于集合N、D或C中,即该虚拟机已经不是原来的那台,则说明软件包从原来所处的虚拟机上移动了新创建的虚拟机上,应将该软件包顶点和该边放入集合N,表示在新创建的虚拟机上安装该软件包; 最后,为集合N中元素生成新建操作,为集合D中元素生成删除操作,为集合C中元素生成修改操作,忽略集合M中元素。
7.根据权利要求3所述的云计算平台中快速部署和更新虚拟环境系统的方法,其特征在于,所述步骤(3)中,所述工作流具体是指,将操作集合中的操作按照操作对象在模型有向图上的拓扑序即依赖关系进行反向排序:从拓扑序最大、依赖关系最深的对象开始依次执行到拓扑序最小、依赖关系最浅的对象,保证操作对象的依赖对象会先于本操作对象被创建。
8.根据权利要求3所述的云计算平台中快速部署和更新虚拟环境系统的方法,其特征在于:所述步骤(4)中,生成硬件资源池后设定资源池容量的最大值和最小值,调用云计算平台提供的编程接口发出指令生成虚拟机直至达到最大容量,硬件资源池中的虚拟机在部署和更新时被优先使用,其中,硬件资源池容量的最大值和最小值是一组键值对,表示不同虚拟机配置类型所对应的容量; 在执行硬件相关操作时,若需新建硬件资源,优先使用硬件资源池中的资源,硬件资源池中资源无法满足执行操作时,向云计算平台提供的编程接口发出指令创建资源;若需删除资源,优先将资源放入硬件资源池中,除非硬件资源池中相应类型资源数量以达最大值,这种情况下将销毁该资源;使用过硬件资源池中的资源后,若资源池中相应资源的数量少于规定的最小值,则会向云计算平台提供的编程接口发出指令创建一定量资源满足最小值。
【专利摘要】本发明公开一种云计算平台中快速部署和更新虚拟环境系统及其方法,用配置文件描述虚拟环境,将配置文件解析为模型,计算模型差异获得操作集合,对操作集合排序后执行,执行过程中使用云计算平台提供的编程接口和硬件资源池操作虚拟硬件,使用自动化软件配置管理工具提供的编程接口操作软件,所有操作执行完毕后获得所需虚拟环境,修改配置文件再次提交可以重复上述过程更新已部署的虚拟环境。本发明从多个方面极大的简化用户在部署虚拟环境时的工作,提供了对虚拟环境的更新能力,加速了部署和更新过程,提高了配置的复用能力,具有广阔的应用推广前景。
【IPC分类】G06F9-445, G06F9-455
【公开号】CN104699508
【申请号】CN201510133806
【发明人】曹春, 马晓星, 余东亮
【申请人】南京大学
【公开日】2015年6月10日
【申请日】2015年3月25日
...
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1