物理到虚拟的迁移方法、物理服务器、虚拟服务器及系统与流程

文档序号:13421494阅读:443来源:国知局
物理到虚拟的迁移方法、物理服务器、虚拟服务器及系统与流程

本发明涉及通信技术领域,尤其涉及一种物理到虚拟的迁移方法、物理服务器、虚拟服务器及系统。



背景技术:

在目前基于kvm(kernel-basedvirtualmachine,基于内核的虚拟机)或者xen(开放源代码虚拟机监视器)等虚拟化云平台场景中,越来越多的用户对p2v(physicaltovirtual,物理到虚拟)迁移提出了更高的要求。

目前主流厂商的处理方式是,p2v系统首先在物理服务器上安装代理,该代理用于产生物理服务器磁盘快照,并计算物理服务器的磁盘大小、cpu主频和内存大小等配置,然后在虚拟化平台创建相同类型的虚拟服务器,最后将物理服务器的磁盘快照拷贝到虚拟服务器中并启动虚拟服务器。该过程要求网络带宽足够大并且网络足够稳定,然而,对于磁盘容量过大的物理服务器,采用现有的p2v迁移方式导致迁移可靠性差、无法保证实时性数据同步。



技术实现要素:

根据本发明实施例提供的物理到虚拟的迁移方法、物理服务器、虚拟服务器及系统,主要解决现有p2v迁移方式可靠性差、无法保证实时性数据同步的技术问题。

为解决上述技术问题,本发明实施例提供一种物理到虚拟的在线迁移方法,包括:

将磁盘文件按照预设规则拆分成至少两个差分文件;

以至少一个差分文件为迁移单位将所述至少两个差分文件迁移至虚拟机。

本发明实施例提供另一种物理到虚拟的在线迁移方法,包括:

以至少一个分盘的差分文件为迁移单位接收物理服务器迁移的差分文件;

将接收的所有差分文件按照拆分前的顺序进行重组,得到磁盘文件。

本发明实施例提供一种物理服务器,包括:

文件拆分模块,用于将磁盘文件按照预设规则拆分成至少两个差分文件;

文件迁移模块,用于以至少一个差分文件为迁移单位将所述至少两个差分文件迁移至虚拟服务器。

本发明实施例提供一种虚拟服务器,所述虚拟服务器上部署有虚拟机,所述虚拟机包括:

文件接收模块,用于以至少一个分盘的差分文件为迁移单位接收物理服务器迁移的差分文件;

文件重组模块,用于将接收的所有差分文件按照拆分前的顺序进行重组,得到磁盘文件。

本发明实施例还提供一种物理到虚拟的迁移系统,包括如上所述的物理服务器和虚拟服务器。

本发明实施例还提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行前述的任一项的无源光网络模式切换方法。

本发明的有益效果是:

根据本发明实施例提供的物理到虚拟的在线迁移方法、物理服务器、虚拟服务器、系统以及计算机存储介质,通过将磁盘文件按照预设规则拆分成至少两个文件,并以至少一个差分文件为迁移单位将所述至少两个差分文件迁移至服务器。使得数据迁移的可靠性和迁移效率进一步提升,同时,也保证数据能够实时迁移至虚拟服务器,进而保证整个迁移过程中数据的一致性。

附图说明

图1为本发明实施例一提供的物理到虚拟的迁移方法流程图;

图2为本发明实施例一提供的物理服务器设置流程图;

图3为本发明实施例一提供的物理服务器代理安装流程图;

图4为本发明实施例一提供的磁盘差分处理流程图;

图5为本发明实施例一提供的差分文件迁移流程图;

图6为本发明实施例二提供的物理到虚拟的迁移方法流程图;

图7为本发明实施例二提供的迁移完成后消息通知流程图;

图8为本发明实施例三提供的物理服务器示意图;

图9为本发明实施例四提供的虚拟服务器示意图;

图10为本发明实施例四提供的物理到虚拟的迁移系统示意图。

具体实施方式

下面通过具体实施方式结合附图对本发明实施例作进一步详细说明。

实施例一

本实施例以物理服务器侧的操作流程对本发明实施例进行说明,请参见图1,图1为本发明实施例提供的物理到虚拟的迁移方法,其具体迁移步骤如下:

s11,将磁盘文件按照预设规则拆分成至少两个差分文件。

具体地,首先将物理服务器的磁盘按照预设规则划分成至少两个分盘,相应地,磁盘文件也被拆分成至少两个差分文件,即每个分盘中存储的数据即为一个差分文件。其中,预设规则可以是以差分的形式对磁盘进行差分处理,将磁盘划分成至少两个分盘。在该差分文件中可设置唯一标识,以保证虚拟机在对差分文件进行重组时能够根据唯一标识正确重组出磁盘文件。当然,也可采用本领域熟知的其他拆分方式。

s12,以至少一个差分文件为迁移单位将所述至少两个差分文件迁移至虚拟机。

具体地,将磁盘文件拆分成至少两个差分文件后,在将差分文件迁移至虚拟机时,可以以一个差分文件为迁移单位进行迁移,也即逐个迁移差分文件至虚拟机,也可以两个或两个以上的差分文件为迁移单位进行迁移,也即每次向虚拟机进行数据迁移时,可以一次迁移至少两个差分文件。

进一步地,在s11步骤中,将磁盘文件按照预设规则拆分成至少两个差分文件时,可按照磁盘差分的方式对磁盘进行划分,也即对磁盘进行差分处理,为物理服务器划分出至少两个差分磁盘(即分盘),相应的,将磁盘中存储的磁盘文件也差分成至少两个差分文件,每个差分磁盘中存有一个差分文件。

在对磁盘进行差分处理前,首先对物理服务器进行设置,请参见图2,图为本实施例提供的物理服务器设置流程图,具体设置过程如下:

s21,虚拟化平台的管理系统判断物理服务器是否进行设置,若未进行设置,执行s22步骤,若已进行设置,则结束。

具体地,物理服务器的信息包括ip地址、网关、用户名、密码等,虚拟化平台部署于虚拟服务器,主要用于创建并启动虚拟机,在该虚拟化平台上可以部署至少一个虚拟机。此外,虚拟化平台可以是kvm、xen等虚拟化云平台。用户将物理服务器的信息提供给虚拟化平台的管理系统,系统对物理服务器进行管理,向物理服务器确认是否已进行设置。需注意,前述物理服务器即为待迁移物理服务器。

s22,虚拟化平台的管理系统确定物理服务器的ip地址格式是否正确,若ip地址格式正确,则执行s23步骤,若ip地址格式不正确,则结束。

具体地,用户输入物理服务器的ip地址,然后虚拟化平台的管理系统对该ip地址格式进行核对,若该ip地址格式正确,则执行下一步骤。

s23,虚拟化平台的管理系统确定网关地址格式是否正确,若网关地址格式正确,则执行s24步骤,若网关地址格式不正确,则结束。

具体地,用户输入物理服务器的网关地址,然后虚拟化平台的管理系统对该网关地址格式进行核对,若该网关地址格式正确,则执行下一步骤。

s24,虚拟化平台的管理系统请求物理服务器输入用户名和密码。

具体地,用户根据虚拟化平台的管理系统发送的请求,在当前界面输入用户名和密码。

s25,虚拟化平台的管理系统将物理服务器的信息自动同步至数据库中。

物理服务器设置完成后,需要在物理服务器上安装代理,然后才能对磁盘进行差分处理,请参见图2,图3为本实施例提供的物理服务器代理安装流程图,其具体安装过程如下:

s31,虚拟化平台的管理系统获取物理服务器的信息。

s32,虚拟化平台的管理系统判断该物理服务器是否安装代理,若物理服务器未安装代理,则执行s33步骤,若已安装代理,则结束。

具体地,安装代理的目的是,通过代理可以计算物理服务器的磁盘大小、cpu主频、内存大小等配置。

s33,虚拟化平台的管理系统判断用户输入的用户名是否正确,若正确,则执行s34步骤,反之,则结束。

具体地,用户输入物理服务器的用户名,虚拟化平台的管理系统将存储的用户名与用户输入的用户名进行匹配,若匹配成功,则认为用户名正确。

s34,虚拟化平台的管理系统判断用户输入的用户密码是否正确,若正确,则执行s35步骤,反之,则结束。

具体地,用户输入物理服务器的用户密码,虚拟化平台的管理系统将存储的与用户密码与用户输入的密码进行匹配,若匹配成功,则认为用户密码正确。

s35,虚拟化平台的管理系统对物理服务器进行代理安装。

s36,判断代理是否安装成功,若失败,则执行s35步骤,若成功,则结束。

物理服务器上的代理程序安装成功后,才能对磁盘进行差分处理,请参见图4,图4为本实施例提供的磁盘差分处理流程图,其具体差分处理过程如下:

