本发明涉及计算机技术领域,尤其涉及的是一种虚拟化系统升级方法及装置。
背景技术
在虚拟化系统管理领域,虚拟化产品(比如,负载均衡工具等)成为日益重要的管理工具。虚拟化系统包括管理节点和计算节点,随着技术的更新或者业务功能的不断演化,使得虚拟化产品不断地更新,对于管理节点,如何对虚拟化系统进行虚拟化产品的平滑升级就显得尤为重要。
目前,虚拟化系统管理员一般通过手动方式对虚拟化系统进行升级,以命令行的方式逐个安装及卸载软件包。手动升级不但工作量大、效率低,而且容易出错。
技术实现要素:
本发明实施例所要解决的技术问题是提供一种虚拟化系统升级方法及装置,能够对虚拟化系统自动升级,挺高升级效率。
本发明实施例提供一种虚拟化系统升级方法,包括:
获取升级包及升级包描述文件,并保存在系统指定目录下;
获取待升级的系统实体列表,针对所述系统实体列表中的每一个系统实体,查询所述系统实体的升级历史记录获得所述系统实体的软件升级信息,根据所述软件升级信息在所述系统指定目录下搜索匹配的升级包,利用所述匹配的升级包对所述系统实体进行升级,并生成升级历史记录。
本发明实施例提供一种虚拟化系统升级装置,包括:
升级包获取模块,用于获取升级包及升级包描述文件,并保存在系统指定目录下;
系统实体升级模块,用于获取待升级的系统实体列表,针对所述系统实体列表中的每一个系统实体,查询所述系统实体的升级历史记录获得所述系统实体的软件升级信息,根据所述软件升级信息在所述系统指定目录下搜索匹配的升级包,利用所述匹配的升级包对所述系统实体进行升级,并生成升级历史记录。
本发明实施例提供一种虚拟化系统升级装置,包括:
存储器、处理器及存储在所述存储器上并可在所述处理器上运行的虚拟化系统升级程序,所述虚拟化系统升级程序被所述处理器执行时实现上述虚拟化系统升级方法的步骤。
与相关技术相比,本发明实施例提供一种虚拟化系统升级方法及装置,获取升级包及升级包描述文件并保存在系统指定目录下,获取待升级的系统实体列表,针对所述系统实体列表中的每一个系统实体,查询所述系统实体的升级历史记录获得所述系统实体的软件升级信息,根据所述软件升级信息在所述系统指定目录下搜索匹配的升级包,利用所述匹配的升级包对所述系统实体进行升级,并生成升级历史记录。本发明实施例能够对虚拟化系统自动升级,挺高升级效率。
附图说明
图1为本发明实施例1的一种虚拟化系统升级方法流程图;
图2为本发明实施例2的一种虚拟化系统升级装置示意图;
图3为本发明示例1的一种虚拟化系统升级方法流程图;
图4为本发明示例2的一种虚拟化系统升级装置示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
实施例1
如图1所示,本发明实施例提供了一种虚拟化系统升级方法,包括:
步骤s110,获取升级包及升级包描述文件,并保存在系统指定目录下;
步骤s120,获取待升级的系统实体列表,针对所述系统实体列表中的每一个系统实体,查询所述系统实体的升级历史记录获得所述系统实体的软件升级信息,根据所述软件升级信息在所述系统指定目录下搜索匹配的升级包,利用所述匹配的升级包对所述系统实体进行升级,并生成升级历史记录;
在一种实施方式中,所述获取升级包及升级包描述文件包括:从下载源下载升级包及升级包描述文件;或者,从移动存储设备上获取升级包及升级包描述文件。
其中,所述下载源可以是升级包数据库;
在本实施例中,所述升级包包括:版本升级包或补丁升级包;
其中,版本升级包是当软件版本号发生变化时从旧的软件版本升级到新的软件版本时基于所述旧的软件版本制作的升级包;
补丁升级包是当软件版本号不变时为了对该软件版本号对应的软件版本进行更新和优化而制作的升级包;
所述升级包描述文件用于描述升级包的属性信息;
版本升级包包括以下属性信息:旧的软件版本号、新的软件版本号和软件名称;
补丁升级包包括以下属性信息:软件版本号、软件名称、补丁名称和补丁号。
在一种实施方式中,所述查询所述系统实体的升级历史记录获得所述系统实体的软件升级信息,根据所述软件升级信息在所述系统指定目录下搜索匹配的升级包,包括:
在所述系统指定目录下扫描升级包描述文件:
如果扫描到的升级包描述文件是版本升级包的描述文件,则比较所述升级包对应的软件名称和旧的软件版本号与所述系统实体最新安装的软件版本的软件名称和版本号是否一致,如果一致,则判定该升级包与所述系统实体匹配;
如果扫描到的升级包描述文件是补丁升级包的描述文件,则比较所述升级包对应的软件名称和软件版本号与所述系统实体最新安装的软件版本的软件名称和软件版本号是否一致,如果一致,则根据所述补丁升级包的补丁名称和补丁号判断所述补丁升级包是否被所述系统实体安装过,如果没有安装过则判定所述升级包与所述系统实体匹配;
在一种实施方式中,利用所述匹配的升级包对所述系统实体进行升级,包括:
将系统实体的工作模式配置为维护模式,控制所述系统实体使用所述匹配的升级包进行系统升级;
在一种实施方式中,系统实体包括:集合系统实体或单个系统实体;其中,集合系统实体中包括多个系统实体;
在一种实施方式中,所述利用所述匹配的升级包对所述系统实体进行升级,包括:
当所述系统实体是集合系统实体时,向所述集合系统实体中的所有系统实体下发并行升级任务或串行升级任务;
当所述升级任务是并行升级任务时,将所述集合系统实体中的每一个系统实体的工作模式配置为维护模式,控制所有的系统实体同时使用所述匹配的升级包进行系统升级;
当所述升级任务是串行升级任务时,依次将所述集合系统实体中的每一个系统实体的工作模式配置为维护模式,控制各个系统实体依次使用所述匹配的升级包进行系统升级。
在一种实施方式中,所述系统实体的升级历史记录包括以下信息的至少一种:软件名称,旧的软件版本号,新的软件版本号,补丁名称,补丁号,升级包文件名,升级包存储路径和升级时间。
实施例2
如图2所示,本发明实施例提供了一种虚拟化系统升级装置,包括:
升级包获取模块201,用于获取升级包及升级包描述文件,并保存在系统指定目录下;
系统实体升级模块202,用于获取待升级的系统实体列表,针对所述系统实体列表中的每一个系统实体,查询所述系统实体的升级历史记录获得所述系统实体的软件升级信息,根据所述软件升级信息在所述系统指定目录下搜索匹配的升级包,利用所述匹配的升级包对所述系统实体进行升级,并生成升级历史记录;
在一种实施方式中,升级包获取模块,用于采用以下方式获取升级包及升级包描述文件:从下载源下载升级包及升级包描述文件;或者,从移动存储设备上获取升级包及升级包描述文件。
其中,所述下载源可以是升级包数据库;
在本实施例中,所述升级包包括:版本升级包或补丁升级包;
其中,版本升级包是当软件版本号发生变化时从旧的软件版本升级到新的软件版本时基于所述旧的软件版本制作的升级包;
补丁升级包是当软件版本号不变时为了对该软件版本号对应的软件版本进行更新和优化而制作的升级包;
所述升级包描述文件用于描述升级包的属性信息;
版本升级包包括以下属性信息:旧的软件版本号、新的软件版本号和软件名称;
补丁升级包包括以下属性信息:软件版本号、软件名称、补丁名称和补丁号。
在一种实施方式中,系统实体升级模块,用于采用以下方式查询所述系统实体的升级历史记录获得所述系统实体的软件升级信息,根据所述软件升级信息在所述系统指定目录下搜索匹配的升级包:
在所述系统指定目录下扫描升级包描述文件:
如果扫描到的升级包描述文件是版本升级包的描述文件,则比较所述升级包对应的软件名称和旧的软件版本号与所述系统实体最新安装的软件版本的软件名称和版本号是否一致,如果一致,则判定该升级包与所述系统实体匹配;
如果扫描到的升级包描述文件是补丁升级包的描述文件,则比较所述升级包对应的软件名称和软件版本号与所述系统实体最新安装的软件版本的软件名称和软件版本号是否一致,如果一致,则根据所述补丁升级包的补丁名称和补丁号判断所述补丁升级包是否被所述系统实体安装过,如果没有安装过则判定所述升级包与所述系统实体匹配;
在一种实施方式中,系统实体升级模块,用于采用以下方式利用所述匹配的升级包对所述系统实体进行升级:
将系统实体的工作模式配置为维护模式,控制所述系统实体使用所述匹配的升级包进行系统升级;
在一种实施方式中,系统实体包括:集合系统实体或单个系统实体;其中,集合系统实体中包括多个系统实体;
在一种实施方式中,系统实体升级模块,用于采用以下方式利用所述匹配的升级包对所述系统实体进行升级:
当所述系统实体是集合系统实体时,向所述集合系统实体中的所有系统实体下发并行升级任务或串行升级任务;
当所述升级任务是并行升级任务时,将所述集合系统实体中的每一个系统实体的工作模式配置为维护模式,控制所有的系统实体同时使用所述匹配的升级包进行系统升级;
当所述升级任务是串行升级任务时,依次将所述集合系统实体中的每一个系统实体的工作模式配置为维护模式,控制各个系统实体依次使用所述匹配的升级包进行系统升级。
在一种实施方式中,所述系统实体的升级历史记录包括以下信息的至少一种:软件名称,旧的软件版本号,新的软件版本号,补丁名称,补丁号,升级包文件名,升级包存储路径和升级时间。
实施例3
本发明实施例提供了一种内容显示装置,包括:
存储器、处理器及存储在所述存储器上并可在所述处理器上运行的虚拟化系统升级程序,所述虚拟化系统升级程序被所述处理器执行时实现上述虚拟化系统升级方法的步骤。
其中,存储器可以是各种由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
处理器可以是中央处理单元(cpu)或者现场可编程逻辑阵列(fpga)或者单片机(mcu)或者数字信号处理器(dsp)或者专用集成电路(asic)等具有数据处理能力和/或程序执行能力的逻辑运算器件。
示例1
本示例针对虚拟化系统,提出一种虚拟化系统的升级方法,能够实现虚拟化系统的自动升级。所述虚拟化系统包括管理节点和计算节点,所述虚拟化系统的升级方法应用于所述管理节点,所述管理节点对整个虚拟化系统进行管理。
如图3所示,一种虚拟化系统升级方法,可以包括以下步骤:
步骤s102,扫描下载源,获取升级包及升级包描述文件,并保存在系统指定目录下;
其中,所述下载源可以是升级包数据库;
步骤s104,获取待升级的系统实体列表;
其中,系统实体是指:计算节点或管理节点;
步骤s106,针对任意一个待升级的系统实体,查询所述系统实体的升级历史记录获得所述系统实体的软件升级信息;
步骤s108,根据所述软件升级信息在所述系统指定目录下搜索匹配的升级包;
步骤s110,判断是否搜索到匹配的升级包,是则执行步骤s112,否则执行步骤s118;
步骤s112,向所述系统实体下发升级任务;其中,所述升级任务携带所述升级包在所述系统指定目录下的存储路径信息和文件名信息;
步骤s114,将分配了升级任务的系统实体的工作模式配置为维护模式,利用所述匹配的升级包对所述系统实体进行升级;
步骤s116,生成系统实体的升级历史记录。
其中,所述系统实体的升级历史记录包括以下信息的至少一种:软件名称,旧的软件版本号,新的软件版本号,补丁名称,补丁号,升级包文件名,升级包存储路径和升级时间。
步骤s118,判断所述系统实体是否为最后一个待升级的系统实体,是则结束,否则执行步骤s106。
本示例的虚拟化系统升级方法能够对系统实体自动升级,避免人工升级费时费力。
示例2
如图4所示,本示例提出了一种虚拟化系统升级装置,包括下载源管理模块401,本地升级包管理模块402,系统升级模块403和升级历史模块404。
所述下载源管理模块401,用于扫描下载源,从下载源下载升级包及升级包描述文件到系统指定目录下;
所述升级包管理模块402,用于从移动存储设备上获取升级包及升级包描述文件,并存储至系统指定目录下;
系统升级模块403,用于获取系统升级实体列表,针对所述系统实体列表中的每一个系统实体,查询所述系统实体的升级历史记录获得所述系统实体的软件升级信息,根据所述软件升级信息在所述系统指定目录下搜索匹配的升级包,利用所述匹配的升级包对所述系统实体进行升级;
升级历史模块404,用于在系统升级实体升级成功后生成对应的升级历史记录;
其中,系统升级模块403,首先获取系统升级实体列表,在选中某个系统升级实体后,查询所述系统实体的升级历史记录获得所述系统实体的软件升级信息,根据所述软件升级信息在所述系统指定目录下搜索匹配的升级包,如果搜索到匹配的升级包,则返回对应的版本升级包或补丁包;将系统实体的工作模式配置为维护模式,控制所述系统实体使用所述匹配的升级包进行系统升级;升级结束后,控制所述系统实体退出维护模式;
其中,所述系统实体的升级历史记录包括以下信息的至少一种:软件名称,旧的软件版本号,新的软件版本号,补丁名称,补丁号,升级包文件名,升级包存储路径和升级时间。
其中,升级历史模块404,还用于根据关键字检索系统实体的升级历史记录。
本示例的虚拟化系统升级装置通过下载源管理模块,升级包管理模块,系统升级模块和升级历史模块的分工和配合,能够对系统实体自动升级,避免人工升级费时费力。
需要说明的是,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。