CN117938663A - 虚拟机的迁移方法、装置、电子设备和介质 - Google Patents

虚拟机的迁移方法、装置、电子设备和介质 Download PDF

Info

Publication number
CN117938663A
CN117938663A CN202311675725.6A CN202311675725A CN117938663A CN 117938663 A CN117938663 A CN 117938663A CN 202311675725 A CN202311675725 A CN 202311675725A CN 117938663 A CN117938663 A CN 117938663A
Authority
CN
China
Prior art keywords
network card
virtual machine
virtual
migration
state
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
Application number
CN202311675725.6A
Other languages
English (en)
Inventor
请求不公布姓名
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nfs China Software Co ltd
Original Assignee
Nfs China Software Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nfs China Software Co ltd filed Critical Nfs China Software Co ltd
Priority to CN202311675725.6A priority Critical patent/CN117938663A/zh
Publication of CN117938663A publication Critical patent/CN117938663A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本申请实施例提供了一种虚拟机的迁移方法、装置、电子设备和介质,其中的方法具体包括:为第一虚拟机添加虚拟网卡,并将虚拟网卡与网卡绑定接口进行绑定;网卡绑定接口的模式为主备模式,网卡绑定接口还绑定有第一虚拟机对应的第一透传网卡;第一透传网卡的状态为激活状态,虚拟网卡的状态为未激活状态;关闭第一透传网卡,以使网卡绑定接口将虚拟网卡的状态更新为激活状态;向第一虚拟机发送迁移指令,以使第一虚拟机向第二虚拟机发送迁移数据;迁移数据包括:网卡绑定接口绑定的网卡数据;网卡数据包括:虚拟网卡的数据,以使第二虚拟机利用虚拟网卡提供服务。本申请实施例可以减少虚拟机因迁移出现的服务中断时间,进而能够提高服务的可用性。

Description