s41,代理检测物理服务器的磁盘大小。

具体地,当然,也会检测物理服务器的内存大小、cpu主频等。

s42,代理判断物理服务器的磁盘空间是否大于虚拟化平台的管理系统为其配置或可以配置的磁盘空间。

s43,代理根据物理服务器配置对磁盘进行差分处理。

具体地,以差分的处理方式将磁盘划分成至少两个差分磁盘,相应地,磁盘文件也被划分成至少两个差分文件,每个差分磁盘中存有一个差分文件。

s44,代理判断是否对磁盘差分成功,若差分成功,则执行s45步骤,若差分失败,则结束。

s45,保存原有磁盘,物理服务器将后续写操作在差分磁盘上进行。

进一步地,在s12步骤中,对物理服务器的磁盘差分成功后,将差分磁盘中的差分文件迁移至虚拟机,在对差分文件迁移时,可以将拆分的所有差分文件逐个迁移至虚拟机,也可根据实际需要以至少两个差分文件为迁移单位对差分文件进行迁移,直到将所有差分文件均迁移至虚拟机,即将物理服务器的磁盘文件完整的迁移至虚拟机。

在将差分文件迁移至虚拟机时,请参见图5,图5为本实施例提供的差分文件迁移流程图,其具体迁移过程如下:

s51,虚拟化平台的管理系统判断当前网络带宽是否低于设定阈值,若低于设定阈值,则执行s52步骤,反之,则结束。

具体地,虚拟化平台的管理系统对网络带宽进行监控,可通过定时器定时对网络带宽进行监控,也可实时对网络带宽进行监控,当网络带宽低于设定阈值时,可以适当减少迁移的差分文件数量,当网络带宽不低于设定阈值时,可适当增加迁移的差分文件数量。

s52,将拆分的一个差分文件迁移至虚拟机。

具体地,可以理解为以一个差分文件为迁移单位将拆分的所有差分文件全部迁移至虚拟机。此外,也可对差分文件进行排序,根据差分文件的大小按照有小到大的顺序以至少一个差分文件为迁移单位将拆分的所有差分文件迁移至虚拟机;也即根据差分文件的大小对差分文件按照由大到小或由小到大的顺序将差分文件进行迁移,在迁移时其迁移单位可以按需设置。

s53,判断该差分文件是否迁移成功,若迁移成功,则执行s51步骤,若迁移失败,则结束。

具体地,若该差分文件迁移成功,则继续迁移后续差分文件,在迁移后续差分文件时,重新判断当前网络带宽是否低于设定阈值,若低于设定阈值,则依然只迁移一个差分文件,若不低于设定阈值,则选择迁移至少两个差分文件,直到迁移完所有差分文件。当然,在网络带宽不低于设定阈值的情况下,可优先迁移较大的差分文件,以提升迁移效率,以尽可能保证数据实时性同步。

通过本实施例提供的物理到虚拟的迁移方法,将磁盘文件进行拆分,以较小的差分文件进行迁移,从而保证速率的提升,由于较小差分文件在迁移的过程中,其所花费时间较小,迁移速度较快,能够进一步地保证数据实时性同步。同时,通过对网络带宽的监测,能够根据网络带宽状况合理的选择差分文件迁移的数量,进一步地保证迁移数据一致性。

实施例二

本实施例以虚拟服务器侧的操作流程对本发明实施例进行说明,该虚拟服务器上部署有虚拟化平台,虚拟化平台上部署有至少一个虚拟机,本实施例以一个虚拟机为例进行解释。请参见图6,图6为本发明实施例提供的另一物理到虚拟的迁移方法,其具体迁移步骤如下:

s61,以至少一个分盘的差分文件为迁移单位接收物理服务器迁移的差分文件。

具体地,在接收物理服务器迁移的差分文件时,可以逐个逐个的接收,也可一次接收至少两个差分文件,具体接收差分文件的数量与物理服务器一次传输的差分文件数量有关。此外,前述分盘是磁盘按照预设方式进行拆分得到的,例如,将磁盘进行差分处理,即可得到差分磁盘,该差分磁盘即为分盘;相应地,在对磁盘进行拆分时,磁盘文件也被拆分成至少两个差分文件,每个差分磁盘中存有一个差分文件。

s62,将接收的所有差分文件按照拆分前的顺序进行重组,得到磁盘文件。

