一种虚拟机的迁移方法及装置转让专利

申请号 : CN201910044144.X

文献号 : CN109783196B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 周帅

申请人 : 新华三信息安全技术有限公司

摘要 :

本申请实施例提供了一种虚拟机的迁移方法及装置,涉及通信技术领域。所述方法包括:接收虚拟机迁移命令,所述虚拟机迁移命令用于指示将目标虚拟机由第一安全引擎组迁移至第二安全引擎组;如果所述第二安全引擎组满足预设的迁移条件,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中,并建立所述配置文件与所述目标虚拟机之间的对应关系。采用本申请实施例提供的虚拟机的迁移方法可以提高虚拟机的迁移效率,并减少虚拟机迁移过程中因为操作失误导致的各种问题。

权利要求 :

1.一种虚拟机的迁移方法,其特征在于,所述方法包括:接收虚拟机迁移命令,所述虚拟机迁移命令用于指示将目标虚拟机由第一安全引擎组迁移至第二安全引擎组;

检测所述第二安全引擎组中是否存在安全引擎;

如果所述第二安全引擎组中存在安全引擎,则判断所述目标虚拟机的配置文件所占用的存储空间是否大于所述第二安全引擎组当前的剩余存储空间;

如果所述目标虚拟机的配置文件所占用的存储空间不大于所述第二安全引擎组当前的剩余存储空间,则判断所述第二安全引擎组中是否存在所述目标虚拟机的设备标识对应的配置文件;

如果所述第二安全引擎组中存在所述目标虚拟机的设备标识对应的配置文件,则显示配置文件的覆盖提示信息;

如果接收到用户输入的禁止覆盖指令,则建立所述第二安全引擎组中所述设备标识对应的配置文件与所述目标虚拟机之间的对应关系;

如果接收到用户输入的覆盖指令,则删除所述第二安全引擎组中所述设备标识对应的配置文件,将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中,并建立所述配置文件与所述目标虚拟机之间的对应关系。

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:如果所述第二安全引擎组中不存在安全引擎,则显示第一提示信息,所述第一提示信息用于提示所述第二安全引擎组中不存在安全引擎。

3.根据权利要求1所述的方法,其特征在于,所述方法还包括:如果所述目标虚拟机的配置文件所占用的存储空间大于所述第二安全引擎组当前的剩余存储空间,则显示第二提示信息,所述第二提示信息用于提示所述第二安全引擎组存储空间不足。

4.一种虚拟机的迁移装置,其特征在于,所述装置包括:接收模块,用于接收虚拟机迁移命令,所述虚拟机迁移命令用于指示将目标虚拟机由第一安全引擎组迁移至第二安全引擎组;

迁移模块,用于检测所述第二安全引擎组中是否存在安全引擎;如果所述第二安全引擎组中存在安全引擎,则判断所述目标虚拟机的配置文件所占用的存储空间是否大于所述第二安全引擎组当前的剩余存储空间;如果所述目标虚拟机的配置文件所占用的存储空间不大于所述第二安全引擎组当前的剩余存储空间,则判断所述第二安全引擎组中是否存在所述目标虚拟机的设备标识对应的配置文件;如果所述第二安全引擎组中存在所述目标虚拟机的设备标识对应的配置文件,则显示配置文件的覆盖提示信息;如果接收到用户输入的禁止覆盖指令,则建立所述第二安全引擎组中所述设备标识对应的配置文件与所述目标虚拟机之间的对应关系;如果接收到用户输入的覆盖指令,则删除所述第二安全引擎组中所述设备标识对应的配置文件,将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中,并建立所述配置文件与所述目标虚拟机之间的对应关系。

5.根据权利要求4所述的装置,其特征在于,所述装置还包括:第一显示模块,用于如果所述第二安全引擎组中不存在安全引擎,则显示第一提示信息,所述第一提示信息用于提示所述第二安全引擎组中不存在安全引擎。

6.根据权利要求4所述的装置,其特征在于,所述装置还包括:第二显示模块,用于如果所述目标虚拟机的配置文件所占用的存储空间大于所述第二安全引擎组当前的剩余存储空间,则显示第二提示信息,所述第二提示信息用于提示所述第二安全引擎组存储空间不足。

说明书 :

一种虚拟机的迁移方法及装置

技术领域

[0001] 本申请涉及通信技术领域,特别是涉及一种虚拟机的迁移方法及装置。

背景技术