虚拟机的迁移方法、装置、电子设备和介质
技术领域
本申请实施例涉及虚拟化技术领域,特别是涉及一种虚拟机的迁移方法、装置、电子设备和介质。
背景技术
VM(虚拟机,Virtual Machine)是指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,承载虚拟机的物理设备称之为宿主机。为了提高虚拟机的网络性能,目前可以将宿主机的物理网卡的虚拟化功能透传到虚拟机,透传到虚拟机的网卡可以称为透传网卡。
在实际应用中,由于宿主机故障、负载过重等一些原因,常常需要进行虚拟机迁移,将虚拟机从源宿主机迁移到目的宿主机。虚拟机迁移具体包括:静态迁移和动态迁移。静态迁移指的是虚拟机在关机情况下迁移。动态迁移指的是在不关机情况下,将虚拟机从源宿主机迁移到目的宿主机的操作。
目前虚拟机的迁移方法,通常在动态迁移之前中断透传网卡、以及在动态迁移完成后手动使能透传网卡。但是,在中断透传网卡与手动使能透传网卡之间的这段时间内,虚拟机会出现较长时间的服务中断。
发明内容
本申请实施例提供了一种虚拟机的迁移方法,可以减少虚拟机因迁移出现的服务中断时间,进而能够提高服务的可用性。
相应的,本申请实施例还提供了一种虚拟机的迁移装置、一种电子设备和一种机器可读介质,用以保证上述方法的实现及应用。
为了解决上述问题,本申请实施例公开了一种虚拟机的迁移方法,应用于源宿主机,所述方法包括:
为第一虚拟机添加虚拟网卡,并将所述虚拟网卡与网卡绑定接口进行绑定;所述网卡绑定接口的模式为主备模式,所述网卡绑定接口还绑定有所述第一虚拟机对应的第一透传网卡;所述第一透传网卡的状态为激活状态,所述虚拟网卡的状态为未激活状态;
关闭所述第一透传网卡,以使所述网卡绑定接口将所述虚拟网卡的状态更新为激活状态;
向所述第一虚拟机发送迁移指令,以使所述第一虚拟机向第二虚拟机发送迁移数据;所述第二虚拟机运行在目的宿主机上;所述迁移数据包括:所述网卡绑定接口绑定的网卡数据;所述网卡数据包括:所述虚拟网卡的数据,以使所述第二虚拟机利用所述虚拟网卡提供服务。
为了解决上述问题,本申请实施例公开了一种虚拟机的迁移方法,应用于目的宿主机,所述方法包括:
创建第二虚拟机;
接收第一虚拟机发送的迁移数据;所述迁移数据包括:所述第一虚拟机对应的网卡绑定接口绑定的网卡数据;所述网卡数据包括:虚拟网卡的数据;其中,在所述第一虚拟机发送所述迁移数据之前,所述第一虚拟机对应的源宿主机为第一虚拟机添加虚拟网卡,将所述虚拟网卡与网卡绑定接口进行绑定;所述网卡绑定接口的模式为主备模式,所述网卡绑定接口还绑定有所述第一虚拟机对应的第一透传网卡;所述第一透传网卡的状态为激活状态,所述虚拟网卡的状态为未激活状态;关闭所述第一透传网卡,以使所述网卡绑定接口将所述虚拟网卡的状态更新为激活状态;
在完成迁移后,所述第二虚拟机利用所述虚拟网卡提供服务。
为了解决上述问题,本申请实施例还公开了一种虚拟机的迁移装置,应用于源宿主机,所述装置包括:
虚拟网卡添加模块,用于为第一虚拟机添加虚拟网卡;
虚拟网卡绑定模块,用于将所述虚拟网卡与网卡绑定接口进行绑定;所述网卡绑定接口的模式为主备模式,所述网卡绑定接口还绑定有所述第一虚拟机对应的第一透传网卡;所述第一透传网卡的状态为激活状态,所述虚拟网卡的状态为未激活状态;
第一透传网卡关闭模块,用于关闭所述第一透传网卡,以使所述网卡绑定接口将所述虚拟网卡的状态更新为激活状态;
指令发送模块,用于向所述第一虚拟机发送迁移指令,以使所述第一虚拟机向第二虚拟机发送迁移数据;所述第二虚拟机运行在目的宿主机上;所述迁移数据包括:所述网卡绑定接口绑定的网卡数据;所述网卡数据包括:所述虚拟网卡的数据,以使所述第二虚拟机利用所述虚拟网卡提供服务。
可选地,所述装置还包括:
第一透传网卡删除模块,用于在关闭所述第一透传网卡后、以及向所述第一虚拟机发送迁移指令之前,删除所述第一透传网卡。
可选地,所述虚拟网卡绑定模块包括:
第一配置文件增加模块,用于在所述第一虚拟机中增加所述虚拟网卡的第一配置文件;所述第一配置文件包括:所述虚拟网卡的模式为从模式,所述虚拟网卡对应的主设备为网卡绑定接口;
第一配置文件加载模块,用于加载所述第一配置文件。
为了解决上述问题,本申请实施例还公开了一种虚拟机的迁移装置,应用于目的宿主机,所述装置包括:
创建模块,用于创建第二虚拟机;
接收模块,用于接收第一虚拟机发送的迁移数据;所述迁移数据包括:所述第一虚拟机对应的网卡绑定接口绑定的网卡数据;所述网卡数据包括:虚拟网卡的数据;其中,在所述第一虚拟机发送所述迁移数据之前,所述第一虚拟机对应的源宿主机为第一虚拟机添加虚拟网卡,将所述虚拟网卡与网卡绑定接口进行绑定;所述网卡绑定接口的模式为主备模式,所述网卡绑定接口还绑定有所述第一虚拟机对应的第一透传网卡;所述第一透传网卡的状态为激活状态,所述虚拟网卡的状态为未激活状态;关闭所述第一透传网卡,以使所述网卡绑定接口将所述虚拟网卡的状态更新为激活状态;
服务提供模块,用于在完成迁移后,所述第二虚拟机利用所述虚拟网卡提供服务。
可选地,所述装置还包括:
第二透传网卡添加模块,用于为所述第二虚拟机添加第二透传网卡;
第二透传网卡绑定模块,用于将所述第二透传网卡与所述网卡绑定接口进行绑定;所述第二透传网卡的状态为未激活状态;
虚拟网卡关闭模块,用于关闭所述虚拟网卡,以使所述网卡绑定接口将所述第二透传网卡的状态更新为激活状态。
可选地,所述装置还包括:
虚拟网卡删除模块,用于在关闭所述虚拟网卡后,删除所述虚拟网卡。
本申请实施例还公开了一种电子设备,包括:处理器;和存储器,其上存储有可执行代码,当所述可执行代码被执行时,使得所述处理器执行如本申请实施例所述的方法。
本申请实施例还公开了一种机器可读介质,其上存储有可执行代码,当所述可执行代码被执行时,使得处理器执行如本申请实施例所述的方法。
本申请实施例包括以下优点:
本申请实施例的技术方案中,源宿主机在第一虚拟机的迁移之前,首先为第一虚拟机添加虚拟网卡,并将该虚拟网卡与网卡绑定接口进行绑定;然后,关闭该第一透传网卡,以使该网卡绑定接口将该虚拟网卡的状态更新为激活状态;接着向该第一虚拟机发送迁移指令,以使该第一虚拟机向第二虚拟机发送迁移数据。其中,该迁移数据中可以包含虚拟网卡的数据,以使该第二虚拟机利用该虚拟网卡提供服务。
由于本申请实施例在第一虚拟机向第二虚拟机的迁移过程中,第一虚拟机可以使用虚拟网卡来提供服务,以及,在迁移完成后且使能透传网卡前的一段时间内,第二虚拟机可以使用虚拟网卡来提供服务;因此,本申请实施例可以减少虚拟机因迁移出现的服务中断时间,进而能够提高服务的可用性。
附图说明
图1是本申请一个实施例的宿主机的结构示意图;
图2是本申请一个实施例的虚拟机的迁移方法的应用环境的示意图;
图3是本申请一个实施例的虚拟机的迁移方法的步骤流程图;
图4是本申请一个实施例的虚拟机的迁移方法的步骤流程示意图;
图5是本申请一个实施例的虚拟机的迁移方法的步骤流程示意图;
图6是本申请一个实施例的虚拟机的迁移装置的结构示意图;
图7是本申请一个实施例的虚拟机的迁移装置的结构示意图;
图8是本申请一个实施例提供的装置的结构示意图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
在虚拟化技术领域中,为了提高虚拟机的网络性能,可以将宿主机的物理网卡的VF(虚拟化功能,Virtual Function)透传到虚拟机,透传到虚拟机的网卡可以称为透传网卡。
本申请实施例可以利用SR-IOV(单根输入输出虚拟化,The Single Root I/OVirtualization)技术,实现虚拟化功能对应的透传网卡。以支持SR-IOV的网卡适配器为例,一块pNIC(物理网卡,physical NetworkInterface Card)适配器可以虚拟出多个vNIC(虚拟网卡,virtuall Network Interface Card)。进一步,可以通过PCIPassThrough(网卡透传功能)将宿主机VF的PCI(定义局部总线,Peripheral Component Interconnect)透传到虚拟机内部,虚拟机通过加载PCI实现对该VF对应的虚拟网卡的使用。
在SR-IOV规范中,虚拟网卡可直接连接到I/O(输入/输出,input/output)设备。因此,虚拟机使用SR-IOV技术得到的透传网卡,可以提高网络性能。
虚拟机的动态迁移指的是在不关机情况下,将虚拟机从源宿主机迁移到目的宿主机的操作。
目前虚拟机的迁移方法,通常在动态迁移之前中断透传网卡、以及在动态迁移完成后手动使能透传网卡。在中断透传网卡与手动使能透传网卡之间的这段时间内,虚拟机会出现较长时间的服务中断。
针对相关技术中虚拟机因迁移导致较长时间的服务中断的技术问题,本申请实施例提供了一种虚拟机的迁移方法,该方法应用于源宿主机,具体包括:为第一虚拟机添加虚拟网卡,并将该虚拟网卡与网卡绑定接口进行绑定;该网卡绑定接口的模式为主备模式,该网卡绑定接口还绑定有该第一虚拟机对应的第一透传网卡;该第一透传网卡的状态为激活状态,该虚拟网卡的状态为未激活状态;关闭该第一透传网卡,以使该网卡绑定接口将该虚拟网卡的状态更新为激活状态;向该第一虚拟机发送迁移指令,以使该第一虚拟机向第二虚拟机发送迁移数据;该第二虚拟机运行在目的宿主机上;该迁移数据具体包括:该网卡绑定接口绑定的网卡数据;该网卡数据具体包括:该虚拟网卡的数据,以使该第二虚拟机利用该虚拟网卡提供服务。
本申请实施例的源宿主机在第一虚拟机迁移之前,首先为第一虚拟机添加虚拟网卡,并将该虚拟网卡与网卡绑定接口进行绑定;然后,关闭该第一透传网卡,以使该网卡绑定接口将该虚拟网卡的状态更新为激活状态;接着向该第一虚拟机发送迁移指令,以使该第一虚拟机向第二虚拟机发送迁移数据。其中,该迁移数据中可以包含虚拟网卡的数据,以使该第二虚拟机利用该虚拟网卡提供服务。
由于本申请实施例在第一虚拟机向第二虚拟机的迁移过程中,第一虚拟机可以使用虚拟网卡来提供服务,以及,在迁移完成后且使能透传网卡前的一段时间内,第二虚拟机可以使用虚拟网卡来提供服务;因此,本申请实施例可以减少虚拟机因迁移出现的服务中断时间,进而能够提高服务的可用性。
参照图1,示出了本申请一个实施例的宿主机的结构示意图,图1所示结构示意图可以适用于源宿主机或目的宿主机。其中,宿主机具体包括m个虚拟机和硬件层。m个虚拟机具体包括:虚拟机VM-1至虚拟机VM-m,m可以为正整数。硬件层可以为虚拟机提供硬件资源。
硬件层可以作为虚拟化环境运行的硬件平台。其中,硬件层可包括多种硬件,上述硬件可以包括但不限于:处理器、内存、物理网卡、存储器等。
参照图2,示出了本申请一个实施例的虚拟机的迁移方法的应用环境的示意图,其中,可以将目标虚拟机从源宿主机迁移到目的宿主机。虚拟机动态迁移的过程实际上是与虚拟机有关的数据的迁移过程。与虚拟机有关的数据可以称为迁移数据。迁移数据的类型可以包括:硬盘数据和内存数据。
方法实施例一
参考图3,示出了本申请一个实施例的虚拟机的迁移方法的步骤流程示意图,该方法应用于源宿主机,具体可以包括如下步骤:
步骤301、为第一虚拟机添加虚拟网卡,并将该虚拟网卡与网卡绑定接口进行绑定;该网卡绑定接口的模式可以为主备模式,该网卡绑定接口还可以绑定有该第一虚拟机对应的第一透传网卡;该第一透传网卡的状态可以为激活状态,该虚拟网卡的状态可以为未激活状态;
步骤302、关闭该第一透传网卡,以使该网卡绑定接口将该虚拟网卡的状态更新为激活状态;
步骤303、向该第一虚拟机发送迁移指令,以使该第一虚拟机向第二虚拟机发送迁移数据;该第二虚拟机运行在目的宿主机上;该迁移数据具体包括:该网卡绑定接口绑定的网卡数据;该网卡数据具体包括:该虚拟网卡的数据,以使该第二虚拟机利用该虚拟网卡提供服务。
本申请实施例的源宿主机在第一虚拟机的迁移之前,可以首先为第一虚拟机添加虚拟网卡,并将该虚拟网卡与网卡绑定接口进行绑定;然后,关闭该第一透传网卡,以使该网卡绑定接口将该虚拟网卡的状态更新为激活状态;接着向该第一虚拟机发送迁移指令,以使该第一虚拟机向第二虚拟机发送迁移数据。
在步骤301中,第一虚拟机可以指源宿主机中待迁移的虚拟机。源宿主机可以利用虚拟机管理工具提供的接口,为第一虚拟机添加一块虚拟网卡。
在源宿主机存在可视化环境的情况下,可以利用虚拟机管理工具提供的虚拟机详情页面,为第一虚拟机添加虚拟网卡。该虚拟机详情页面中,虚拟网卡的字段具体包括:网络源字段、源模式字段、MAC(媒体访问控制地址,Media Access Control Addres)地址字段和设备型号字段。其中,网络源字段的字段内容可以为预设网络虚拟化模型的名称;源模式字段的字段内容可以为传递;MAC地址字段的字段内容可以为设定地址;设备型号字段的字段内容可以为半虚拟化I/O的名称。其中,预设网络虚拟化模型能够将一块物理网卡虚拟成多块虚拟网卡。在完成上述字段的设置后,可以完成虚拟网卡的添加。
在源宿主机不存在可视化环境的情况下,可以利用虚拟机管理工具提供的命令行工具,为第一虚拟机添加虚拟网卡。例如,可以利用“virsh”命令的“attach-interface”,为第一虚拟机添加虚拟网卡。
在为第一虚拟机添加虚拟网卡后,第一虚拟机终端可以利用网络接口查询命令,查询第一虚拟机对应的网卡列表。该网卡列表中可以包括:第一透传网卡和虚拟网卡分别对应的名称等信息。
第一虚拟机终端可以是访问第一虚拟机的终端。第一虚拟机终端可以利用云桌面技术,访问虚拟机中的数据。云桌面又称桌面虚拟化,是替代传统电脑的一种新模式;采用云桌面后,用户无需再购买电脑主机,主机所包含的CPU、内存、硬盘等组件全部在后端的服务器中虚拟出来,单台高性能服务器可以虚拟1-50台不等的虚拟主机;前端设备主流的是采用瘦客户机(与电视机顶盒类似的设备)连接显示器和键鼠,用户安装客户端后通过特有的通信协议访问后端服务器上的虚拟机主机来实现交互式操作,达到与电脑一致的体验效果。
网卡绑定(bond)接口是一种用于增强网络性能和提供冗余的技术。网卡绑定接口能够将多个网卡绑定成一个逻辑网卡,可以实现负载均衡和故障切换等功能。
网卡绑定接口的模式有多种。本申请实施例可以将网卡绑定接口的模式设置为主备模式。在网卡绑定接口的模式为主备模式的情况下,网卡绑定接口绑定的多个网卡中的一个处于激活状态,其他网卡处于未激活状态且作为备用。需要说明的是,与网卡绑定接口相匹配的交换机的模式也可以为主备模式。与网卡绑定接口相匹配的交换机可以是与透传网卡对应的物理网卡相连接的交换机。
本申请实施例在执行步骤301之前,可以针对第一虚拟机配置网卡绑定接口,该网卡绑定接口可以绑定有第一透传网卡。
本申请实施例将该虚拟网卡与网卡绑定接口进行绑定的过程,具体包括:在该第一虚拟机中增加该虚拟网卡的第一配置文件;该第一配置文件具体包括:该虚拟网卡的模式为从模式,该虚拟网卡对应的主设备为网卡绑定接口;加载该第一配置文件。
本申请实施例可以在第一虚拟机内加载虚拟网卡的第一配置文件,该第一配置文件用于将虚拟网卡设置为从(slave)模式,对应的主设备为网卡绑定接口。本申请实施例可以利用“nmcli connection load配置文件名”等配置文件加载命令,加载虚拟网卡的第一配置文件。
预设目录下可以包含:网卡绑定接口包含的网卡及网卡的状态。在加载该第一配置文件后,查看该预设目录,可以发现网卡绑定接口绑定有两块网卡:第一透传网卡和虚拟网卡,其中,第一透传网卡的状态可以为激活状态,该虚拟网卡的状态可以为未激活状态。第一透传网卡可以是:将源宿主机的物理网卡的虚拟化功能透传到第一虚拟机内部的透传网卡。激活状态可以表征工作状态。预设目录的例子可以包括:/proc/net/bonding/bond0。
由于网卡绑定接口的模式为主备模式(仅有一块网卡处于激活状态,其余网卡处于非激活状态,所有流量都在主链路上处理,在处于激活状态的网卡处于宕机状态的情况下,一个处于未激活状态的网卡马上转换为主网卡),故当前处于激活状态的网卡仍为原来的第一透传网卡,新增的虚拟网卡时刻准备在第一透传网卡发生故障的情况下进行状态的更新和角色的转换。虚拟网卡对应状态的更新具体指从未激活状态转换为激活状态。虚拟网卡对应角色的转换具体指从备用网卡转换为主网卡。
在步骤302中,关闭该第一透传网卡,则该网卡绑定接口可以将该虚拟网卡的状态更新为激活状态,以将第一虚拟机的流量从第一透传网卡无缝切换至虚拟网卡。
在具体实现中,可以利用网卡关闭命令,将第一透传网卡关闭,以使第一透传网卡停止工作。网卡关闭命令的例子可以包括:“ip link set网卡名down”等。第一虚拟机终端可以与第一虚拟机建立SSH(安全外壳协议,Secure Shell)连接。在关闭该第一透传网卡后,第一虚拟机终端与第一虚拟机的SSH连接未中断,说明已经将第一虚拟机的流量成功切换至虚拟网卡。其中,SSH是一种在不安全网络上用于安全远程登录和其他安全网络服务的协议。
在关闭该第一透传网卡后,查看该预设目录,也可以发现:网卡绑定接口绑定的网卡仅仅包括虚拟网卡、且该虚拟网卡的状态为激活状态。
在步骤303中,宿主机可以向该第一虚拟机发送迁移指令,以使该第一虚拟机向第二虚拟机发送迁移数据。
该迁移数据可以指虚拟机有关的数据。迁移数据的类型可以包括:硬盘数据和内存数据。
具体到本申请实施例,该迁移数据具体包括:该网卡绑定接口绑定的网卡数据;该网卡数据具体包括:该虚拟网卡的数据,以使该第二虚拟机利用该虚拟网卡提供服务。
在本申请的一种可选实现方式中,在关闭所述第一透传网卡后、以及向所述第一虚拟机发送迁移指令之前,源宿主机可以删除该第一透传网卡。这样,可以在一定程度上避免第一透传网卡在迁移过程中出现迁移错误。
源宿主机可以利用虚拟机管理工具提供的接口,删除该第一透传网卡。
在源宿主机存在可视化环境的情况下,可以利用虚拟机管理工具提供的虚拟机详情页面,删除该第一透传网卡。例如,在虚拟机详情页面中选择透传网卡,点击删除即可。
在源宿主机不存在可视化环境的情况下,可以利用虚拟机管理工具提供的命令行工具,删除该第一透传网卡。例如,可以利用“virsh”命令的“detach-interface”,删除该第一透传网卡。
在删除该第一透传网卡后,在第一虚拟机对应的第一虚拟机终端通过“ip link”命令查看,可以发现:第一虚拟机对应的网卡绑定接口中包含:一块处于激活状态的虚拟网卡。
综上,本申请实施例的虚拟机的迁移方法,源宿主机在第一虚拟机的迁移之前,首先为第一虚拟机添加虚拟网卡,并将该虚拟网卡与网卡绑定接口进行绑定;然后,关闭该第一透传网卡,以使该网卡绑定接口将该虚拟网卡的状态更新为激活状态;接着向该第一虚拟机发送迁移指令,以使该第一虚拟机向第二虚拟机发送迁移数据。其中,该迁移数据中可以包含虚拟网卡的数据,以使该第二虚拟机利用该虚拟网卡提供服务。
由于本申请实施例在第一虚拟机向第二虚拟机的迁移过程中,第一虚拟机可以使用虚拟网卡来提供服务,以及,在迁移完成后且使能透传网卡前的一段时间内,第二虚拟机可以使用虚拟网卡来提供服务;因此,本申请实施例可以减少虚拟机因迁移出现的服务中断时间,进而能够提高服务的可用性。
方法实施例二
参考图4,示出了本申请一个实施例的虚拟机的迁移方法的步骤流程示意图,该方法可以应用于目的宿主机,该方法具体可以包括如下步骤:
步骤401、创建第二虚拟机;
步骤402、接收第一虚拟机发送的迁移数据;该迁移数据具体包括:该第一虚拟机对应的网卡绑定接口绑定的网卡数据;该网卡数据具体包括:虚拟网卡的数据;其中,在该第一虚拟机发送该迁移数据之前,该第一虚拟机对应的源宿主机为第一虚拟机添加虚拟网卡,将该虚拟网卡与网卡绑定接口进行绑定;该网卡绑定接口的模式为主备模式,该网卡绑定接口还绑定有该第一虚拟机对应的第一透传网卡;该第一透传网卡的状态为激活状态,该虚拟网卡的状态为未激活状态;关闭该第一透传网卡,以使该网卡绑定接口将该虚拟网卡的状态更新为激活状态;
步骤403、在完成迁移后,第二虚拟机利用该虚拟网卡提供服务。
目的宿主机可用于承载迁移后的第二虚拟机。
在本申请的一种示例中,虚拟机的迁移过程可以包括:
步骤A1、在目的宿主机上创建第一虚拟机对应的系统盘和数据盘,系统盘和数据盘在源宿主机上的路径与在目的宿主机上的路径一致。此种情况下,目的宿主机上的系统盘和数据盘可以为空盘。
步骤A2、在目的宿主机上创建第二虚拟机,第二虚拟机与第一虚拟机的配置相同;第二虚拟机的状态可以为暂停状态,第二虚拟机可以使用步骤A1创建的系统盘和数据盘。
步骤A3、源宿主机利用虚拟机管理工具向第一虚拟机发送迁移指令,并指定迁移参数,迁移参数可以包括:目的宿主机的信息、迁移带宽限制等。则迁移数据可以通过指定的TCP链路传输给目的宿主机上的第二虚拟机。
经过步骤A1至步骤A3,第一虚拟机的迁移数据就正式开始迁移,此种情况下,第一虚拟机处于运行状态,第一虚拟机中会发生内存更新、磁盘I/O操作和设备状态变更,而第二虚拟机处于暂停状态,第二虚拟机可以通过一个线程接收第一虚拟机发送的迁移数据。在具体实现中,可以首先循环调用磁盘迁移函数,以进行磁盘数据的迁移。然后循环调用内存迁移函数,以进行内存数据的迁移。通过多次迭代,将迁移过程中第一虚拟机产生的新数据迁移到第二虚拟机。在满足预设暂停条件后,可以将第一虚拟机置为暂停状态。接着,把第一虚拟机的磁盘脏数据、内存脏数据和设备状态一次性同步到第二虚拟机,以实现第一虚拟机与第二虚拟机之间的数据一致性。然后,可以将第一虚拟机删除,并将第二虚拟机置为运行状态,由此完成虚拟机的迁移。
传统技术通常在动态迁移之前中断透传网卡、以及在动态迁移完成后手动使能透传网卡。这样,传统技术在中断透传网卡与手动使能透传网卡之间的这段时间内,虚拟机会出现较长时间的服务中断。
而本申请实施例在迁移过程中,第一虚拟机在更新为暂停状态之前,第一虚拟机可以使用虚拟网卡来提供服务。在迁移完成(也即第二虚拟机更新为运行状态)后,第二虚拟机可以使用虚拟网卡来提供服务。因此,本申请实施例可以减少虚拟机因迁移出现的服务中断时间,进而能够提高服务的可用性。
本申请实施例在完成迁移后,源宿主机可以删除第一虚拟机,且第二虚拟机在目的宿主机上启动。在第二虚拟机对应的第二虚拟机终端通过“ip link”命令查看,可以发现:第二虚拟机对应的网卡绑定接口中包含一块处于激活状态的虚拟网卡;这个虚拟网卡源自第一虚拟机的迁移数据。则第二虚拟机可以利用该虚拟网卡提供服务。
在本申请的一种可选实现方式中,本申请实施例的方法还可以包括:为该第二虚拟机添加第二透传网卡,并将该第二透传网卡与该网卡绑定接口进行绑定;该第二透传网卡的状态为未激活状态;关闭该虚拟网卡,以使该网卡绑定接口将该第二透传网卡的状态更新为激活状态。
目的宿主机可以使用虚拟机管理器添加第二透传网卡。具体而言,可以在第二虚拟机对应的虚拟机详情页面添加硬件类型为PCI设备的硬件,根据PCI号找到分配给第二虚拟机的PCI设备。PCI设备的例子可以包括:Intel VT-d(用于直接I/O的英特尔虚拟化技术,Intel Virtualization Technology for Direct I/O)设备、或者SR-IOV模式的VF设备等,找到PCI设备后,点击完成即可完成第二透传网卡的添加。
上述将该第二透传网卡与该网卡绑定接口进行绑定的过程,具体包括:在该第二虚拟机中增加该第二透传网卡的第二配置文件;该第二配置文件具体包括:该第二透传网卡的模式为从模式,该第二透传网卡对应的主设备为网卡绑定接口;并且加载该第二配置文件。
本申请实施例可以在第二虚拟机内加载第二透传网卡的第二配置文件,该第二配置文件用于将第二透传网卡设置为从(slave)模式,对应的主设备为网卡绑定接口。本申请实施例可以利用“nmcli connection load配置文件名”等配置文件加载命令,加载第二透传网卡的第二配置文件。
预设目录下可以包含网卡绑定接口包含的网卡及网卡的状态。在加载该第二配置文件后,查看该预设目录,可以发现网卡绑定接口绑定有两块网卡:虚拟网卡和第二透传网卡,其中,该虚拟网卡的状态可以为激活状态,第二透传网卡的状态可以为未激活状态,。第二透传网卡可以是:将目的宿主机的物理网卡的虚拟化功能透传到第二虚拟机内部的透传网卡。激活状态可以表征工作状态。预设目录的例子可以包括:/proc/net/bonding/bond0。
在加载该第二配置文件后,在第二虚拟机对应的第二虚拟机终端通过“ip link”命令查看,可以发现,第二虚拟机对应的网卡绑定接口中包含:一块处于激活状态的虚拟网卡、以及一块处于非激活状态的第二透传网卡。第二透传网卡对应的物理网卡可以与交换机建立连接。与第二透传网卡对应的物理网卡相连接的交换机的模式也可以为主备模式。
由于网卡绑定接口的模式为主备模式(仅有一块网卡处于激活状态,其余网卡处于非激活状态,所有流量都在主链路上处理,在处于激活状态的网卡处于宕机状态的情况下,一个处于未激活状态的网卡马上转换为主网卡),故当前处于激活状态的网卡仍为虚拟网卡,新增的第二透传网卡时刻准备在虚拟网卡发生故障的情况下进行状态的更新和角色的转换。第二透传网卡对应状态的更新具体指从未激活状态转换为激活状态。第二透传网卡对应角色的转换具体指从备用网卡转换为主网卡。
本申请实施例可以关闭该虚拟网卡,以使该网卡绑定接口将该第二透传网卡的状态更新为激活状态。
在具体实现中,可以利用网卡关闭命令,将虚拟网卡关闭,以使虚拟网卡停止工作。网卡关闭命令的例子可以包括:“ip link set网卡名down”等。第二虚拟机终端可以执行网卡关闭命令。
在关闭该虚拟网卡后,查看预设目录,可以发现网卡绑定接口绑定有一块网卡:第二透传网卡,且第二透传网卡的状态为激活状态。
需要说明的是,虚拟网卡是一个在软件中模拟的网络接口,它提供了与物理网络接口卡相似的功能,但是完全在软件中实现,无需物理硬件。而本申请实施例的第一透传网卡和第二透传网卡基于物理网卡实现,这样,虚拟网卡的网络性能可能低于第一透传网卡或第二透传网卡的网络性能。因此,本申请实施例在将该第二透传网卡与该网卡绑定接口进行绑定后关闭虚拟网卡,可以利用更高网络性能的第二透传网卡提供服务。
目的宿主机在关闭该虚拟网卡后,还可以删除该虚拟网卡。具体而言,可以利用虚拟机管理工具提供的接口,删除该虚拟网卡。
在源宿主机存在可视化环境的情况下,可以利用虚拟机管理工具提供的虚拟机详情页面,删除该虚拟网卡。例如,在虚拟机详情页面中选择透传网卡,点击删除即可。
在源宿主机不存在可视化环境的情况下,可以利用虚拟机管理工具提供的命令行工具,删除该虚拟网卡。例如,可以利用“virsh”命令的“detach-interface”,删除该虚拟网卡。
在删除该虚拟网卡后,在第二虚拟机对应的第二虚拟机终端通过“ip link”命令查看,可以发现:第一虚拟机对应的网卡绑定接口中包含:一块处于激活状态的第二透传网卡。
综上,本申请实施例的虚拟机的迁移方法,在迁移过程中,第一虚拟机在更新为暂停状态之前,第一虚拟机可以使用虚拟网卡来提供服务。在迁移完成(也即第二虚拟机更新为运行状态)后,第二虚拟机可以使用虚拟网卡来提供服务。因此,本申请实施例可以减少虚拟机因迁移出现的服务中断时间,进而能够提高服务的可用性。
方法实施例三
参考图5,示出了本申请一个实施例的虚拟机的迁移方法的步骤流程示意图,该方法具体可以包括如下步骤:
源宿主机侧的处理流程具体包括:
步骤501、针对第一虚拟机配置网卡绑定接口,该网卡绑定接口可以与第一透传网卡绑定,以使第一虚拟机利用第一透传网卡提供服务;
步骤502、为第一虚拟机添加虚拟网卡,并将该虚拟网卡与网卡绑定接口进行绑定;
步骤503、关闭该第一透传网卡,并删除该第一透传网卡;
步骤504、向该第一虚拟机发送迁移指令,以使该第一虚拟机向第二虚拟机发送迁移数据。迁移指令可以触发迁移的开始。
目的宿主机侧的处理流程具体包括:
步骤505、创建第二虚拟机;
步骤506、接收第一虚拟机发送的迁移数据;
步骤507、在完成迁移后,第二虚拟机利用该虚拟网卡提供服务;
步骤508、为该第二虚拟机添加第二透传网卡,并将该第二透传网卡与该网卡绑定接口进行绑定;
步骤509、关闭该虚拟网卡,删除该虚拟网卡。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
在上述实施例的基础上,本申请实施例还提供了一种虚拟机的迁移装置,该装置可以应用于源宿主机;参照图6,该装置具体可以包括:虚拟网卡添加模块601、虚拟网卡绑定模块602、第一透传网卡关闭模块603和指令发送模块604。
其中,虚拟网卡添加模块601,用于为第一虚拟机添加虚拟网卡;
虚拟网卡绑定模块602,用于将所述虚拟网卡与网卡绑定接口进行绑定;所述网卡绑定接口的模式为主备模式,所述网卡绑定接口还绑定有所述第一虚拟机对应的第一透传网卡;所述第一透传网卡的状态为激活状态,所述虚拟网卡的状态为未激活状态;
第一透传网卡关闭模块603,用于关闭所述第一透传网卡,以使所述网卡绑定接口将所述虚拟网卡的状态更新为激活状态;
指令发送模块604,用于向所述第一虚拟机发送迁移指令,以使所述第一虚拟机向第二虚拟机发送迁移数据;所述第二虚拟机运行在目的宿主机上;所述迁移数据包括:所述网卡绑定接口绑定的网卡数据;所述网卡数据包括:所述虚拟网卡的数据,以使所述第二虚拟机利用所述虚拟网卡提供服务。
可选地,上述装置还可以包括:
第一透传网卡删除模块,用于在关闭所述第一透传网卡后、以及向所述第一虚拟机发送迁移指令之前,删除所述第一透传网卡。
可选地,虚拟网卡绑定模块602具体可以包括:
第一配置文件增加模块,用于在所述第一虚拟机中增加所述虚拟网卡的第一配置文件;所述第一配置文件包括:所述虚拟网卡的模式为从模式,所述虚拟网卡对应的主设备为网卡绑定接口;
第一配置文件加载模块,用于加载所述第一配置文件。
本申请实施例还提供了一种虚拟机的迁移装置,该装置可以应用于目的宿主机;参照图7,该装置具体可以包括:创建模块701、接收模块702和服务提供模块703。
其中,创建模块701,用于创建第二虚拟机;
接收模块702,用于接收第一虚拟机发送的迁移数据;所述迁移数据包括:所述第一虚拟机对应的网卡绑定接口绑定的网卡数据;所述网卡数据包括:虚拟网卡的数据;其中,在所述第一虚拟机发送所述迁移数据之前,所述第一虚拟机对应的源宿主机为第一虚拟机添加虚拟网卡,将所述虚拟网卡与网卡绑定接口进行绑定;所述网卡绑定接口的模式为主备模式,所述网卡绑定接口还绑定有所述第一虚拟机对应的第一透传网卡;所述第一透传网卡的状态为激活状态,所述虚拟网卡的状态为未激活状态;关闭所述第一透传网卡,以使所述网卡绑定接口将所述虚拟网卡的状态更新为激活状态;
服务提供模块703,用于在完成迁移后,所述第二虚拟机利用所述虚拟网卡提供服务。
可选地,所述装置还可以包括:
第二透传网卡添加模块,用于为所述第二虚拟机添加第二透传网卡;
第二透传网卡绑定模块,用于将所述第二透传网卡与所述网卡绑定接口进行绑定;所述第二透传网卡的状态为未激活状态;
虚拟网卡关闭模块,用于关闭所述虚拟网卡,以使所述网卡绑定接口将所述第二透传网卡的状态更新为激活状态。
可选地,所述装置还可以包括:
虚拟网卡删除模块,用于在关闭所述虚拟网卡后,删除所述虚拟网卡。
本申请实施例还提供了一种非易失性可读存储介质,该存储介质中存储有一个或多个模块(programs),该一个或多个模块被应用在设备时,可以使得该设备执行本申请实施例中各方法步骤的指令(instructions)。
本申请实施例提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得电子设备执行如上述实施例中一个或多个所述的方法。本申请实施例中,所述电子设备包括终端设备、服务器(集群)等各类型的设备。
本公开的实施例可被实现为使用任意适当的硬件,固件,软件,或及其任意组合进行想要的配置的装置,该装置可包括:终端设备、服务器(集群)等电子设备。图8示意性地示出了可被用于实现本申请中所述的各个实施例的示例性装置1100。
对于一个实施例,图8示出了示例性装置1100,该装置具有一个或多个处理器1102、被耦合到(一个或多个)处理器1102中的至少一个的控制模块(芯片组)1104、被耦合到控制模块1104的存储器1106、被耦合到控制模块1104的非易失性存储器(NVM)/存储设备1108、被耦合到控制模块1104的一个或多个输入/输出设备1110,以及被耦合到控制模块1104的网络接口1112。
处理器1102可包括一个或多个单核或多核处理器,处理器1102可包括通用处理器或专用处理器(例如图形处理器、应用处理器、基频处理器等)的任意组合。在一些实施例中,装置1100能够作为本申请实施例中所述终端设备、服务器(集群)等设备。
在一些实施例中,装置1100可包括具有指令1114的一个或多个计算机可读介质(例如,存储器1106或NVM/存储设备1108)以及与该一个或多个计算机可读介质相合并被配置为执行指令1114以实现模块从而执行本公开中所述的动作的一个或多个处理器1102。
对于一个实施例,控制模块1104可包括任意适当的接口控制器,以向(一个或多个)处理器1102中的至少一个和/或与控制模块1104通信的任意适当的设备或组件提供任意适当的接口。
控制模块1104可包括存储器控制器模块,以向存储器1106提供接口。存储器控制器模块可以是硬件模块、软件模块和/或固件模块。
存储器1106可被用于例如为装置1100加载和存储数据和/或指令1114。对于一个实施例,存储器1106可包括任意适当的易失性存储器,例如,适当的DRAM。在一些实施例中,存储器1106可包括双倍数据速率类型四同步动态随机存取存储器(DDR4SDRAM)。
对于一个实施例,控制模块1104可包括一个或多个输入/输出控制器,以向NVM/存储设备1108及(一个或多个)输入/输出设备1110提供接口。
例如,NVM/存储设备1108可被用于存储数据和/或指令1114。NVM/存储设备1108可包括任意适当的非易失性存储器(例如,闪存)和/或可包括任意适当的(一个或多个)非易失性存储设备(例如,一个或多个硬盘驱动器(HDD)、一个或多个光盘(CD)驱动器和/或一个或多个数字通用光盘(DVD)驱动器)。
NVM/存储设备1108可包括在物理上作为装置1100被安装在其上的设备的一部分的存储资源,或者其可被该设备访问可不必作为该设备的一部分。例如,NVM/存储设备1108可通过网络经由(一个或多个)输入/输出设备1110进行访问。
(一个或多个)输入/输出设备1110可为装置1100提供接口以与任意其他适当的设备通信,输入/输出设备1110可以包括通信组件、音频组件、传感器组件等。网络接口1112可为装置1100提供接口以通过一个或多个网络通信,装置1100可根据一个或多个无线网络标准和/或协议中的任意标准和/或协议来与无线网络的一个或多个组件进行无线通信,例如接入基于通信标准的无线网络,如WiFi、2G、3G、4G、5G等,或它们的组合进行无线通信。
对于一个实施例,(一个或多个)处理器1102中的至少一个可与控制模块1104的一个或多个控制器(例如,存储器控制器模块)的逻辑封装在一起。对于一个实施例,(一个或多个)处理器1102中的至少一个可与控制模块1104的一个或多个控制器的逻辑封装在一起以形成系统级封装(SiP)。对于一个实施例,(一个或多个)处理器1102中的至少一个可与控制模块1104的一个或多个控制器的逻辑集成在同一模具上。对于一个实施例,(一个或多个)处理器1102中的至少一个可与控制模块1104的一个或多个控制器的逻辑集成在同一模具上以形成片上系统(SoC)。
在各个实施例中,装置1100可以但不限于是:服务器、台式计算设备或移动计算设备(例如,膝上型计算设备、手持计算设备、平板电脑、上网本等)等终端设备。在各个实施例中,装置1100可具有更多或更少的组件和/或不同的架构。例如,在一些实施例中,装置1100包括一个或多个摄像机、键盘、液晶显示器(LCD)屏幕(包括触屏显示器)、非易失性存储器端口、多个天线、图形芯片、专用集成电路(ASIC)和扬声器。
其中,检测装置中可采用主控芯片作为处理器或控制模块,传感器数据、位置信息等存储到存储器或NVM/存储设备中,传感器组可作为输入/输出设备,通信接口可包括网络接口。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图的一个流程或多个流程和/或方框图的一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图的一个流程或多个流程和/或方框图的一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图的一个流程或多个流程和/或方框图的一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种虚拟机的迁移方法和装置、一种电子设备和一种机器可读介质,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种虚拟机的迁移方法,其特征在于,应用于源宿主机,所述方法包括:
为第一虚拟机添加虚拟网卡,并将所述虚拟网卡与网卡绑定接口进行绑定;所述网卡绑定接口的模式为主备模式,所述网卡绑定接口还绑定有所述第一虚拟机对应的第一透传网卡;所述第一透传网卡的状态为激活状态,所述虚拟网卡的状态为未激活状态;
关闭所述第一透传网卡,以使所述网卡绑定接口将所述虚拟网卡的状态更新为激活状态;
向所述第一虚拟机发送迁移指令,以使所述第一虚拟机向第二虚拟机发送迁移数据;所述第二虚拟机运行在目的宿主机上;所述迁移数据包括:所述网卡绑定接口绑定的网卡数据;所述网卡数据包括:所述虚拟网卡的数据,以使所述第二虚拟机利用所述虚拟网卡提供服务。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在关闭所述第一透传网卡后、以及向所述第一虚拟机发送迁移指令之前,删除所述第一透传网卡。
3.根据权利要求1所述的方法,其特征在于,所述将所述虚拟网卡与网卡绑定接口进行绑定,包括:
在所述第一虚拟机中增加所述虚拟网卡的第一配置文件;所述第一配置文件包括:所述虚拟网卡的模式为从模式,所述虚拟网卡对应的主设备为网卡绑定接口;
加载所述第一配置文件。
4.一种虚拟机的迁移方法,其特征在于,应用于目的宿主机,所述方法包括:
创建第二虚拟机;
接收第一虚拟机发送的迁移数据;所述迁移数据包括:所述第一虚拟机对应的网卡绑定接口绑定的网卡数据;所述网卡数据包括:虚拟网卡的数据;其中,在所述第一虚拟机发送所述迁移数据之前,所述第一虚拟机对应的源宿主机为第一虚拟机添加虚拟网卡,将所述虚拟网卡与网卡绑定接口进行绑定;所述网卡绑定接口的模式为主备模式,所述网卡绑定接口还绑定有所述第一虚拟机对应的第一透传网卡;所述第一透传网卡的状态为激活状态,所述虚拟网卡的状态为未激活状态;关闭所述第一透传网卡,以使所述网卡绑定接口将所述虚拟网卡的状态更新为激活状态;
在完成迁移后,所述第二虚拟机利用所述虚拟网卡提供服务。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
为所述第二虚拟机添加第二透传网卡,并将所述第二透传网卡与所述网卡绑定接口进行绑定;所述第二透传网卡的状态为未激活状态;
关闭所述虚拟网卡,以使所述网卡绑定接口将所述第二透传网卡的状态更新为激活状态。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在关闭所述虚拟网卡后,删除所述虚拟网卡。
7.一种虚拟机的迁移装置,其特征在于,应用于源宿主机,所述装置包括:
虚拟网卡添加模块,用于为第一虚拟机添加虚拟网卡;
虚拟网卡绑定模块,用于将所述虚拟网卡与网卡绑定接口进行绑定;所述网卡绑定接口的模式为主备模式,所述网卡绑定接口还绑定有所述第一虚拟机对应的第一透传网卡;所述第一透传网卡的状态为激活状态,所述虚拟网卡的状态为未激活状态;
第一透传网卡关闭模块,用于关闭所述第一透传网卡,以使所述网卡绑定接口将所述虚拟网卡的状态更新为激活状态;
指令发送模块,用于向所述第一虚拟机发送迁移指令,以使所述第一虚拟机向第二虚拟机发送迁移数据;所述第二虚拟机运行在目的宿主机上;所述迁移数据包括:所述网卡绑定接口绑定的网卡数据;所述网卡数据包括:所述虚拟网卡的数据,以使所述第二虚拟机利用所述虚拟网卡提供服务。
8.一种虚拟机的迁移装置,其特征在于,应用于目的宿主机,所述装置包括:
创建模块,用于创建第二虚拟机;
接收模块,用于接收第一虚拟机发送的迁移数据;所述迁移数据包括:所述第一虚拟机对应的网卡绑定接口绑定的网卡数据;所述网卡数据包括:虚拟网卡的数据;其中,在所述第一虚拟机发送所述迁移数据之前,所述第一虚拟机对应的源宿主机为第一虚拟机添加虚拟网卡,将所述虚拟网卡与网卡绑定接口进行绑定;所述网卡绑定接口的模式为主备模式,所述网卡绑定接口还绑定有所述第一虚拟机对应的第一透传网卡;所述第一透传网卡的状态为激活状态,所述虚拟网卡的状态为未激活状态;关闭所述第一透传网卡,以使所述网卡绑定接口将所述虚拟网卡的状态更新为激活状态;
服务提供模块,用于在完成迁移后,所述第二虚拟机利用所述虚拟网卡提供服务。
9.一种电子设备,其特征在于,包括:处理器;和
存储器,其上存储有可执行代码,当所述可执行代码被执行时,使得所述处理器执行如权利要求1-6中任一项所述的方法。
10.一种机器可读介质,其上存储有可执行代码,当所述可执行代码被执行时,使得处理器执行如权利要求1-6中任一项所述的方法。
CN202311675725.6A 2023-12-07 2023-12-07 虚拟机的迁移方法、装置、电子设备和介质 Pending CN117938663A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311675725.6A CN117938663A (zh) 2023-12-07 2023-12-07 虚拟机的迁移方法、装置、电子设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311675725.6A CN117938663A (zh) 2023-12-07 2023-12-07 虚拟机的迁移方法、装置、电子设备和介质