具体地,虚拟服务器接收到所有的差分文件后,需要将差分文件恢复成拆分前的磁盘文件,在对差分文件进行重组时,由于各差分文件中均设有唯一标识,可根据唯一标识对差分文件进行重组,当然,也可采用本领域熟知的其他重组方式对拆分文件进行重组,重组成功后,得到磁盘文件。

进一步地,在s61步骤之后,虚拟机判断是否接收到物理服务器迁移的所有差分文件,即需要判断差分文件是否全部迁移完成,若差分文件全部迁移完成,则以短信、邮件等通信方式通知用户和/或虚拟化平台管理人员。虚拟机可定时对差分文件的接收情况进行检测,也可实时对差分文件的接收情况进行检测,以保证尽早的确定是否将差分文件全部迁移完毕。

当物理服务器中的磁盘文件全部成功迁移至虚拟机时,虚拟化平台管理系统向管理人员和/或用户发出通知。具体地,物理服务器将差分文件全部迁移至虚拟机,虚拟机将接收的差分文件按照拆分前的顺序进行重组,得到磁盘文件;然后判断该磁盘文件是否正确,若磁盘文件正确,则认为物理服务器中的磁盘文件成功迁移至虚拟机,虚拟机开始运行,此时,将物理服务器停机;最后,虚拟化平台管理系统以短信、邮件或其他方式通知用户和/或虚拟化平台管理人员物理服务器的磁盘文件成功迁移至虚拟机。

对于磁盘文件迁移成功后的消息通知流程,请参见图7,图7为本实施例提供的迁移完成后消息通知流程图,其具体迁移过程如下:

s71,虚拟化平台管理系统定时检测磁盘文件是否迁移成功,若迁移成功,则执行s72步骤,若迁移失败,则结束。

s72,虚拟机开始运行,物理服务器停止运行。

s73,判断虚拟化平台管理系统是否配置通知功能,若配置通知功能,则执行s74步骤,若未配置通知功能,则结束。

具体地,该虚拟化平台管理系统中设置有添加手机号、邮箱等选项,用户和/或管理人员将自己的手机号或邮箱添加进去。

s74,按照通知方式通知管理人员和/或用户。

具体地,该通知方式包括短信、电话或邮箱。

通过本实施例提供的物理到虚拟的迁移方法,在将物理服务器的磁盘文件成功迁移到虚拟机后,通知用户和/或管理人员告知用户磁盘文件已迁移成功。同时,通过接收差分文件,完成物理服务器到虚拟机的迁移操作,保证数据的一致性。

实施例三

本实施例是与实施例一对应的装置实施例,提供了一种物理服务器,在实施例一的基础上,本实施例将不再对物理服务器中的部分内容做详细说明。具体请参见图8,图8为本实施例提供的物理服务器示意图,该物理服务器包括:

文件拆分模块81,用于将磁盘文件按照预设规则拆分成至少两个差分文件;

文件迁移模块82,用于以至少一个差分文件为迁移单位将所述至少两个差分文件迁移至虚拟机。

其中,文件拆分模块81用于将磁盘文件进行差分处理,得到至少两个差分文件。

进一步地,该物理服务器还包括:

带宽监控模块83,用于在以至少一个差分文件为迁移单位将所述至少两个差分文件迁移至虚拟机之前,对网络带宽进行监控;

文件迁移模块82还用于当网络带宽低于设定阈值时,将所述至少两个差分文件逐个迁移至虚拟机,或者对差分文件进行排序,按照由小到大的顺序以至少一个差分文件为迁移单位将所述至少两个差分文件迁移至虚拟机。

前述文件拆分模块81、文件迁移模块82以及带宽监控模块83所实现的功能均可通过服务器上的控制器来实现。

具体地,首先对物理服务器进行设置,在设置时,需要将物理服务器的信息提供给虚拟化平台管理系统,然后系统根据物理服务器信息对物理服务器进行管理,其中,物理服务器的信息包括ip地址、网关、用户名、密码等,物理服务器的具体设置过程请参见图2;设置完毕后,在物理服务器上安装代理,具体安装过程请参见图3;代理安装完毕后,对物理服务器的配置进行检测,根据检测结果对磁盘进行差分。

