软件更新方法和系统的制作方法

文档序号:9667165阅读:461来源:国知局
软件更新方法和系统的制作方法
【技术领域】
[0001]本发明涉及计算机技术领域,特别是涉及一种软件更新方法和系统。
【背景技术】
[0002]对于很多企业及事业单位来说,服务器需要不断地向外提供服务,才能保证业务不会因服务器中断而受到影响。但在许多时候,服务器上的软件版本需要进行升级、修复,或是需要对服务器软件作调试时,都会造成长时间的服务器的服务中断。而当服务器的服务中断的时间越长,造成的损失就越大。

【发明内容】

[0003]基于此,有必要针对软件更新时造成长时间的服务器的服务中断问题,提供一种软件更新方法,能大大缩短服务器的服务中断时间。
[0004]此外,还有必要针对软件更新时造成长时间的服务器的服务中断问题,提供一种软件更新系统,能大大缩短服务器的服务中断时间。
[0005]一种软件更新方法,包括以下步骤:
[0006]接收软件更新指令;
[0007]根据软件更新指令断开在第一副本及第二副本上运行的虚拟机的服务实例与第二副本的连接;
[0008]启动虚拟机的更新实例并在第二副本运行;
[0009]通过更新实例对第二副本进行更新;
[0010]退出更新实例;
[0011]在第二副本上重新启动虚拟机的服务实例并运行。
[0012]在其中一个实施例中,第二副本包括系统盘第二副本及数据盘第二副本,根据软件更新指令断开在第一副本及第二副本上运行的虚拟机的服务实例与第二副本的连接的步骤,具体包括:
[0013]判断更新的软件是否需要数据进行调试;
[0014]若是,则断开虚拟机的服务实例与系统盘第二副本及数据盘第二副本的连接,并使虚拟机的更新实例获取系统盘第二副本及数据盘第二副本的访问权限;
[0015]若否,则断开虚拟机的服务实例与系统盘第二副本的连接,并使虚拟机的更新实例获取系统盘第二副本的访问权限。
[0016]在其中一个实施例中,当存在N个系统盘副本及N个数据盘副本时,其中,N为大于2的整数,在所述判断更新的软件是否需要数据进行调试的步骤之后,还包括以下步骤:
[0017]当更新的软件需要数据进行调试时,则断开虚拟机的服务实例与N-Μ个系统盘副本及L个数据盘副本的连接,并使虚拟机的更新实例获取N-Μ个系统盘副本及L个数据盘副本的访问权限;
[0018]当更新的软件不需要数据进行调试时,则断开虚拟机的服务实例与N-Μ个系统盘副本的连接,并使虚拟机的更新实例获取N-Μ个系统盘副本的访问权限;
[0019]其中,Μ为大于或等于1且小于Ν的整数,L为大于或等于1且小于Ν的整数。
[0020]在其中一个实施例中,在判断更新的软件是否需要数据进行调试的步骤之后,还包括以下步骤:
[0021]当更新的软件需要数据进行调试时,则断开虚拟机的服务实例与Ν-l个系统盘副本及一个数据盘副本的连接,并使虚拟机的更新实例获取Ν-l个系统盘副本及一个数据盘副本的访问权限;
[0022]当更新的软件不需要数据进行调试时,则断开虚拟机的服务实例与Ν-l个系统盘副本的连接,并使虚拟机的更新实例获取Ν-l个系统盘副本的访问权限。
[0023]在其中一个实施例中,在退出所述更新实例的步骤之后,上述方法还包括以下步骤:
[0024]根据预设的切换时间关闭在第一副本运行的虚拟机的服务实例;
[0025]在第二副本上重新启动虚拟机的服务实例并运行;
[0026]同步第一副本及第二副本的数据;
[0027]同步第一副本及第二副本的数据的步骤,具体包括:
[0028]将系统盘第二副本的数据同步至系统盘第一副本;
[0029]判断更新实例是否访问过数据盘第二副本,若访问过,则将数据盘第一副本的数据同步至数据盘第二副本。
[0030]在其中一个实施例中,在启动虚拟机的更新实例并在第二副本运行的步骤之前,还包括:
[0031]获取输入的IP地址,或自动选择与虚拟机的服务实例不同的IP地址;
[0032]将虚拟机的更新实例配置为该IP地址。
[0033]—种软件更新系统,包括:
[0034]接收模块,用于接收软件更新指令;
[0035]断开模块,用于根据软件更新指令断开在第一副本及第二副本上运行的虚拟机的服务实例与第二副本的连接;
[0036]启动模块,用于启动虚拟机的更新实例并在第二副本运行;
[0037]更新模块,用于通过更新实例对第二副本进行更新;
[0038]退出模块,用于退出更新实例;
[0039]启动模块还用于在第二副本上重新启动虚拟机的服务实例并运行。
[0040]在其中一个实施例中,第二副本包括系统盘第二副本及数据盘第二副本,上述系统还包括:
[0041]判断模块,用于判断更新的软件是否需要数据进行调试;
[0042]断开模块还用于当更新的软件需要数据进行调试时,则断开虚拟机的服务实例与系统盘第二副本及数据盘第二副本的连接,并使虚拟机的更新实例获取系统盘第二副本及数据盘第二副本的访问权限;
[0043]断开模块还用于当更新的软件不需要数据进行调试时,则断开虚拟机的服务实例与系统盘第二副本的连接,并使虚拟机的更新实例获取系统盘第二副本的访问权限。
[0044]在其中一个实施例中,当存在N个系统盘副本及N个数据盘副本时,其中,N为大于2的整数,
[0045]断开模块还用于当更新的软件需要数据进行调试时,则断开虚拟机的服务实例与N-Μ个系统盘副本及L个数据盘副本的连接,并使虚拟机的更新实例获取N-Μ个系统盘副本及L个数据盘副本的访问权限;
[0046]断开模块还用于当更新的软件不需要数据进行调试时,则断开虚拟机的服务实例与N-Μ个系统盘副本的连接,并使虚拟机的更新实例获取N-Μ个系统盘副本的访问权限;
[0047]其中,Μ为大于或等于1且小于Ν的整数,L为大于或等于1且小于Ν的整数。
[0048]在其中一个实施例中,退出模块还用于根据预设的切换时间关闭在第一副本运行的虚拟机的服务实例;
[0049]上述系统还包括同步模块,用于同步第一副本及第二副本的数据;
[0050]同步模块包括:
[0051]系统盘同步单元,用于将系统盘第二副本的数据同步至系统盘第一副本;
[0052]数据盘同步单元,用于判断更新实例是否访问过数据盘第二副本,若访问过,则将数据盘第一副本的数据同步至数据盘第二副本。
[0053]在其中一个实施例中,上述系统还包括:
[0054]获取模块,用于获取输入的IP地址,或自动选择与虚拟机的服务实例不同的IP地址;
[0055]配置模块,用于将虚拟机的更新实例配置为该IP地址。
[0056]上述软件更新方法和系统,使虚拟机的服务实例继续在第一副本运行,并在第二副本启动虚拟机的更新实例并进行更新,更新完成后在第二副本重新启动虚拟机的服务实例,能够在不中断服务器原有服务的情况下,完成软件的更新,大大缩短了服务器的服务中断时间,能有效减少用户因服务中断带来的损失。
【附图说明】
[0057]图1为一个实施例中软件更新方法的流程示意图;
[0058]图2为一个实施例中软件更新方法的图形示意图;
[0059]图3为一个实施例中判断更新的软件是否需要数据进行调试的流程示意图;
[0060]图4(a)为一个实施例中更新的软件需要数据进行调试时的图形示意图;
[0061]图4(b)为一个实施例中更新的软件不需要数据进行调试时的图形示意图;
[0062]图5(a)为另一个实施例中当存在三个副本时更新的软件需要数据进行调试时的图形示意图;
[0063]图5(b)为另一个实施例中当存在三个副本时更新的软件不需要数据进行调试时的图形不意图;
[0064]图6为一个实施例中完成软件切换的流程示意图;
[0065]图7为一个实施例中软件更新系统的结构示意图;
[0066]图8为另一个实施例中软件更新系统的结构示意图;
[0067]图9为又一个实施例中软件更新系统的结构示意图。
【具体实施方式】
[0068]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0069]如
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1