[0002] 目前,安全设备通常采用多租户共享虚拟机方式为用户提供服务,在该方式中,一台安全设备可以虚拟化成多台逻辑设备(即虚拟机)。每个虚拟机拥有自己专属的软硬件资
源,独立运行。对于用户来说,每个虚拟机就是一台独立的设备,方便管理和维护;对于管理
者来说,一台物理设备虚拟为多台逻辑设备供不同的分支机构使用,可以保护现有投资,提
高组网灵活性。
[0003] 安全设备中设置有业务处理板卡(可称为安全引擎),技术人员可以将安全设备中的安全引擎划分为多个安全引擎组,例如,可以将一个业务处理板卡(即安全引擎)划分为
多个安全引擎组,或者,也可以将多个业务处理板卡(即安全引擎)划分为一个安全引擎组。
每个虚拟机创建后,技术人员需要为该虚拟机分配安全引擎组,并将该虚拟机的配置文件
存储到该虚拟机对应的安全引擎组中。然后,通过该安全引擎组运行该虚拟机的配置文件,
以实现对该虚拟机进行启动、配置、重启等操作,从而为该虚拟机提供实际运行的环境。其
中,一个安全引擎组中可以存储多个虚拟机的配置文件。
[0004] 当安全设备上存在多个安全引擎组时,如果需要将安全引擎组A中的虚拟机的迁移到安全引擎组B中,则技术人员需要在安全引擎组B中手动迁移虚拟机的配置文件,导致
虚拟机的迁移效率较低。例如,某安全设备中配置有安全引擎组A,安全引擎组A中入驻有30
个虚拟机,也即,安全引擎组A中存储有30个虚拟机的配置文件。基于业务需求,技术人员增
加了安全引擎组B,并需要将安全引擎组A中的15个虚拟机迁移到安全引擎组B中,此时,技
术人员需要将这15个虚拟机的配置文件逐一拷贝到安全引擎组B中,迁移效率较低。

发明内容

[0005] 有鉴于此,本申请提供了一种虚拟机的迁移方法及装置,以实现提高虚拟机的迁移效率的技术效果,并减少虚拟机迁移过程中因为操作失误导致的各种问题。具体技术方
案如下:
[0006] 第一方面,提供了一种虚拟机的迁移方法,所述方法包括:
[0007] 接收虚拟机迁移命令,所述虚拟机迁移命令用于指示将目标虚拟机由第一安全引擎组迁移至第二安全引擎组;
[0008] 如果所述第二安全引擎组满足预设的迁移条件,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中,并建立所述配置文件
与所述目标虚拟机之间的对应关系。
[0009] 可选的,所述如果所述第二安全引擎组满足预设的迁移条件,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中,包括:
[0010] 检测所述第二安全引擎组中是否存在安全引擎;
[0011] 如果所述第二安全引擎组中存在安全引擎,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中。
[0012] 可选的,所述方法还包括:
[0013] 如果所述第二安全引擎组中不存在安全引擎,则显示第一提示信息,所述第一提示信息用于提示所述第二安全引擎组中不存在安全引擎。
[0014] 可选的,所述如果所述第二安全引擎组中存在安全引擎,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中,包括:
[0015] 如果所述第二安全引擎组中存在安全引擎,则判断所述目标虚拟机的配置文件所占用的存储空间是否大于所述第二安全引擎组当前的剩余存储空间;
[0016] 如果所述目标虚拟机的配置文件所占用的存储空间不大于所述第二安全引擎组当前的剩余存储空间,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文
件复制到所述第二安全引擎组中。
[0017] 可选的,所述方法还包括:
[0018] 如果所述目标虚拟机的配置文件所占用的存储空间大于所述第二安全引擎组当前的剩余存储空间,则显示第二提示信息,所述第二提示信息用于提示所述第二安全引擎
组存储空间不足。
[0019] 可选的,所述将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中之前,还包括:
[0020] 判断所述第二安全引擎组中是否存在所述目标虚拟机的设备标识对应的配置文件;
[0021] 如果所述第二安全引擎组中存在所述目标虚拟机的设备标识对应的配置文件,则显示配置文件的覆盖提示信息;
[0022] 如果接收到用户输入的禁止覆盖指令,则建立所述第二安全引擎组中所述设备标识对应的配置文件与所述目标虚拟机之间的对应关系;
[0023] 如果接收到用户输入的覆盖指令,则删除所述第二安全引擎组中所述设备标识对应的配置文件,并执行所述将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置
文件复制到所述第二安全引擎组中的步骤。
[0024] 第二方面,提供了一种虚拟机的迁移装置,所述装置包括:
[0025] 接收模块,用于接收虚拟机迁移命令,所述虚拟机迁移命令用于指示将目标虚拟机由第一安全引擎组迁移至第二安全引擎组;
[0026] 迁移模块,用于如果所述第二安全引擎组满足预设的迁移条件,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中,并建
立所述配置文件与所述目标虚拟机之间的对应关系。
[0027] 可选的,所述迁移模块,具体用于:
[0028] 检测所述第二安全引擎组中是否存在安全引擎;
[0029] 如果所述第二安全引擎组中存在安全引擎,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中。
[0030] 可选的,所述装置还包括:
[0031] 第一显示模块,用于如果所述第二安全引擎组中不存在安全引擎,则显示第一提示信息,所述第一提示信息用于提示所述第二安全引擎组中不存在安全引擎。
[0032] 可选的,所述迁移模块,具体用于:
[0033] 如果所述第二安全引擎组中存在安全引擎,则判断所述目标虚拟机的配置文件所占用的存储空间是否大于所述第二安全引擎组当前的剩余存储空间;
[0034] 如果所述目标虚拟机的配置文件所占用的存储空间不大于所述第二安全引擎组当前的剩余存储空间,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文
件复制到所述第二安全引擎组中。
[0035] 可选的,所述装置还包括:
[0036] 第二显示模块,用于如果所述目标虚拟机的配置文件所占用的存储空间大于所述第二安全引擎组当前的剩余存储空间,则显示第二提示信息,所述第二提示信息用于提示
所述第二安全引擎组存储空间不足。
[0037] 可选的,所述装置还包括:
[0038] 判断模块,用于判断所述第二安全引擎组中是否存在所述目标虚拟机的设备标识对应的配置文件;
[0039] 如果所述第二安全引擎组中存在所述目标虚拟机的设备标识对应的配置文件,则触发第三显示模块显示配置文件的覆盖提示信息;
[0040] 如果接收到用户输入的禁止覆盖指令,则触发所述迁移模块建立所述第二安全引擎组中所述设备标识对应的配置文件与所述目标虚拟机之间的对应关系;
[0041] 如果接收到用户输入的覆盖指令,则触发所述迁移模块删除所述第二安全引擎组中所述设备标识对应的配置文件,并执行所述将预先存储在所述第一安全引擎组中的所述
目标虚拟机的配置文件复制到所述第二安全引擎组中的步骤。
[0042] 第三方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
[0043] 存储器,用于存放计算机程序;
[0044] 处理器,用于执行存储器上所存放的程序时,实现第一方面所述的方法步骤。
[0045] 第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的方法步骤。
[0046] 第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的方法步骤。
[0047] 因此,通过应用本申请提供的虚拟机的迁移方法及装置,网络设备可以接收虚拟机迁移命令,该虚拟机迁移命令用于指示将目标虚拟机由第一安全引擎组迁移至第二安全
引擎组。如果网络设备确定第二安全引擎组满足预设的迁移条件,则将预先存储在第一安
全引擎组中的目标虚拟机的配置文件复制到第二安全引擎组中,并建立配置文件与目标虚
拟机之间的对应关系。这样,可以实现虚拟机的配置文件的自动复制,无需技术人员在安全
引擎组中手动迁移虚拟机的配置文件,提高了虚拟机的迁移效率。另外,由于本方案可以实
现虚拟机的配置文件的自动复制,无需技术人员手动配置,因此,还能够减少虚拟机迁移过
程中因为操作失误导致的各种问题。
[0048] 当然,实施本申请的任一产品或方法并不一定需要同时达到以上所述的所有优点。

附图说明

[0049] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以
根据这些附图获得其他的附图。
[0050] 图1为本申请实施例提供的网络系统的示意图;
[0051] 图2为本申请实施例提供的虚拟机的迁移方法流程图;
[0052] 图3为本申请实施例提供的虚拟机的迁移方法流程图;
[0053] 图4为本申请实施例提供的一种虚拟机的迁移装置的结构示意图;
[0054] 图5为本申请实施例提供的一种虚拟机的迁移装置的结构示意图;
[0055] 图6为本申请实施例提供的一种虚拟机的迁移装置的结构示意图;
[0056] 图7为本申请实施例提供的一种虚拟机的迁移装置的结构示意图;
[0057] 图8为本申请实施例提供的网络设备的结构示意图。

具体实施方式

[0058] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于
本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本申请保护的范围。
[0059] 本申请实施例提供了一种虚拟机的迁移方法,该方法可以应用于网络设备,该网络设备可以为防火墙设备等安全设备,也可以为路由设备。该网络设备可以虚拟化成多台
逻辑设备(即虚拟机)。每个虚拟机拥有自己专属的软硬件资源,独立运行。这样,对于用户
来说,每个虚拟机就是一台独立的设备,方便管理和维护;对于管理者来说,可以将一台物
理设备虚拟成多台逻辑设备供不同的分支机构使用,可以保护现有投资,提高组网灵活性。
[0060] 如图1所示,为本申请实施例提供的一种网络系统的示意图,该网络系统中存在LAN 1、LAN 2和LAN 3这三个不同的局域网,它们通过同一台网络设备连接到外网。通过虚
拟化技术,在网络设备上创建三个虚拟机(即虚拟机1、虚拟机2、虚拟机3),每个虚拟机在逻
辑上相当于一台独立设备,具备独立的配置文件,分别负责LAN(中文:局域网)1、LAN 2、LAN 
3的安全接入。这样,LAN 1、LAN 2、LAN 3的网络管理员可以分别登录到自己的设备(虚拟
机)进行配置、保存、重启等操作,如同操作一台独立的设备而不会影响其它网络的使用。
[0061] 网络设备中设置有业务处理板卡(可称为安全引擎),技术人员可以将网络设备中的安全引擎划分为多个安全引擎组,例如,可以将一个业务处理板卡(即安全引擎)划分为
多个安全引擎组,或者,也可以将多个业务处理板卡(即安全引擎)划分为一个安全引擎组。
每个虚拟机创建后,技术人员需要为该虚拟机分配安全引擎组,并将该虚拟机的配置文件
存储到该虚拟机对应的安全引擎组中。然后,通过该安全引擎组运行该虚拟机的配置文件,
以实现对该虚拟机进行启动、重启等操作,并为该虚拟机提供实际运行的环境。在实际应用
中,一个安全引擎组中通常会存储多个虚拟机的配置文件。
[0062] 下面将结合具体实施方式,对本申请实施例提供的一种虚拟机的迁移方法进行详细的说明,如图2所示,具体步骤如下。
[0063] 步骤201,接收虚拟机迁移命令。
[0064] 其中,虚拟机迁移命令用于指示将目标虚拟机由第一安全引擎组迁移至第二安全引擎组。
[0065] 在本发明实施例中,网络设备中可以设置有虚拟机管理功能,技术人员可以通过该虚拟机管理功能对该网络设备中创建的虚拟机进行管理和配置。当技术人员需要将某安
全引擎组(可称为第一安全引擎组)中的目标虚拟机迁移到另一个安全引擎组(可称为第二
安全引擎组)时,技术人员可以通过虚拟机管理功能,修改目标虚拟机入驻的安全引擎组。
[0066] 在一种可能的实现方式中,网络设备可以显示虚拟机管理界面,该管理界面中可以包括各虚拟机的设备标识,以及各虚拟机入驻的安全引擎组的标识。技术人员可以在该
管理界面中,将目标虚拟机对应的第一安全引擎组的标识,修改为第二安全引擎组的标识。
相应的,该网络设备则会接收到接收虚拟机迁移命令,该虚拟机迁移命令包括目标虚拟机
的标识、第一安全引擎组的标识和第二安全引擎组的标识,其用于指示将目标虚拟机由第
一安全引擎组迁移至第二安全引擎组。
[0067] 在另一种可能的实现方式中,技术人员可以通过输入命令行的方式,直接在网络设备中输入虚拟机迁移命令,该虚拟机迁移命令用于指示将目标虚拟机由第一安全引擎组
迁移至第二安全引擎组,相应的,网络设备则会接收到技术人员输入的虚拟机迁移命令。本
申请实施例对虚拟机迁移命令的输入方式不做限定。
[0068] 步骤202,如果第二安全引擎组满足预设的迁移条件,则将预先存储在第一安全引擎组中的目标虚拟机的配置文件复制到第二安全引擎组中,并建立配置文件与目标虚拟机
之间的对应关系。
[0069] 在本发明实施例中,网络设备接收到虚拟机迁移命令后,可以对第二安全引擎组进行检测,以判断第二安全引擎组是否满足预设的迁移条件。如果第二安全引擎组满足预
设的迁移条件,则网络设备可以将预先存储在第一安全引擎组中的目标虚拟机的配置文件
复制到第二安全引擎组中,并建立配置文件与目标虚拟机之间的对应关系。
[0070] 例如,可以存储该配置文件的标识和目标虚拟机的标识的对应关系,或者,可以根据目标虚拟机的设备标识生成配置文件的文件名,比如目标虚拟机的设备标识为aa,则该
配置文件的文件名可以为aa1。如果第二安全引擎组不满足预设的迁移条件,则网络设备可
以终止目标虚拟机迁移,也即,不进行后续处理。
[0071] 例如,网络设备将虚拟机1的配置文件A从安全引擎组1复制到安全引擎组2后,网络设备可以在安全引擎组2中存储配置文件A和虚拟机1的对应关系。另外,网络设备还可以
删除第一安全引擎组中存储的目标虚拟机的配置文件,同时,删除第一安全引擎组中存储
的该配置文件与目标虚拟机之间的对应关系。
[0072] 本申请实施例中,网络设备可以接收虚拟机迁移命令,该虚拟机迁移命令用于指示将目标虚拟机由第一安全引擎组迁移至第二安全引擎组。如果网络设备确定第二安全引
擎组满足预设的迁移条件,则将预先存储在第一安全引擎组中的目标虚拟机的配置文件复
制到第二安全引擎组中,并建立配置文件与目标虚拟机之间的对应关系。这样,可以实现虚
拟机的配置文件的自动复制,无需技术人员在安全引擎组中手动迁移虚拟机的配置文件,
提高了虚拟机的迁移效率。另外,由于本方案可以实现虚拟机的配置文件的自动复制,无需
技术人员手动配置,因此,还能够减少虚拟机迁移过程中因为操作失误导致的各种问题。
[0073] 可选的,网络设备可以对第二安全引擎组进行检测,以确定是否迁移虚拟机。相应的,本发明前述实施例如果第二安全引擎组满足预设的迁移条件,则将预先存储在第一安
全引擎组中的目标虚拟机的配置文件复制到第二安全引擎组中的步骤中,具体的处理过程
可以为:检测第二安全引擎组中是否存在安全引擎;如果第二安全引擎组中存在安全引擎,
则将预先存储在第一安全引擎组中的目标虚拟机的配置文件复制到第二安全引擎组中。
[0074] 在本发明实施例中,技术人员可以在网络设备中配置安全引擎组,具体的,技术人员可以设置安全引擎组中包含的安全引擎,网络设备则可以存储安全引擎组和安全引擎的
对应关系。例如,网络设备中包括安全引擎A、安全引擎B和安全引擎C,技术人员可以配置安
全引擎组1包含安全引擎A、安全引擎组2包含安全引擎B和安全引擎C。
[0075] 网络设备收到虚拟机迁移命令后,可以根据上述安全引擎组和安全引擎的对应关系,查询第二安全引擎组中是否存在安全引擎,如果在该对应关系中查询到第二安全引擎
组对应的安全引擎,则可以判定第二安全引擎组中存在安全引擎,网络设备可以将预先存
储在第一安全引擎组中的目标虚拟机的配置文件复制到第二安全引擎组中。如果在该对应
关系中未查询到第二安全引擎组,或者,查询到第二安全引擎组对应的安全引擎为空,则可
以判定第二安全引擎组中不存在安全引擎,第二安全引擎组不满足预设的迁移条件。
[0076] 可选的,如果第二安全引擎组中不存在安全引擎,网络设备还可以显示第一提示信息,第一提示信息用于提示第二安全引擎组中不存在安全引擎。并且,网络设备可以终止
目标虚拟机迁移,也即,不进行后续处理。技术人员通过查看第一提示信息,可以获知目标
虚拟机迁移失败,并可以获知目标虚拟机迁移失败的原因为第二安全引擎组中不存在安全
引擎。
[0077] 可选的,在第二安全引擎组中存在安全引擎的情况下,网络设备还可以进一步判断第二安全引擎组的剩余存储空间是否充足,具体的处理过程可以如下:如果第二安全引
擎组中存在安全引擎,则判断目标虚拟机的配置文件所占用的存储空间是否大于第二安全
引擎组当前的剩余存储空间;如果目标虚拟机的配置文件所占用的存储空间不大于第二安
全引擎组当前的剩余存储空间,则将预先存储在第一安全引擎组中的目标虚拟机的配置文
件复制到第二安全引擎组中。
[0078] 在本发明实施例中,如果网络设备判定第二安全引擎组中存在安全引擎,则网络设备可以进一步获取第二安全引擎组当前的剩余存储空间,例如,网络设备可以获取第二
安全引擎组包含的业务处理板卡的剩余硬盘空间。
[0079] 然后,网络设备判断目标虚拟机的配置文件所占用的存储空间是否大于第二安全引擎组当前的剩余存储空间。如果目标虚拟机的配置文件所占用的存储空间不大于第二安
全引擎组当前的剩余存储空间,则说明第二安全引擎组的剩余存储空间能够存储目标虚拟
机的配置文件,网络设备可以将预先存储在第一安全引擎组中的目标虚拟机的配置文件复
制到第二安全引擎组中。如果目标虚拟机的配置文件所占用的存储空间大于第二安全引擎
组当前的剩余存储空间,则说明第二安全引擎组的剩余存储空间不够存储目标虚拟机的配
置文件,网络设备判定第二安全引擎组不满足预设的迁移条件。
[0080] 可选的,如果目标虚拟机的配置文件所占用的存储空间大于第二安全引擎组当前的剩余存储空间,则显示第二提示信息,第二提示信息用于提示第二安全引擎组存储空间
不足。并且,网络设备可以终止目标虚拟机迁移,也即,不进行后续处理。技术人员通过查看
第二提示信息,可以获知目标虚拟机迁移失败,并可以获知目标虚拟机迁移失败的原因为
第二安全引擎组的存储空间不足。
[0081] 另外,还可以采用其他方式判断第二安全引擎组是否满足预设的迁移条件,本申请实施例不做限定。例如,可以获取第二安全引擎组中的各业务板卡的运行状态,并判断第
二安全引擎组中的各业务板卡是否为激活(active)状态,如果各业务板卡均为激活状态,
则判定第二安全引擎组满足预设的迁移条件,如果某业务板卡的运行状态非激活状态,则
判定第二安全引擎组不满足预设的迁移条件。又如,技术人员可以设置某些安全引擎组为
不可迁入的安全引擎组,网络设备可以判断第二安全引擎组是否为预设的不可迁入的安全
引擎组,如果是,则判定第二安全引擎组不满足预设的迁移条件;如果不是,则判定第二安
全引擎组满足预设的迁移条件。
[0082] 可选的,网络设备将目标虚拟机的配置文件复制到第二安全引擎组中之前,还可以先判断第二安全引擎组中是否存在目标虚拟机的设备标识对应的配置文件。如果第二安
全引擎组中存在目标虚拟机的设备标识对应的配置文件,则显示配置文件的覆盖提示信
息;如果接收到用户输入的禁止覆盖指令,则建立第二安全引擎组中设备标识对应的配置
文件与目标虚拟机之间的对应关系;如果接收到用户输入的覆盖指令,则删除第二安全引
擎组中设备标识对应的配置文件,并将预先存储在第一安全引擎组中的目标虚拟机的配置
文件复制到第二安全引擎组中。
[0083] 在本发明实施例中,由于虚拟机的设备标识通常仅在其所属的网络设备中唯一,因此,不同的网络设备中,可能会存在设备标识相同的虚拟机。例如,网络设备1中包含3个
虚拟机,对应的设备标识分别为aa、bb和cc,网络设备2中包含2个虚拟机,对应的设备标识
分别为aa和bb。这样,将网络设备2中的业务处理板卡安装到网络设备1中后,如果该业务处
理板卡中的配置文件未被删除,则该业务处理板卡中存储的配置文件所对应的设备标识
中,可能会包含目标虚拟机的设备标识(可称为目标设备标识)。
[0084] 因此,网络设备判定第二安全引擎组满足预设的迁移条件后,可以进一步判断第二安全引擎组中是否存在目标设备标识对应的配置文件。如果第二安全引擎组中存在目标
设备标识对应的配置文件,则网络设备可以显示配置文件的覆盖提示信息,该覆盖提示信
息用于提示用户是否覆盖第二安全引擎组中当前已存储的目标设备标识对应的配置文件。
如果用户想要覆盖第二安全引擎组中当前已存储的目标设备标识对应的配置文件,则用户
可以选择覆盖选项,相应的,网络设备可以接收到用户输入的覆盖指令,然后,将目标虚拟
机的配置文件复制到第二安全引擎组中,并删除第二安全引擎组中目标设备标识对应的配
置文件。也即,网络设备将第二安全引擎组中目标设备标识对应的配置文件,替换为第一安
全引擎组中目标设备标识对应的配置文件。
[0085] 如果用户想要禁止覆盖第二安全引擎组中当前已存储的目标设备标识对应的配置文件,则用户可以选择禁止覆盖选项,相应的,网络设备可以接收到用户输入的禁止覆盖
指令,然后建立第二安全引擎组中目标设备标识对应的配置文件与目标虚拟机之间的对应
关系。该情况下,目标虚拟机能够成功迁移至第二安全引擎组中,但是目标虚拟机可能发生
配置变化。
[0086] 本申请实施例中,网络设备可以接收虚拟机迁移命令,该虚拟机迁移命令用于指示将目标虚拟机由第一安全引擎组迁移至第二安全引擎组。如果网络设备确定第二安全引
擎组满足预设的迁移条件,则将预先存储在第一安全引擎组中的目标虚拟机的配置文件复
制到第二安全引擎组中,并建立配置文件与目标虚拟机之间的对应关系。这样,可以实现虚
拟机的配置文件的自动复制,无需技术人员在安全引擎组中手动迁移虚拟机的配置文件,
提高了虚拟机的迁移效率。另外,由于本方案可以实现虚拟机的配置文件的自动复制,无需
技术人员手动配置,因此,还能够减少虚拟机迁移过程中因为操作失误导致的各种问题。
[0087] 本申请实施例还提供了一种虚拟机的迁移方法的示例,如图3所示,具体可以包括以下步骤。
[0088] 步骤301,接收虚拟机迁移命令。
[0089] 其中,虚拟机迁移命令用于指示将目标虚拟机由第一安全引擎组迁移至第二安全引擎组。
[0090] 步骤302,检测第二安全引擎组中是否存在安全引擎。
[0091] 如果第二安全引擎组中不存在安全引擎,则执行步骤303。
[0092] 如果第二安全引擎组中存在安全引擎,则执行步骤304。
[0093] 步骤303,显示第一提示信息,并停止虚拟机迁移。
[0094] 其中,第一提示信息用于提示第二安全引擎组中不存在安全引擎
[0095] 步骤304,判断目标虚拟机的配置文件所占用的存储空间是否大于第二安全引擎组当前的剩余存储空间。
[0096] 如果目标虚拟机的配置文件所占用的存储空间不大于第二安全引擎组当前的剩余存储空间,则执行步骤305。如果目标虚拟机的配置文件所占用的存储空间大于第二安全
引擎组当前的剩余存储空间,则执行步骤306。
[0097] 步骤305,判断第二安全引擎组中是否存在目标虚拟机的设备标识对应的配置文件。
[0098] 如果第二安全引擎组中存在目标虚拟机的设备标识对应的配置文件,则执行步骤307。
[0099] 如果第二安全引擎组中不存在目标虚拟机的设备标识对应的配置文件,则执行步骤310。
[0100] 步骤306。显示第二提示信息,并停止虚拟机迁移。
[0101] 其中,第二提示信息用于提示第二安全引擎组存储空间不足
[0102] 步骤307,显示配置文件的覆盖提示信息。
[0103] 如果接收到用户输入的禁止覆盖指令,则执行步骤308。
[0104] 如果接收到用户输入的覆盖指令,则执行步骤309。
[0105] 步骤308,建立第二安全引擎组中该设备标识对应的配置文件与目标虚拟机之间的对应关系。
[0106] 步骤309,删除第二安全引擎组中设备标识对应的配置文件,并将预先存储在第一安全引擎组中的目标虚拟机的配置文件复制到第二安全引擎组中,建立配置文件与目标虚
拟机之间的对应关系。
[0107] 步骤310,将预先存储在第一安全引擎组中的目标虚拟机的配置文件复制到第二安全引擎组中,建立配置文件与目标虚拟机之间的对应关系。
[0108] 基于相同的技术构思,如图4所示,本申请实施例还提供了一种虚拟机的迁移装置,所述装置包括:
[0109] 接收模块410,用于接收虚拟机迁移命令,所述虚拟机迁移命令用于指示将目标虚拟机由第一安全引擎组迁移至第二安全引擎组;
[0110] 迁移模块420,用于如果所述第二安全引擎组满足预设的迁移条件,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中,并
建立所述配置文件与所述目标虚拟机之间的对应关系。
[0111] 可选的,所述迁移模块420,具体用于:
[0112] 检测所述第二安全引擎组中是否存在安全引擎;
[0113] 如果所述第二安全引擎组中存在安全引擎,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中。
[0114] 可选的,如图5所示,所述装置还包括:
[0115] 第一显示模块430,用于如果所述第二安全引擎组中不存在安全引擎,则显示第一提示信息,所述第一提示信息用于提示所述第二安全引擎组中不存在安全引擎。
[0116] 可选的,所述迁移模块420,具体用于:
[0117] 如果所述第二安全引擎组中存在安全引擎,则判断所述目标虚拟机的配置文件所占用的存储空间是否大于所述第二安全引擎组当前的剩余存储空间;
[0118] 如果所述目标虚拟机的配置文件所占用的存储空间不大于所述第二安全引擎组当前的剩余存储空间,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文
件复制到所述第二安全引擎组中。
[0119] 可选的,如图6所示,所述装置还包括:
[0120] 第二显示模块440,用于如果所述目标虚拟机的配置文件所占用的存储空间大于所述第二安全引擎组当前的剩余存储空间,则显示第二提示信息,所述第二提示信息用于
提示所述第二安全引擎组存储空间不足。
[0121] 可选的,如图7所示,所述装置还包括:
[0122] 判断模块450,用于判断所述第二安全引擎组中是否存在所述目标虚拟机的设备标识对应的配置文件;
[0123] 如果所述第二安全引擎组中存在所述目标虚拟机的设备标识对应的配置文件,则触发第三显示模块460显示配置文件的覆盖提示信息;
[0124] 如果接收到用户输入的禁止覆盖指令,则触发所述迁移模块420建立所述第二安全引擎组中所述设备标识对应的配置文件与所述目标虚拟机之间的对应关系;
[0125] 如果接收到用户输入的覆盖指令,则触发所述迁移模块420删除所述第二安全引擎组中所述设备标识对应的配置文件,并执行所述将预先存储在所述第一安全引擎组中的
所述目标虚拟机的配置文件复制到所述第二安全引擎组中的步骤。
[0126] 本申请实施例中,网络设备可以接收虚拟机迁移命令,该虚拟机迁移命令用于指示将目标虚拟机由第一安全引擎组迁移至第二安全引擎组。如果网络设备确定第二安全引
擎组满足预设的迁移条件,则将预先存储在第一安全引擎组中的目标虚拟机的配置文件复
制到第二安全引擎组中,并建立配置文件与目标虚拟机之间的对应关系。这样,可以实现虚
拟机的配置文件的自动复制,无需技术人员在安全引擎组中手动迁移虚拟机的配置文件,
提高了虚拟机的迁移效率。另外,由于本方案可以实现虚拟机的配置文件的自动复制,无需
技术人员手动配置,因此,还能够减少虚拟机迁移过程中因为操作失误导致的各种问题。
[0127] 本申请实施例还提供了一种电子设备,如图8所示,包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完
成相互间的通信,
[0128] 存储器803,用于存放计算机程序;
[0129] 处理器801,用于执行存储器803上所存放的程序时,实现上述虚拟机的迁移方法,所述方法包括:
[0130] 接收虚拟机迁移命令,所述虚拟机迁移命令用于指示将目标虚拟机由第一安全引擎组迁移至第二安全引擎组;
[0131] 如果所述第二安全引擎组满足预设的迁移条件,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中,并建立所述配置文件
与所述目标虚拟机之间的对应关系。
[0132] 可选的,所述如果所述第二安全引擎组满足预设的迁移条件,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中,包括:
[0133] 检测所述第二安全引擎组中是否存在安全引擎;
[0134] 如果所述第二安全引擎组中存在安全引擎,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中。
[0135] 可选的,所述方法还包括:
[0136] 如果所述第二安全引擎组中不存在安全引擎,则显示第一提示信息,所述第一提示信息用于提示所述第二安全引擎组中不存在安全引擎。
[0137] 可选的,所述如果所述第二安全引擎组中存在安全引擎,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中,包括:
[0138] 如果所述第二安全引擎组中存在安全引擎,则判断所述目标虚拟机的配置文件所占用的存储空间是否大于所述第二安全引擎组当前的剩余存储空间;
[0139] 如果所述目标虚拟机的配置文件所占用的存储空间不大于所述第二安全引擎组当前的剩余存储空间,则将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文
件复制到所述第二安全引擎组中。
[0140] 可选的,所述方法还包括:
[0141] 如果所述目标虚拟机的配置文件所占用的存储空间大于所述第二安全引擎组当前的剩余存储空间,则显示第二提示信息,所述第二提示信息用于提示所述第二安全引擎
组存储空间不足。
[0142] 可选的,所述将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置文件复制到所述第二安全引擎组中之前,还包括:
[0143] 判断所述第二安全引擎组中是否存在所述目标虚拟机的设备标识对应的配置文件;
[0144] 如果所述第二安全引擎组中存在所述目标虚拟机的设备标识对应的配置文件,则显示配置文件的覆盖提示信息;
[0145] 如果接收到用户输入的禁止覆盖指令,则建立所述第二安全引擎组中所述设备标识对应的配置文件与所述目标虚拟机之间的对应关系;
[0146] 如果接收到用户输入的覆盖指令,则删除所述第二安全引擎组中所述设备标识对应的配置文件,并执行所述将预先存储在所述第一安全引擎组中的所述目标虚拟机的配置
文件复制到所述第二安全引擎组中的步骤。
[0147] 上述电子设备提到的通信总线可以是外设部件互连标准(英文:Peripheral Component Interconnect,简称:PCI)总线或扩展工业标准结构(英文:Extended Industry 
Standard Architecture,简称:EISA)总线等。该通信总线可以分为地址总线、数据总线、控
制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总
线。
[0148] 通信接口用于上述电子设备与其他设备之间的通信。
[0149] 存储器可以包括随机存取存储器(英文:Random Access Memory,简称:RAM),也可以包括非易失性存储器(英文:Non‑Volatile Memory,简称:NVM),例如至少一个磁盘存储
器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0150] 上述的处理器可以是通用处理器,包括中央处理器(英文:Central Processing Unit,简称:CPU)、网络处理器(英文:Network Processor,简称:NP)等;还可以是数字信号
处理器(英文:Digital Signal Processing,简称:DSP)、专用集成电路(英文:Application 
Specific Integrated Circuit,简称:ASIC)、现场可编程门阵列(英文:Field‑
Programmable Gate Array,简称:FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑
器件、分立硬件组件。
[0151] 在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一虚拟机的
迁移方法的步骤。
[0152] 在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一虚拟机的迁移方法。
[0153] 在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序
产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或
部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计
算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质
中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机
指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字
用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或
数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者
是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以
是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘
Solid State Disk(SSD))等。
[0154] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存
在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖
非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要
素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备
所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在
包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0155] 本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实
施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例
的部分说明即可。
[0156] 以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围
内。