在进行差分时,首先将物理服务器的磁盘按照预设规则划分成至少两个分盘,相应地,磁盘文件也被拆分成至少两个差分文件,即每个分盘中存储的数据即为一个差分文件。其中,预设规则可以是以差分的形式对磁盘进行差分处理,将磁盘划分成至少两个分盘。在该差分文件中可设置唯一标识,以保证虚拟机在对差分文件进行重组时能够根据唯一标识正确重组出磁盘文件。当然,也可采用本领域熟知的其他拆分方式。

具体地,将磁盘文件按照预设规则拆分成至少两个差分文件时,可按照磁盘差分的方式对磁盘进行划分,也即对磁盘进行差分处理,为物理服务器划分出至少两个差分磁盘(即分盘),相应的,将磁盘中存储的磁盘文件也差分成至少两个差分文件,每个差分磁盘中存有一个差分文件。

进一步地,将磁盘文件拆分成至少两个差分文件后,在将差分文件迁移至虚拟机时,可以以一个差分文件为迁移单位进行迁移,也即逐个迁移差分文件至虚拟机,也可以两个或两个以上的差分文件为迁移单位进行迁移,也即每次向虚拟机进行数据迁移时,可以一次迁移至少两个差分文件。

实施例四

本实施例是与实施例二对应的装置实施例,提供了一种虚拟服务器,在实施例二的基础上,本实施例将不再对虚拟服务器中的部分内容做详细说明。该虚拟服务器上部署有虚拟化平台,虚拟化平台上部署有虚拟机。具体请参见图9,图9为本实施例提供的虚拟服务器示意图,该虚拟服务器包括至少一个虚拟机,所述虚拟机包括:

文件接收模块91,用于以至少一个分盘的差分文件为迁移单位接收物理服务器迁移的差分文件;

文件重组模块92,用于将接收的所有差分文件按照拆分前的顺序进行重组,得到磁盘文件。

进一步地,文件接收模块91用于逐个接收物理服务器迁移的差分文件。

前述文件接收模块91以及文件重组模块92所实现的功能均可通过服务器上的控制器来实现。

具体的,在接收物理服务器迁移的差分文件时,可以逐个逐个的接收,也可一次接收至少两个差分文件,具体接收差分文件的数量与物理服务器一次传输的差分文件数量有关。此外,前述分盘是磁盘按照预设方式进行拆分得到的,例如,将磁盘进行差分处理,即可得到差分磁盘,该差分磁盘即为分盘;相应地,在对磁盘进行拆分时,磁盘文件也被拆分成至少两个差分文件,每个差分磁盘中存有一个差分文件。

虚拟服务器接收到所有的差分文件后,需要将差分文件恢复成拆分前的磁盘文件,在对差分文件进行重组时,由于各差分文件中均设有唯一标识,可根据唯一标识对差分文件进行重组,当然,也可采用本领域熟知的其他重组方式对拆分文件进行重组,重组成功后,得到磁盘文件。

进一步地,虚拟机判断是否接收到物理服务器迁移的所有差分文件,即需要判断差分文件是否全部迁移完成,若差分文件全部迁移完成,则以短信、邮件等通信方式通知用户和/或虚拟化平台管理人员。虚拟机可定时对差分文件的接收情况进行检测,也可实时对差分文件的接收情况进行检测,以保证尽早的确定是否将差分文件全部迁移完毕。

更进一步地,当物理服务器中的磁盘文件全部成功迁移至虚拟机时,虚拟化平台管理系统向管理人员和/或用户发出通知。具体地,物理服务器将差分文件全部迁移至虚拟机,虚拟机将接收的差分文件按照拆分前的顺序进行重组,得到磁盘文件;然后判断该磁盘文件是否正确,若磁盘文件正确,则认为物理服务器中的磁盘文件成功迁移至虚拟机,虚拟机开始运行,此时,将物理服务器停机;最后,虚拟化平台管理系统以短信、邮件或其他方式通知用户和/或虚拟化平台管理人员物理服务器的磁盘文件成功迁移至虚拟机。

此外,请参见图10,图10为本实施例提供的物理到虚拟的迁移系统,该系统包括前述物理服务器101和虚拟服务器102。

通过本实施例提供的物理到虚拟的迁移系统,通过将磁盘文件进行差分处理,得到多个小的差分文件,将差分文件发送至虚拟机,由于各差分文件较小,使得迁移效率较高,同时也保证迁移数据的一致性。

显然,本领域的技术人员应该明白,上述本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储介质(rom/ram、磁碟、光盘)中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。所以,本发明不限制于任何特定的硬件和软件结合。

以上内容是结合具体的实施方式对本发明实施例所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1