Publications (1)

Publication Number Publication Date
CN117938663A true CN117938663A (zh) 2024-04-26

Family

ID=90754535

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311675725.6A Pending CN117938663A (zh) 2023-12-07 2023-12-07 虚拟机的迁移方法、装置、电子设备和介质

Country Status (1)

Country Link
CN (1) CN117938663A (zh)

Similar Documents

Publication Publication Date Title
US20210232528A1 (en) Configurable device interface
US9645764B2 (en) Techniques for migrating active I/O connections with migrating servers and clients
US9197489B1 (en) Live migration of virtual machines in a hybrid network environment
US9164795B1 (en) Secure tunnel infrastructure between hosts in a hybrid network environment
US9430268B2 (en) Systems and methods for supporting migration of virtual machines accessing remote storage devices over network via NVMe controllers
US9507586B2 (en) Virtual machine based controller and upgrade mechanism
US9300592B2 (en) Physical port sharing in a link aggregation group
EP2965200B1 (en) Method and system for providing a roaming remote desktop
US20190235904A1 (en) Cloning services in virtualized computing systems
US8533713B2 (en) Efficent migration of virtual functions to enable high availability and resource rebalance
US9928107B1 (en) Fast IP migration in a hybrid network environment
CN109739618B (zh) 虚拟机迁移方法及装置
US20110113426A1 (en) Apparatuses for switching the running of a virtual machine between multiple computer devices belonging to the same computer platform and the associated switching methods
US9565095B2 (en) Take-over of network frame handling in a computing environment
US20150205542A1 (en) Virtual machine migration in shared storage environment
US20180375833A1 (en) Techniques for communication in hybrid cloud system
US10367688B2 (en) Discovering changes of network interface controller names
US9537797B2 (en) MTU management in a virtualized computer system
CN113312143A (zh) 云计算系统、命令处理方法及虚拟化仿真装置
CN108139937B (zh) 多根i/o虚拟化系统
US20160335109A1 (en) Techniques for data migration
US20190220303A1 (en) Migrating a virtual machine in response to identifying an unsupported virtual hardware component
US20230153140A1 (en) Live migration between hosts of a virtual machine connection to a host interface
CN117938663A (zh) 虚拟机的迁移方法、装置、电子设备和介质
US11829792B1 (en) In-place live migration of compute instances for efficient host domain patching

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