CN117193948A - 虚拟机迁移方法及装置 - Google Patents
虚拟机迁移方法及装置 Download PDFInfo
- Publication number
- CN117193948A CN117193948A CN202311471478.8A CN202311471478A CN117193948A CN 117193948 A CN117193948 A CN 117193948A CN 202311471478 A CN202311471478 A CN 202311471478A CN 117193948 A CN117193948 A CN 117193948A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- migrated
- target
- data
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000005012 migration Effects 0.000 title claims abstract description 114
- 238000013508 migration Methods 0.000 title claims abstract description 114
- 238000000034 method Methods 0.000 title claims abstract description 68
- 230000008569 process Effects 0.000 claims description 16
- 238000012790 confirmation Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 6
- 238000007689 inspection Methods 0.000 claims description 4
- 238000007726 management method Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
本申请公开了一种虚拟机迁移方法及装置。其中,该方法包括:接收迁移指令,并从迁移指令中提取目标服务器地址;将目标报文中的滑动窗口值调整为零后,将调整后的目标报文发送给客户端,调整后的目标报文用于指示客户端停止向待迁移虚拟机发送数据;将待迁移虚拟机迁移至目标服务器地址对应的目标服务器。本申请解决了相关技术中虚拟机迁移效率低的技术问题。
Description
技术领域
本申请涉及服务器虚拟化技术领域,具体而言,涉及一种虚拟机迁移方法及装置。
背景技术
当虚拟机在物理机上运行时,物理机可能存在资源分配不均,造成负载过重或过轻的情况。另外,物理机存在硬件更换、软件升级、组网调整、故障处理等操作,如何在不中断业务的情况下完成这些虚拟机的迁移工作变的十分重要。虚拟机热迁移技术可以在业务连续前提下,完成上述操作,提升用户体验和工作效率。虚拟机热迁移通常是将整个虚拟机的运行状态完整保存下来,同时可以快速恢复到原有的甚至不同的硬件平台上。虚拟机恢复后,仍然可以平滑运行,用户感知不到任何差异,进行热迁移之前要确保源端和目的端主机之间的网络是互通的,并且源端和目的获得资源权限是对等的,即两端同时能够访问到相同的存储资源和网络资源,在执行虚拟机热迁移前应当对虚拟机进行健康检查,并确保目的端主机有足够的处理器、内存和存储资源。但相关技术中在进行虚拟机热迁移的过程中,为了保证数据的一致性需要多次迭代数据迁移,当一直有数据时,迁移动作会迟迟完成不了,同时,当客户端与虚拟机建立了长连接,一直有数据传输,当虚拟机迁移成功时,网络切换需要几秒到几十秒不等的时间,此期间会造成用户数据丢包,导致数据包重传,占用无效的带宽,甚至需要用户重新建立连接才能使业务恢复正常。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种虚拟机迁移方法及装置,以至少解决相关技术中虚拟机迁移效率低的技术问题。
根据本申请实施例的一个方面,提供了一种虚拟机迁移方法,包括:接收迁移指令,并从所述迁移指令中提取目标服务器地址;将目标报文中的滑动窗口值调整为零后,将调整后的目标报文发送给客户端,所述调整后的目标报文用于指示所述客户端停止向待迁移虚拟机发送数据;将所述待迁移虚拟机迁移至所述目标服务器地址对应的目标服务器。
可选地,将目标报文中的滑动窗口值调整为零,包括:通过第一挂载点将接收到的初始报文中的非目标协议的报文丢弃,得到所述目标报文;通过第二挂载点对所述目标报文进行检验,在所述目标报文通过检验的情况下,通过所述待迁移虚拟机将所述目标报文中的滑动窗口值调整为零。
可选地,通过第二挂载点对所述目标报文进行检验,包括:判断所述目标报文是否属于确认报文;在所述目标报文属于确认报文的情况下,根据所述目标报文的五元组信息从预设连接跟踪表中查找连接记录对应的五元组信息;在所述预设连接跟踪表中存在目标连接记录的五元组信息与所述目标报文的五元组信息相同且所述目标连接的连接状态为已建立连接的情况下,确认所述目标报文通过检验,所述预设连接跟踪表中存储有所述待迁移虚拟机的所有连接记录。
可选地,将所述待迁移虚拟机按照所述目标服务器地址,迁移至所述目标服务器,包括:将所述待迁移虚拟机中的第一数据迁移到所述目标服务器,其中,所述第一数据包括:在将所述目标报文中的滑动窗口值调整为零之前,所述待迁移虚拟机中的全量数据;将所述待迁移虚拟机中的第二数据迁移到所述目标服务器,其中,所述第二数据包括:在将所述目标报文中的滑动窗口值调整为零的过程中,所述待迁移虚拟机中的增量数据。
可选地,将所述待迁移虚拟机中的第二数据迁移到所述目标服务器,包括:从预设数组列表中获取待迁移虚拟机的网络地址;按照所述待迁移虚拟机的网络地址从所述待迁移虚拟机中获取所述第二数据;将所述第二数据迁移到所述目标服务器。
可选地,在将所述待迁移虚拟机中的第一数据迁移到所述目标服务器之前,所述方法还包括:接收所述目标服务器的网络地址和所述目标服务器中建立的目标虚拟机的网络地址;遍历所述待迁移虚拟机中的数据,以获取所述第一数据。
可选地,在将所述待迁移虚拟机按照所述目标服务器地址迁移至所述目标服务器之后,所述方法还包括:向云管理平台发送指示信息,所述指示信息用于指示待迁移虚拟机已完成迁移;接收控制指令,关闭所述待迁移虚拟机,其中,所述控制指令在所述云管理平台对应的服务器集群完成目标虚拟机的网络地址更新后,由所述云管理平台发送。
根据本申请实施例的另一方面,还提供了另一种虚拟机迁移方法,包括:接收迁移指令,并从所述迁移指令中提取目标服务器地址;向客户端发送提示信息,所述提示信息用于指示所述客户端停止向待迁移虚拟机发送数据;将所述待迁移虚拟机按照所述目标服务器地址迁移至所述目标服务器。
根据本申请实施例的另一方面,还提供了一种虚拟机迁移装置,包括:接收模块,用于接收迁移指令,并从所述迁移指令中提取目标服务器地址;调整模块,用于将目标报文中的滑动窗口值调整为零后,将调整后的目标报文发送给客户端,所述调整后的目标报文用于指示所述客户端停止向待迁移虚拟机发送数据;迁移模块,用于将所述待迁移虚拟机迁移至所述目标服务器地址对应的目标服务器。
根据本申请实施例的又一方面,还提供了一种计算机设备,包括:存储器,用于存储程序指令;处理器,与存储器连接,用于执行以下功能的程序指令:接收迁移指令,并从所述迁移指令中提取目标服务器地址;将目标报文中的滑动窗口值调整为零后,将调整后的目标报文发送给客户端,所述调整后的目标报文用于指示所述客户端停止向待迁移虚拟机发送数据;将所述待迁移虚拟机迁移至所述目标服务器地址对应的目标服务器。
根据本申请实施例的再一方面,还提供了一种非易失性存储介质,该非易失性存储介质包括存储的计算机程序,其中,该非易失性存储介质所在设备通过运行计算机程序执行上述虚拟机迁移方法。
在本申请实施例中,采用接收迁移指令,并从所述迁移指令中提取目标服务器地址;将目标报文中的滑动窗口值调整为零后,将调整后的目标报文发送给客户端,所述调整后的目标报文用于指示所述客户端停止向待迁移虚拟机发送数据;将所述待迁移虚拟机迁移至所述目标服务器地址对应的目标服务器的方式,通过将目标报文中的滑动窗口值调整为零,达到了在迁移过程中使客户端停止向待迁移虚拟机发送数据的目的,从而实现了提高虚拟机迁移效率的技术效果,进而解决了相关技术中虚拟机迁移效率低的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种用于实现虚拟机迁移方法的计算机终端的硬件结构框图;
图2是本申请的一种虚拟机迁移方法的流程图;
图3是本申请的另一种虚拟机迁移方法的流程示意图;
图4是根据本申请实施例的虚拟机迁移装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例所提供的镜像文件下发方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。图1示出了一种用于实现虚拟机迁移方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器(处理器可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。除此以外,还可以包括:显示器、键盘、光标控制设备、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、BUS总线。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
应当注意到的是上述一个或多个处理器和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的虚拟机迁移方法对应的程序指令/数据存储装置,处理器通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的虚拟机迁移方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输模块106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输模块106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输模块106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端10的用户界面进行交互。
此处需要说明的是,在一些可选实施例中,上述图1所示的计算机设备可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图1仅为特定具体实例的一个实例,并且旨在示出可存在于上述计算机设备中的部件的类型。
在上述运行环境下,本申请实施例提供了一种虚拟机迁移方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图2是根据本申请实施例的一种虚拟机迁移方法的流程图,如图2所示,该方法包括如下步骤:
步骤S202,接收迁移指令,并从所述迁移指令中提取目标服务器地址;
在上述步骤S202中,迁移指令可以由云管理平台向源服务器下发。
步骤S204,将目标报文中的滑动窗口值调整为零后,将调整后的目标报文发送给客户端,所述调整后的目标报文用于指示所述客户端停止向待迁移虚拟机发送数据;
需要进行说明的是,滑动窗口(Sliding window),是一种流量控制技术,TCP协议中采用滑动窗口来进行传输控制,滑动窗口值的大小用于表征数据接收方用于接收数据的缓存空间的大小。数据发送方可以通过滑动窗口值的大小来确定向数据接收方法发送数据包的容量大小,可以理解的是,当滑动窗口值为0时,数据发送方停止向数据接收方法发送数据。
步骤S206,将所述待迁移虚拟机迁移至所述目标服务器地址对应的目标服务器。
需要进一步说明的是,相关技术中在虚拟机热迁移的过程中,第一步需要选择一台具有足够磁盘和内存资源的第一物理机,并在第一物理机上创建待迁移虚拟机对应的初始系统盘和初始数据盘,同时选定接收迁移数据的端口,可以理解的是,系统盘和数据盘在第一物理机和第二物理机(待迁移虚拟机部署的源物理机)上的路径必须完全一致,不同的是,第一物理机上初始创建的系统盘和数据盘是空盘,上面没有真实数据。
第二步,通过虚拟化管理软件在第一物理机上创建一个和待迁移虚拟机同样配置的第一虚拟机,系统盘和数据盘使用初始系统盘和初始数据盘。
第三步,虚拟化管理软件给第二物理机发出一个迁移指令,并指定第一物理机为目标、需要迁移块设备、最大停机时间、迁移带宽限制等,然后迁移数据就会通过指定链路传输给第一物理机上的虚拟机,传输路径使用物理机对应的物理服务器的网络链路。
第四步,虚拟机的数据就正式开始迁移,由于待迁移虚拟机处于运行状态,里面时刻发生内存更新、磁盘流量操作和设备状态变更,而第一物理上的虚拟机是暂停状态,只通过一个线程接收待迁移虚拟机发过来的数据,迁移过程中会出现增量数据,需要多次迁移迭代,数据迁移完成后,待迁移虚拟机关闭,恢复网络,迁移后的虚拟机的网络地址与待迁移虚拟机的网络地址是一致的,但是为了迁移增量数据,网络恢复的过程可能经过几秒或者几十秒,甚至需要用户重新建立连接才能使业务恢复正常。
通过上述步骤S202至步骤S206中的虚拟机迁移方法,采用接收迁移指令,并从所述迁移指令中提取目标服务器地址;将目标报文中的滑动窗口值调整为零后,将调整后的目标报文发送给客户端,所述调整后的目标报文用于指示所述客户端停止向待迁移虚拟机发送数据;将所述待迁移虚拟机迁移至所述目标服务器地址对应的目标服务器的方式,通过将目标报文中的滑动窗口值调整为零,达到了在迁移过程中使客户端停止向待迁移虚拟机发送数据的目的,从而实现了提高虚拟机迁移效率的技术效果,进而解决了相关技术中虚拟机迁移效率低的技术问题。以下详细说明。
在上述虚拟机迁移方法中的步骤S204中,将目标报文中的滑动窗口值调整为零,具体包括如下步骤:通过第一挂载点将接收到的初始报文中的非目标协议的报文丢弃,得到所述目标报文;通过第二挂载点对所述目标报文进行检验,在所述目标报文通过检验的情况下,通过所述待迁移虚拟机将所述目标报文中的滑动窗口值调整为零。
需要进行说明的是,第一挂载点和第二挂载点是预置在系统内核中的挂载点,第一挂载点可以是tc ingress hook挂载点(Linux系统内核中的一个挂载点),第二挂载点可以是tc egress hook挂载点(Linux系统内核中的一个挂载点)。
需要进行说明的是,目标协议可以是TCP(Transmission Control Protocol,一种用于互联网通信的协议)协议。
通过第二挂载点对所述目标报文进行检验的过程如下:判断所述目标报文是否属于确认报文;在所述目标报文属于确认报文的情况下,根据所述目标报文的五元组信息从预设连接跟踪表中查找连接记录对应的五元组信息;在所述预设连接跟踪表中存在目标连接记录的五元组信息与所述目标报文的五元组信息相同且所述目标连接的连接状态为已建立连接的情况下,确认所述目标报文通过检验,所述预设连接跟踪表中存储有所述待迁移虚拟机的所有连接记录。
一种可选的方式中,在待迁移虚拟机接收到客户端发送的数据包后,会发送确认报文到客户端。
需要进行说明的是,在linux系统中,如果编译内核时开启了连接跟踪选项,那么Linux系统就会为它收到的每个数据包维持一个连接状态,记录这条数据连接的状态到预设连接跟踪表中。
具体的虚拟机迁移过程如下:将所述待迁移虚拟机中的第一数据迁移到所述目标服务器,其中,所述第一数据包括:在将所述目标报文中的滑动窗口值调整为零之前,所述待迁移虚拟机中的全量数据;将所述待迁移虚拟机中的第二数据迁移到所述目标服务器,其中,所述第二数据包括:在将所述目标报文中的滑动窗口值调整为零的过程中,所述待迁移虚拟机中的增量数据。
其中,将所述待迁移虚拟机中的第二数据迁移到所述目标服务器的过程包括:从预设数组列表中获取待迁移虚拟机的网络地址;按照所述待迁移虚拟机的网络地址从所述待迁移虚拟机中获取所述第二数据;将所述第二数据迁移到所述目标服务器。
在将所述待迁移虚拟机中的第一数据迁移到所述目标服务器之前,接收所述目标服务器的网络地址和所述目标服务器中建立的目标虚拟机的网络地址;遍历所述待迁移虚拟机中的数据,以获取所述第一数据。
在将所述待迁移虚拟机按照所述目标服务器地址迁移至所述目标服务器之后,向云管理平台发送指示信息,所述指示信息用于指示待迁移虚拟机已完成迁移;接收控制指令,关闭所述待迁移虚拟机,其中,所述控制指令在所述云管理平台对应的服务器集群完成目标虚拟机的网络地址更新后,由所述云管理平台发送。
图3示出了另一种虚拟机迁移方法,如图3所示,该方法包括:
步骤S302,接收迁移指令,并从迁移指令中提取目标服务器地址;
步骤S304,向客户端发送提示信息,提示信息用于指示客户端停止向待迁移虚拟机发送数据;
步骤S306,将待迁移虚拟机按照目标服务器地址迁移至目标服务器。
本申请提供的虚拟机迁移方法,通过向客户端发送提示信息,所述提示信息用于指示所述客户端停止向待迁移虚拟机发送数据,达到了在迁移过程中使客户端停止向待迁移虚拟机发送数据的目的,从而实现了提高虚拟机迁移效率的技术效果,进而解决了相关技术中虚拟机迁移效率低的技术问题。
图4是根据本申请实施例的一种虚拟机迁移装置结构图,如图4所示,该装置包括:
接收模块40,用于接收迁移指令,并从所述迁移指令中提取目标服务器地址;
调整模块42,用于将目标报文中的滑动窗口值调整为零后,将调整后的目标报文发送给客户端,所述调整后的目标报文用于指示所述客户端停止向待迁移虚拟机发送数据;
迁移模块44,用于将所述待迁移虚拟机迁移至所述目标服务器地址对应的目标服务器。
在上述虚拟机迁移装置的调整模块42中,包括:调整子模块,用于通过第一挂载点将接收到的初始报文中的非目标协议的报文丢弃,得到所述目标报文;通过第二挂载点对所述目标报文进行检验,在所述目标报文通过检验的情况下,通过所述待迁移虚拟机将所述目标报文中的滑动窗口值调整为零;
调整子模块中包括:检验单元,用于判断所述目标报文是否属于确认报文 ;在所述目标报文属于确认报文的情况下,根据所述目标报文的五元组信息从预设连接跟踪表中查找连接记录对应的五元组信息;在所述预设连接跟踪表中存在目标连接记录的五元组信息与所述目标报文的五元组信息相同且所述目标连接的连接状态为已建立连接的情况下,确认所述目标报文通过检验,所述预设连接跟踪表中存储有所述待迁移虚拟机的所有连接记录;
迁移模块44中包括:迁移子模块,用于将所述待迁移虚拟机中的第一数据迁移到所述目标服务器,其中,所述第一数据包括:在将所述目标报文中的滑动窗口值调整为零之前,所述待迁移虚拟机中的全量数据;将所述待迁移虚拟机中的第二数据迁移到所述目标服务器,其中,所述第二数据包括:在将所述目标报文中的滑动窗口值调整为零的过程中,所述待迁移虚拟机中的增量数据;
在上述迁移子模块中,还包括:迁移单元,从预设数组列表中获取待迁移虚拟机的网络地址;按照所述待迁移虚拟机的网络地址从所述待迁移虚拟机中获取所述第二数据;将所述第二数据迁移到所述目标服务器;
在上述迁移子模块中,还包括:获取单元,用于在将所述待迁移虚拟机中的第一数据迁移到所述目标服务器之前,接收所述目标服务器的网络地址和所述目标服务器中建立的目标虚拟机的网络地址;遍历所述待迁移虚拟机中的数据,以获取所述第一数据。
迁移模块44中还包括:收发子模块,用于在将所述待迁移虚拟机按照所述目标服务器地址迁移至所述目标服务器之后,向云管理平台发送指示信息,所述指示信息用于指示待迁移虚拟机已完成迁移;接收控制指令,关闭所述待迁移虚拟机,其中,所述控制指令在所述云管理平台对应的服务器集群完成目标虚拟机的网络地址更新后,由所述云管理平台发送。
需要说明的是,图4所示的虚拟机迁移装置用于执行图2所示的一种虚拟机迁移方法,因此虚拟机迁移方法中的相关解释说明也适用于该种虚拟机迁移装置,此处不再赘述。
本申请实施例还提供了一种计算机设备,包括:存储器,用于存储程序指令;处理器,与存储器连接,用于执行以下功能的程序指令:接收迁移指令,并从所述迁移指令中提取目标服务器地址;将目标报文中的滑动窗口值调整为零后,将调整后的目标报文发送给客户端,所述调整后的目标报文用于指示所述客户端停止向待迁移虚拟机发送数据;将所述待迁移虚拟机迁移至所述目标服务器地址对应的目标服务器。
需要说明的是,上述计算机设备用于执行图2所示的虚拟机迁移方法,因此上述虚拟机迁移方法中的相关解释说明也适用于该计算机设备,此处不再赘述。
本申请实施例还提供了一种非易失性存储介质,该非易失性存储介质包括存储的计算机程序,其中,该非易失性存储介质所在设备通过运行计算机程序执行以下虚拟机迁移方法:接收迁移指令,并从所述迁移指令中提取目标服务器地址;将目标报文中的滑动窗口值调整为零后,将调整后的目标报文发送给客户端,所述调整后的目标报文用于指示所述客户端停止向待迁移虚拟机发送数据;将所述待迁移虚拟机迁移至所述目标服务器地址对应的目标服务器。
需要说明的是,上述非易失性存储介质用于执行图2所示的虚拟机迁移方法,因此上述虚拟机迁移方法中的相关解释说明也适用于该非易失性存储介质,此处不再赘述。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (11)
1.一种虚拟机迁移方法,其特征在于,包括:
接收迁移指令,并从所述迁移指令中提取目标服务器地址;
将目标报文中的滑动窗口值调整为零后,将调整后的目标报文发送给客户端,所述调整后的目标报文用于指示所述客户端停止向待迁移虚拟机发送数据;
将所述待迁移虚拟机迁移至所述目标服务器地址对应的目标服务器。
2.根据权利要求1所述的方法,其特征在于,将目标报文中的滑动窗口值调整为零,包括:
通过第一挂载点将接收到的初始报文中的非目标协议的报文丢弃,得到所述目标报文;
通过第二挂载点对所述目标报文进行检验,在所述目标报文通过检验的情况下,通过所述待迁移虚拟机将所述目标报文中的滑动窗口值调整为零。
3.根据权利要求2所述的方法,其特征在于,通过第二挂载点对所述目标报文进行检验,包括:
判断所述目标报文是否属于确认报文;
在所述目标报文属于确认报文的情况下,根据所述目标报文的五元组信息从预设连接跟踪表中查找连接记录对应的五元组信息;
在所述预设连接跟踪表中存在目标连接记录的五元组信息与所述目标报文的五元组信息相同且所述目标连接的连接状态为已建立连接的情况下,确认所述目标报文通过检验,所述预设连接跟踪表中存储有所述待迁移虚拟机的所有连接记录。
4.根据权利要求1所述的方法,其特征在于,将所述待迁移虚拟机按照所述目标服务器地址,迁移至所述目标服务器,包括:
将所述待迁移虚拟机中的第一数据迁移到所述目标服务器,其中,所述第一数据包括:在将所述目标报文中的滑动窗口值调整为零之前,所述待迁移虚拟机中的全量数据;
将所述待迁移虚拟机中的第二数据迁移到所述目标服务器,其中,所述第二数据包括:在将所述目标报文中的滑动窗口值调整为零的过程中,所述待迁移虚拟机中的增量数据。
5.根据权利要求4所述的方法,其特征在于,将所述待迁移虚拟机中的第二数据迁移到所述目标服务器,包括:
从预设数组列表中获取待迁移虚拟机的网络地址;
按照所述待迁移虚拟机的网络地址从所述待迁移虚拟机中获取所述第二数据;
将所述第二数据迁移到所述目标服务器。
6.根据权利要求4所述的方法,其特征在于,在将所述待迁移虚拟机中的第一数据迁移到所述目标服务器之前,所述方法还包括:
接收所述目标服务器的网络地址和所述目标服务器中建立的目标虚拟机的网络地址;
遍历所述待迁移虚拟机中的数据,以获取所述第一数据。
7.根据权利要求1所述的方法,其特征在于,在将所述待迁移虚拟机按照所述目标服务器地址迁移至所述目标服务器之后,所述方法还包括:
向云管理平台发送指示信息,所述指示信息用于指示待迁移虚拟机已完成迁移;
接收控制指令,关闭所述待迁移虚拟机,其中,所述控制指令在所述云管理平台对应的服务器集群完成目标虚拟机的网络地址更新后,由所述云管理平台发送。
8.一种虚拟机迁移方法,其特征在于,包括:
接收迁移指令,并从所述迁移指令中提取目标服务器地址;
向客户端发送提示信息,所述提示信息用于指示所述客户端停止向待迁移虚拟机发送数据;
将所述待迁移虚拟机按照所述目标服务器地址迁移至所述目标服务器。
9.一种虚拟机迁移装置,其特征在于,包括:
接收模块,用于接收迁移指令,并从所述迁移指令中提取目标服务器地址;
调整模块,用于将目标报文中的滑动窗口值调整为零后,将调整后的目标报文发送给客户端,所述调整后的目标报文用于指示所述客户端停止向待迁移虚拟机发送数据;
迁移模块,用于将所述待迁移虚拟机迁移至所述目标服务器地址对应的目标服务器。
10.一种计算机设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,与所述存储器连接,用于执行以下功能的程序指令:接收迁移指令,并从所述迁移指令中提取目标服务器地址;将目标报文中的滑动窗口值调整为零后,将调整后的目标报文发送给客户端,所述调整后的目标报文用于指示所述客户端停止向待迁移虚拟机发送数据;将所述待迁移虚拟机迁移至所述目标服务器地址对应的目标服务器。
11.一种非易失性存储介质,其特征在于,所述非易失性存储介质包括存储的计算机程序,其中,所述非易失性存储介质所在设备通过运行所述计算机程序执行权利要求1至7中任意一项所述的虚拟机迁移方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311471478.8A CN117193948A (zh) | 2023-11-07 | 2023-11-07 | 虚拟机迁移方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311471478.8A CN117193948A (zh) | 2023-11-07 | 2023-11-07 | 虚拟机迁移方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117193948A true CN117193948A (zh) | 2023-12-08 |
Family
ID=88996492
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311471478.8A Pending CN117193948A (zh) | 2023-11-07 | 2023-11-07 | 虚拟机迁移方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117193948A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102917055A (zh) * | 2012-10-18 | 2013-02-06 | 华为技术有限公司 | 虚拟机在线迁移的方法、装置和终端设备 |
US20150039764A1 (en) * | 2013-07-31 | 2015-02-05 | Anton Beloglazov | System, Method and Computer Program Product for Energy-Efficient and Service Level Agreement (SLA)-Based Management of Data Centers for Cloud Computing |
CN105183537A (zh) * | 2015-09-23 | 2015-12-23 | 北京交通大学 | 基于动态阈值窗口的虚拟机迁移处理方法 |
CN115033337A (zh) * | 2022-04-24 | 2022-09-09 | 新华三技术有限公司 | 虚拟机内存迁移方法、装置、设备及存储介质 |
-
2023
- 2023-11-07 CN CN202311471478.8A patent/CN117193948A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102917055A (zh) * | 2012-10-18 | 2013-02-06 | 华为技术有限公司 | 虚拟机在线迁移的方法、装置和终端设备 |
US20150039764A1 (en) * | 2013-07-31 | 2015-02-05 | Anton Beloglazov | System, Method and Computer Program Product for Energy-Efficient and Service Level Agreement (SLA)-Based Management of Data Centers for Cloud Computing |
CN105183537A (zh) * | 2015-09-23 | 2015-12-23 | 北京交通大学 | 基于动态阈值窗口的虚拟机迁移处理方法 |
CN115033337A (zh) * | 2022-04-24 | 2022-09-09 | 新华三技术有限公司 | 虚拟机内存迁移方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10678746B2 (en) | Virtual network optimizing a physical network | |
CN106850402B (zh) | 消息的传输方法和装置 | |
EP4216515A1 (en) | Method and apparatus for transmitting data processing request | |
US10129722B2 (en) | Service processing method and network device | |
CN109547524B (zh) | 基于物联网的用户行为存储方法、装置、设备及存储介质 | |
WO2015191649A1 (en) | Providing multiple synchronous serial console sessions using data buffering | |
CN110688146A (zh) | 对监控系统进行动态配置的方法、装置以及存储介质 | |
CN110609746B (zh) | 管理网络系统的方法、设备和计算机可读介质 | |
CN110704158A (zh) | 在容器集群内转发访问请求的方法、装置以及存储介质 | |
CN111585815B (zh) | 一种端口数据采集方法及装置 | |
CN110874345B (zh) | 分布式存储系统中的数据处理方法、装置和系统 | |
CN114691390A (zh) | 用户态程序的处理方法和装置、存储介质及处理器 | |
CN117193948A (zh) | 虚拟机迁移方法及装置 | |
CN112395040A (zh) | 内存数据传输方法、系统及服务器 | |
EP4318235A1 (en) | Kubernetes cluster load balance handling method and apparatus, and storage medium | |
CN109787835A (zh) | 一种会话备份方法及装置 | |
CN113194045B (zh) | 数据流量分析方法、装置、存储介质及处理器 | |
CN111092770B (zh) | 一种虚拟网络管理方法及电子设备 | |
CN113626139A (zh) | 一种高可用的虚拟机存储方法及装置 | |
CN112751706A (zh) | 一种目标数据的传输方法和装置 | |
CN107231244B (zh) | 初始化加密机的系统、方法和装置 | |
CN112769889B (zh) | 服务数据的推送方法、装置、存储介质以及电子装置 | |
CN114978660B (zh) | 带外网络的构建方法和基于带外网络的带外处理方法 | |
CN112311904A (zh) | 更新域名记录的方法、装置、存储介质以及域名管理系统 | |
CN111107663B (zh) | 数据的传输方法及装置、存储介质、电子装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |