CN109450701B - 一种虚拟交换机切换方法、装置、宿主机及计算机可读存储介质 - Google Patents
一种虚拟交换机切换方法、装置、宿主机及计算机可读存储介质 Download PDFInfo
- Publication number
- CN109450701B CN109450701B CN201811495309.7A CN201811495309A CN109450701B CN 109450701 B CN109450701 B CN 109450701B CN 201811495309 A CN201811495309 A CN 201811495309A CN 109450701 B CN109450701 B CN 109450701B
- Authority
- CN
- China
- Prior art keywords
- virtual
- switch
- virtual switch
- machine
- network card
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
- H04L41/0836—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability to enhance reliability, e.g. reduce downtime
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明实施例提供了一种虚拟交换机切换方法,应用于宿主机,宿主机中设置有至少一台虚拟机和物理网卡,物理网卡中设置有至少两组虚拟接口,该方法包括:接收虚拟交换机的切换指令;在保持第一虚拟交换机运行的情况下,启动第二虚拟交换机,并加载第二虚拟交换机的配置文件;建立至少一台虚拟机与第二虚拟交换机的连接;通知物理网卡将接收虚拟机流量的虚拟接口由第一虚拟交换机对应的虚拟接口组切换为第二虚拟交换机对应的虚拟接口组。通过本发明实施例提供的技术方案,可以使得宿主机中无可用虚拟交换机的时间缩短,降低了用户的等待时间,提高了用户体验。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种虚拟交换机切换方法、装置、宿主机及计算机可读存储介质。
背景技术
虚拟交换机工作在二层数据网络,通过软件方式实现物理交换机的二层(或部分三层)网络功能。
虚拟交换机运行于宿主机中,用于实现报文的处理。为了使得虚拟交换机更加高效地处理报文,开发人员会不断开发新版本的虚拟交换机。在接收到切换虚拟交换机的触发指令后,宿主机将旧版本的虚拟交换机切换为新版本的虚拟交换机。
现有技术中,宿主机通过如下四个步骤将旧版本的虚拟交换机切换为新版本的虚拟交换机:第一,关闭旧版本的虚拟交换机;第二,启动新版本的虚拟交换机;第三,加载新版本的虚拟交换机的配置文件;第四,将新版本的虚拟交换机与宿主机中的至少一个虚拟机建立连接。通过上述四个步骤,新版本的虚拟交换机可以进行报文的处理。但是由于上述四个步骤均需要消耗时间,这样使得宿主机中无可用虚拟交换机的时间较长,最终导致用户等待时间较长,影响用户体验。
发明内容
本发明实施例的目的在于提供一种虚拟交换机切换方法、装置、电子设备及计算机可读存储介质,以使在进行虚拟交换机的切换时,宿主机中无可用虚拟交换机的时间缩短,提高用户体验。具体技术方案如下:
第一方面,本发明实施例提供了一种虚拟交换机切换方法,应用于宿主机,所述宿主机中设置有至少一台虚拟机和物理网卡,所述物理网卡中设置有至少两组虚拟接口,所述方法包括:
接收虚拟交换机的切换指令,所述切换指令用于指示将当前运行的第一虚拟交换机切换为第二虚拟交换机;
在保持所述第一虚拟交换机运行的情况下,启动所述第二虚拟交换机,并加载所述第二虚拟交换机的配置文件;
建立所述至少一台虚拟机与所述第二虚拟交换机的连接;
通知所述物理网卡将接收虚拟机流量的虚拟接口由所述第一虚拟交换机对应的虚拟接口组切换为所述第二虚拟交换机对应的虚拟接口组,以使所述物理网卡将需发送至所述至少一台虚拟机的流量发送至所述第二虚拟交换机对应的虚拟接口组,通过所述第二虚拟交换机对应的虚拟接口组接收所述第二虚拟交换机转发的流量。
可选的,在所述通知所述网卡将接收虚拟机流量的虚拟接口由所述第一虚拟交换机对应的虚拟接口组切换为所述第二虚拟交换机对应的虚拟接口组之后,所述方法还包括:
关闭或卸载所述第一虚拟交换机。
可选的,所述通知所述物理网卡切换虚拟接口的步骤,包括:
在确定所述至少一台虚拟机与所述第二虚拟交换机已建立连接后,向所述宿主机中的物理网卡发送虚拟接口切换通知消息,以指示所述网卡切换虚拟接口。
可选的,所述建立所述至少一台虚拟机与所述第二虚拟交换机的连接的步骤,包括:
向所述至少一台虚拟机发送建立连接指令,所述建立连接指令用于指示所述至少一台虚拟机与所述第二虚拟交换机建立连接,以使所述至少一台虚拟机向所述第二虚拟交换机发送队列地址信息。
可选的,所述向所述至少一台虚拟机发送建立连接指令的步骤,包括:
向所述至少一台虚拟机对应的Qemu管理平台发送建立连接指令,以使所述Qemu管理平台向所述第二虚拟交换机发送队列地址信息。
第二方面,本发明实施例提供了一种虚拟交换机切换装置,应用于宿主机,所述宿主机中设置有至少一台虚拟机和物理网卡,所述物理网卡中设置有至少两组虚拟接口,所述装置包括:
指令接收模块,用于接收虚拟交换机的切换指令,所述切换指令用于指示将当前运行的第一虚拟交换机切换为第二虚拟交换机;
交换机启动模块,用于在保持所述第一虚拟交换机运行的情况下,启动所述第二虚拟交换机,并加载所述第二虚拟交换机的配置文件;
连接建立模块,用于建立所述至少一台虚拟机与所述第二虚拟交换机的连接;
接口切换模块,用于通知所述物理网卡将接收虚拟机流量的虚拟接口由所述第一虚拟交换机对应的虚拟接口组切换为所述第二虚拟交换机对应的虚拟接口组,以使所述物理网卡将需发送至所述至少一台虚拟机的流量发送至所述第二虚拟交换机对应的虚拟接口组,通过所述第二虚拟交换机对应的虚拟接口组接收所述第二虚拟交换机转发的流量。
可选的,所述装置还包括:
交换机关闭模块,用于在所述接口切换模块通知所述网卡将接收虚拟机流量的虚拟接口由所述第一虚拟交换机对应的虚拟接口组切换为所述第二虚拟交换机对应的虚拟接口组之后,关闭或卸载所述第一虚拟交换机。
可选的,所述接口切换模块,具体用于:
在确定所述至少一台虚拟机与所述第二虚拟交换机已建立连接后,向所述宿主机中的物理网卡发送虚拟接口切换通知消息,以指示所述网卡切换虚拟接口。
可选的,所述连接建立模块,包括:
连接建立单元,用于向所述至少一台虚拟机发送建立连接指令,所述建立连接指令用于指示所述至少一台虚拟机与所述第二虚拟交换机建立连接,以使所述至少一台虚拟机向所述第二虚拟交换机发送队列地址信息。
可选的,所述连接建立单元,具体用于:
向所述至少一台虚拟机对应的Qemu管理平台发送建立连接指令,以使所述Qemu管理平台向所述第二虚拟交换机发送队列地址信息。
第三方面,本发明实施例提供了一种宿主机,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面所述的虚拟交换机切换方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的虚拟交换机切换方法。
本发明实施例提供的技术方案,宿主机接收到虚拟交换机的切换指令后,在保持第一虚拟交换机运行的情况下,启动第二虚拟交换机,加载第二虚拟交换机的配置文件;并建立至少一台虚拟机与第二虚拟交换机的连接;通知物理网卡切换虚拟接口,将接收虚拟机流量的虚拟接口由第一虚拟交换机对应的虚拟接口组切换为第二虚拟交换机对应的虚拟接口组,从而物理网卡将需发送至至少一台虚拟机的流量发送至第二虚拟交换机对应的虚拟接口组,通过第二虚拟交换机对应的虚拟接口组接收第二虚拟交换机转发的流量。可见,本发明实施例提供的技术方案,在第一虚拟交换机运行的过程中,启动第二虚拟交换机并加载第二虚拟交换机的配置文件,实质上可以在进行物理网卡的虚拟接口组切换时的很短时间暂停通过虚拟交换机交换流量,从而使得宿主机中无可用虚拟交换机的时间缩短,降低了用户的等待时间,提高了用户体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所提供的一种虚拟交换机切换方法的流程图;
图2为本发明实施例所提供的另一种虚拟交换机切换方法的流程图;
图3为本发明实施例所提供的一种虚拟交换机切换装置的示意图;
图4为本发明实施例所提供的一种宿主机的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了使得切换虚拟交换机所消耗的时间缩短,保证宿主机的正常稳定运行,提升用户的体验,本发明实施例提供了一种虚拟交换机切换方法、装置、宿主机及计算机可读存储介质。
第一方面,下面首先对本发明实施例所提供的一种虚拟交换机切换方法进行介绍。
本发明实施例所提供的一种虚拟交换机切换方法,应用于宿主机。虚拟交换机运行于宿主机中,在本发明实施例中,可以将原虚拟交换机,例如旧版本的虚拟交换机称为第一虚拟交换机;将新虚拟交换机,例如新版本的虚拟交换机称为第二虚拟交换机。可以理解的是,本发明实施例所提供的虚拟交换机切换方法用于将第一虚拟交换机切换为第二虚拟交换机。
需要说明的是,本发明实施例中,宿主机中设置有至少一台虚拟机和物理网卡,且该物理网卡中设置有至少两组虚拟接口,每组虚拟接口包括至少一个虚拟接口。为了方案描述清楚,下面将以物理网卡中设置有两组虚拟接口为例进行说明。并且,为了方便描述,可以将这两组虚拟接口描述为:第一组虚拟接口和第二组虚拟接口。其中,第一组虚拟接口为处于活跃状态的虚拟接口,即物理网卡通过该组虚拟接口接收流量或者转发流量;第二组虚拟接口为处于空闲状态的虚拟接口,即物理网卡不通过该组虚拟接口接收流量或者转发流量。
在实际应用中,在第一虚拟交换机处于运行的情况下,物理网卡可以通过第一组虚拟接口接收流量或者转发流量。当宿主机需要将第一虚拟交换机切换至第二虚拟交换机时,物理网卡可以切换虚拟接口,即将第一组虚拟接口切换至第二组虚拟接口。这样,第二组虚拟接口由空闲状态切换至活跃状态,第一组虚拟接口由活跃状态切换至空闲状态。可以理解的是,当宿主机需要再次切换虚拟交换机时,还可以将第二组虚拟接口切换为第一组虚拟接口,即使得第一组虚拟接口由空闲状态切换为活跃状态,而第二组虚拟接口由活跃状态切换为空闲状态。由上述描述可知,第一组虚拟接口的状态和第二组虚拟接口的状态均可以在活跃状态与空闲状态之间切换。
基于上述描述可知,本发明实施例中,设置两组虚拟接口的目的在于,实现虚拟交换机的切换并减少流量停止转发的时间。在虚拟交换机切换过程中,第一组虚拟接口一直可持续工作,即与第一虚拟交换机保持进行流量交互,而在虚拟接口切换时,仅在第一组虚拟接口关停至第二组虚拟接口启动之间的时间停止了虚拟接口与虚拟交换机之间的流量交互,第二组虚拟接口启动后流量交互即恢复正常,因此,这种两组虚拟接口的设置较好的缩短了流量交互的停止时间,有效保证宿主机的正常运行。
如图1所示,本发明实施例提供的一种虚拟交换机切换方法可以包括如下步骤:
S110,接收虚拟交换机的切换指令。
其中,上述切换指令用于指示将当前运行的第一虚拟交换机切换为第二虚拟交换机。
在实际应用中,在开发人员开发出新版本的虚拟交换机后,即开发人员开发出第二虚拟交换机后,需要将运行在宿主机中的第一虚拟交换机切换为第二虚拟交换机。此时,通常来讲,管理宿主机的运维人员,可以发出切换虚拟交换机的指令,从而宿主机接收到虚拟交换机的切换指令。
S120,在保持第一虚拟交换机运行的情况下,启动第二虚拟交换机,并加载第二虚拟交换机的配置文件。
为了使得宿主机无可用虚拟交换机的时间缩短,在启动第二虚拟机,以及加载第二虚拟交换机的配置文件的过程中,仍保持第一虚拟交换机处于运行的状态。即该过程中,第一虚拟交换机仍可以接收流量或者转发流量。
其中,宿主机启动第二虚拟交换机的方式可以为:宿主机向第二虚拟交换机发送启动指令,第二虚拟机接收到启动指令后即可启动。当然,本发明实施了对宿主机启动第二虚拟交换机的方式不做具体限定。
并且,宿主机在启动第二虚拟交换机后,为了使得第二虚拟交换机能够正常运行,宿主机需要加载第二虚拟交换机的配置文件,该配置文件包括虚拟机IP地址、虚拟网络路由信息等配置信息。本发明实施例对该配置文件所包含的配置信息不做具体限定。
S130,建立至少一台虚拟机与第二虚拟交换机的连接。
为了使得虚拟机切换后,通过第二虚拟交换机将需要发送至该至少一台虚拟机的流量转发至该至少一台虚拟机,或者,通过第二虚拟交换机将流量从该至少一台虚拟机转发至流量的目标虚拟机,将该至少一台虚拟机与第二虚拟交换机建立连接。
可以理解的时,宿主机中可以设置有一台虚拟机或者多台虚拟机,为了使得在第二虚拟交换机运行时,能够向任一台虚拟机发送流量,并能够接收任一台虚拟机所发送的流量,可以将宿主机中设置的任一台虚拟机与第二虚拟交换机建立连接。
在一种实施方式中,建立至少一台虚拟机与第二虚拟交换机的连接的步骤,可以包括:
向至少一台虚拟机发送建立连接指令,该建立连接指令用于指示至少一台虚拟机与第二虚拟交换机建立连接,以使至少一台虚拟机向第二虚拟交换机发送队列地址信息,从而实现至少一台虚拟机与第二虚拟交换机的连接。
在该实施方式中,宿主机可以向至少一台虚拟机发送连接指令,该至少一台虚拟机接收到该连接指令后,可以向第二虚拟交换机发送该至少一台虚拟机的队列地址信息。
需要说明的是,虚拟机的队列地址信息为虚拟机的流量缓存队列的地址信息。在第二虚拟交换机得到该至少一台虚拟机的队列地址信息后,可以将流量存储至该至少一台虚拟机的流量缓存队列中,因此,在第二虚拟交换机获取到该至少一台虚拟机的队列地址信息后,可以完成与该至少一台虚拟机的连接。
作为本发明实施例的一种实现形式,宿主机向至少一台虚拟机发送建立连接指令的步骤,可以包括:
向至少一台虚拟机对应的Qemu管理平台发送建立连接指令,以使Qemu管理平台向第二虚拟交换机发送队列地址信息。
Qemu是纯软件实现的虚拟化模拟器,几乎可以模拟任何硬件设备,具体可以参见相关技术,这里不在赘述。在一些具体实施中,宿主机中的至少一台虚拟机对应一个Qemu管理平台,即,宿主机中设置有该Qemu管理平台,用于创建和管理虚拟机,该Qemu管理平台可以获取到该至少一台虚拟机的队列地址信息,因此,宿主机可以向至少一台虚拟机对应的Qemu管理平台发送建立连接指令,Qemu管理平台接收到连接指令后,可以向第二虚拟交换机发送该台虚拟机的队列地址信息。本领域技术人员可以理解的是,Qemu管理平台是一种虚拟化管理平台,在此不再对Qemu管理平台进行赘述。
S140,通知物理网卡将接收虚拟机流量的虚拟接口由第一虚拟交换机对应的虚拟接口组切换为第二虚拟交换机对应的虚拟接口组,以使物理网卡将需发送至至少一台虚拟机的流量发送至第二虚拟交换机对应的虚拟接口组,通过第二虚拟交换机对应的虚拟接口组接收第二虚拟交换机转发的流量。
由上述描述可知,物理网卡中设置有至少两组虚拟接口,第一虚拟交换机与第二虚拟交换机对应不同的虚拟接口组。因此,宿主机在将第一虚拟交换机切换为第二虚拟交换机时,可以通知物理网卡切换虚拟接口,即将接收虚拟机流量的虚拟接口由第一虚拟交换机对应的虚拟接口组切换为第二虚拟交换机对应的虚拟接口组,这样,物理网卡可以将需要发送至至少一台虚拟交换机的流量发送至第二虚拟交换机对应的虚拟接口组,并可以通过第二虚拟交换机对应的虚拟接口组接收第二虚拟交换机转发的流量。至此,宿主机将第一虚拟交换机切换至第二虚拟交换机。
需要说明的是,上述步骤S120至S130的执行期间,基于第一虚拟接口组,第一虚拟交换机仍在正常工作中。可在S140步骤通知物理网卡切换虚拟接口组之后,停止第一虚拟交换机的工作,因此,可以使得仅在物理网卡进行第一虚拟接和第二虚拟接口组切换的这段时间里,停止了虚拟机流量的交互,在第二虚拟接口启用后,虚拟机流量立即开始正常的转发。当然,亦可在S140步骤之前,停止第一虚拟交换机的工作。
在一种实施方式中,宿主机通知物理网卡切换虚拟接口的步骤,可以包括:
在确定至少一台虚拟机与第二虚拟交换机已建立连接后,向宿主机中的物理网卡发送虚拟接口切换通知消息,以指示网卡切换虚拟接口。
宿主机可以实时监控至少一台虚拟交换机与第二虚拟交换机是否建立好连接,并且在确定至少一台虚拟机与第二虚拟交换机已经建立好连接后,可以向宿主机中的物理网卡发送虚拟接口切换通知消息。宿主机中的物理网卡接收到虚拟接口切换通知消息后,可以执行切换虚拟接口的操作,即将接收虚拟机流量的虚拟接口由第一虚拟交换机对应的虚拟接口组切换为第二虚拟交换机对应的虚拟接口组。
可见,本发明实施例提供的技术方案,在第一虚拟交换机运行的过程中,启动第二虚拟交换机并加载第二虚拟交换机的配置文件,从而使得宿主机中无可用虚拟交换机的时间缩短,降低了用户的等待时间,提高了用户体验。
如图2所示,本发明实施例所提供的另一种虚拟交换机切换方法,可以包括如下步骤:
S210,接收虚拟交换机的切换指令。
S220,在保持第一虚拟交换机运行的情况下,启动第二虚拟交换机,并加载第二虚拟交换机的配置文件。
S230,建立至少一台虚拟机与第二虚拟交换机的连接。
S240,通知物理网卡将接收虚拟机流量的虚拟接口由第一虚拟交换机对应的虚拟接口组切换为第二虚拟交换机对应的虚拟接口组,以使物理网卡将需发送至至少一台虚拟机的流量发送至第二虚拟交换机对应的虚拟接口组,通过第二虚拟交换机对应的虚拟接口组接收第二虚拟交换机转发的流量。
由于图2所示实施例的S210至S240与图1所示实施例的S110至140相同,因此,在此不再对S210至S240进行赘述。
S250,关闭或卸载所述第一虚拟交换机。
通过步骤S210至S240,宿主机将第一虚拟交换机切换至第二虚拟交换机,即第二虚拟交换机处于运行状态,而第一虚拟交换机处于未运行状态,因此,为了提高宿主机的资源利用率,宿主机可以关闭第一虚拟交换机,或者卸载第一虚拟交换机。
可见,本发明实施例提供的技术方案,在第一虚拟交换机运行的过程中,启动第二虚拟交换机并加载第二虚拟交换机的配置文件,从而使得宿主机中无可用虚拟交换机的时间缩短,降低了用户的等待时间,提高了用户体验;并且,在将第一虚拟交换机切换至第二虚拟交换机后,可以关闭或卸载第一虚拟交换机,提高了宿主机的资源利用率。
第二方面,本发明实施例还提供了一种虚拟交换机切换装置,应用于宿主机,所述宿主机中设置有至少一台虚拟机和物理网卡,所述物理网卡中设置有至少两组虚拟接口,如图3所示,所述装置可以包括:
指令接收模块310,用于接收虚拟交换机的切换指令,所述切换指令用于指示将当前运行的第一虚拟交换机切换为第二虚拟交换机;
交换机启动模块320,用于在保持所述第一虚拟交换机运行的情况下,启动所述第二虚拟交换机,并加载所述第二虚拟交换机的配置文件;
连接建立模块330,用于建立所述至少一台虚拟机与所述第二虚拟交换机的连接;
接口切换模块340,用于通知所述物理网卡将接收虚拟机流量的虚拟接口由所述第一虚拟交换机对应的虚拟接口组切换为所述第二虚拟交换机对应的虚拟接口组,以使所述物理网卡将需发送至所述至少一台虚拟机的流量发送至所述第二虚拟交换机对应的虚拟接口组,通过所述第二虚拟交换机对应的虚拟接口组接收所述第二虚拟交换机转发的流量。
本发明实施例提供的技术方案,宿主机接收到虚拟交换机的切换指令后,在保持第一虚拟交换机运行的情况下,启动第二虚拟交换机,加载第二虚拟交换机的配置文件;并建立至少一台虚拟机与第二虚拟交换机的连接;通知物理网卡切换虚拟接口,将接收虚拟机流量的虚拟接口由第一虚拟交换机对应的虚拟接口组切换为第二虚拟交换机对应的虚拟接口组,从而物理网卡将需发送至至少一台虚拟机的流量发送至第二虚拟交换机对应的虚拟接口组,通过第二虚拟交换机对应的虚拟接口组接收第二虚拟交换机转发的流量。可见,本发明实施例提供的技术方案,在第一虚拟交换机运行的过程中,启动第二虚拟交换机并加载第二虚拟交换机的配置文件,从而使得宿主机中无可用虚拟交换机的时间缩短,降低了用户的等待时间,提高了用户体验。
可选的,所述装置还可以包括:
交换机关闭模块,用于在所述接口切换模块通知所述网卡将接收虚拟机流量的虚拟接口由所述第一虚拟交换机对应的虚拟接口组切换为所述第二虚拟交换机对应的虚拟接口组之后,关闭或卸载所述第一虚拟交换机。
可选的,所述接口切换模块,具体用于:
在确定所述至少一台虚拟机与所述第二虚拟交换机已建立连接后,向所述宿主机中的物理网卡发送虚拟接口切换通知消息,以指示所述网卡切换虚拟接口。
可选的,所述连接建立模块,包括:
连接建立单元,用于向所述至少一台虚拟机发送建立连接指令,所述建立连接指令用于指示所述至少一台虚拟机与所述第二虚拟交换机建立连接,以使所述至少一台虚拟机向所述第二虚拟交换机发送队列地址信息。
可选的,所述连接建立单元,具体用于:
向所述至少一台虚拟机对应的Qemu管理平台发送建立连接指令,以使所述Qemu管理平台向所述第二虚拟交换机发送队列地址信息。
第三方面,本发明实施例还提供了一种宿主机,如图4所示,包括处理器401、通信接口402、存储器403和通信总线404,其中,处理器401,通信接口402,存储器403通过通信总线404完成相互间的通信,
存储器403,用于存放计算机程序;
处理器401,用于执行存储器403上所存放的程序时,实现第一方面所述的虚拟交换机切换方法。
上述宿主机提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述宿主机与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例提供的技术方案,宿主机接收到虚拟交换机的切换指令后,在保持第一虚拟交换机运行的情况下,启动第二虚拟交换机,加载第二虚拟交换机的配置文件;并建立至少一台虚拟机与第二虚拟交换机的连接;通知物理网卡切换虚拟接口,将接收虚拟机流量的虚拟接口由第一虚拟交换机对应的虚拟接口组切换为第二虚拟交换机对应的虚拟接口组,从而物理网卡将需发送至至少一台虚拟机的流量发送至第二虚拟交换机对应的虚拟接口组,通过第二虚拟交换机对应的虚拟接口组接收第二虚拟交换机转发的流量。可见,本发明实施例提供的技术方案,在第一虚拟交换机运行的过程中,启动第二虚拟交换机并加载第二虚拟交换机的配置文件,从而使得宿主机中无可用虚拟交换机的时间缩短,降低了用户的等待时间,提高了用户体验。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现实现第一方面所述的虚拟交换机切换方法。
本发明实施例提供的技术方案,宿主机接收到虚拟交换机的切换指令后,在保持第一虚拟交换机运行的情况下,启动第二虚拟交换机,加载第二虚拟交换机的配置文件;并建立至少一台虚拟机与第二虚拟交换机的连接;通知物理网卡切换虚拟接口,将接收虚拟机流量的虚拟接口由第一虚拟交换机对应的虚拟接口组切换为第二虚拟交换机对应的虚拟接口组,从而物理网卡将需发送至至少一台虚拟机的流量发送至第二虚拟交换机对应的虚拟接口组,通过第二虚拟交换机对应的虚拟接口组接收第二虚拟交换机转发的流量。可见,本发明实施例提供的技术方案,在第一虚拟交换机运行的过程中,启动第二虚拟交换机并加载第二虚拟交换机的配置文件,从而使得宿主机中无可用虚拟交换机的时间缩短,降低了用户的等待时间,提高了用户体验。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、宿主机、存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (12)
1.一种虚拟交换机切换方法,其特征在于,应用于宿主机,所述宿主机中设置有至少一台虚拟机和物理网卡,所述物理网卡中设置有至少两组虚拟接口,所述方法包括:
接收虚拟交换机的切换指令,所述切换指令用于指示将当前运行的第一虚拟交换机切换为第二虚拟交换机;
在保持所述第一虚拟交换机运行的情况下,启动所述第二虚拟交换机,并加载所述第二虚拟交换机的配置文件;
建立所述至少一台虚拟机与所述第二虚拟交换机的连接;
通知所述物理网卡将接收虚拟机流量的虚拟接口由所述第一虚拟交换机对应的虚拟接口组切换为所述第二虚拟交换机对应的虚拟接口组,以使所述物理网卡将需发送至所述至少一台虚拟机的流量发送至所述第二虚拟交换机对应的虚拟接口组,通过所述第二虚拟交换机对应的虚拟接口组接收所述第二虚拟交换机转发的流量。
2.根据权利要求1所述的方法,其特征在于,在所述通知所述网卡将接收虚拟机流量的虚拟接口由所述第一虚拟交换机对应的虚拟接口组切换为所述第二虚拟交换机对应的虚拟接口组之后,所述方法还包括:
关闭或卸载所述第一虚拟交换机。
3.根据权利要求1或2所述的方法,其特征在于,所述通知所述物理网卡切换虚拟接口的步骤,包括:
在确定所述至少一台虚拟机与所述第二虚拟交换机已建立连接后,向所述宿主机中的物理网卡发送虚拟接口切换通知消息,以指示所述网卡切换虚拟接口。
4.根据权利要求1或2所述的方法,其特征在于,所述建立所述至少一台虚拟机与所述第二虚拟交换机的连接的步骤,包括:
向所述至少一台虚拟机发送建立连接指令,所述建立连接指令用于指示所述至少一台虚拟机与所述第二虚拟交换机建立连接,以使所述至少一台虚拟机向所述第二虚拟交换机发送队列地址信息。
5.根据权利要求4所述的方法,其特征在于,所述向所述至少一台虚拟机发送建立连接指令的步骤,包括:
向所述至少一台虚拟机对应的Qemu管理平台发送建立连接指令,以使所述Qemu管理平台向所述第二虚拟交换机发送队列地址信息。
6.一种虚拟交换机切换装置,其特征在于,应用于宿主机,所述宿主机中设置有至少一台虚拟机和物理网卡,所述物理网卡中设置有至少两组虚拟接口,所述装置包括:
指令接收模块,用于接收虚拟交换机的切换指令,所述切换指令用于指示将当前运行的第一虚拟交换机切换为第二虚拟交换机;
交换机启动模块,用于在保持所述第一虚拟交换机运行的情况下,启动所述第二虚拟交换机,并加载所述第二虚拟交换机的配置文件;
连接建立模块,用于建立所述至少一台虚拟机与所述第二虚拟交换机的连接;
接口切换模块,用于通知所述物理网卡将接收虚拟机流量的虚拟接口由所述第一虚拟交换机对应的虚拟接口组切换为所述第二虚拟交换机对应的虚拟接口组,以使所述物理网卡将需发送至所述至少一台虚拟机的流量发送至所述第二虚拟交换机对应的虚拟接口组,通过所述第二虚拟交换机对应的虚拟接口组接收所述第二虚拟交换机转发的流量。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
交换机关闭模块,用于在所述接口切换模块通知所述网卡将接收虚拟机流量的虚拟接口由所述第一虚拟交换机对应的虚拟接口组切换为所述第二虚拟交换机对应的虚拟接口组之后,关闭或卸载所述第一虚拟交换机。
8.根据权利要求6或7所述的装置,其特征在于,所述接口切换模块,具体用于:
在确定所述至少一台虚拟机与所述第二虚拟交换机已建立连接后,向所述宿主机中的物理网卡发送虚拟接口切换通知消息,以指示所述网卡切换虚拟接口。
9.根据权利要求6或7所述的装置,其特征在于,所述连接建立模块,包括:
连接建立单元,用于向所述至少一台虚拟机发送建立连接指令,所述建立连接指令用于指示所述至少一台虚拟机与所述第二虚拟交换机建立连接,以使所述至少一台虚拟机向所述第二虚拟交换机发送队列地址信息。
10.根据权利要求9所述的装置,其特征在于,所述连接建立单元,具体用于:
向所述至少一台虚拟机对应的Qemu管理平台发送建立连接指令,以使所述Qemu管理平台向所述第二虚拟交换机发送队列地址信息。
11.一种宿主机,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-5任一所述的方法步骤。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-5任一所述的方法步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811495309.7A CN109450701B (zh) | 2018-12-07 | 2018-12-07 | 一种虚拟交换机切换方法、装置、宿主机及计算机可读存储介质 |
PCT/CN2019/121308 WO2020114292A1 (zh) | 2018-12-07 | 2019-11-27 | 一种虚拟交换机切换方法、装置、宿主机及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811495309.7A CN109450701B (zh) | 2018-12-07 | 2018-12-07 | 一种虚拟交换机切换方法、装置、宿主机及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109450701A CN109450701A (zh) | 2019-03-08 |
CN109450701B true CN109450701B (zh) | 2020-04-17 |
Family
ID=65557871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811495309.7A Active CN109450701B (zh) | 2018-12-07 | 2018-12-07 | 一种虚拟交换机切换方法、装置、宿主机及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109450701B (zh) |
WO (1) | WO2020114292A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113285873B (zh) * | 2021-05-18 | 2022-03-11 | 广州锦行网络科技有限公司 | 支持虚拟化构建真实路由的虚实混合的网络*** |
CN116319310A (zh) * | 2021-12-07 | 2023-06-23 | 中兴通讯股份有限公司 | 一种虚拟交换机升级方法、设备、电子设备和存储介质 |
CN114710408A (zh) * | 2022-03-18 | 2022-07-05 | 阿里云计算有限公司 | 实现虚拟交换机热升级的方法及装置 |
CN115086219B (zh) * | 2022-05-31 | 2024-04-09 | 深信服科技股份有限公司 | 一种虚拟路由器确定方法、设备及计算机可读存储介质 |
CN116455746A (zh) * | 2023-04-06 | 2023-07-18 | 中科驭数(北京)科技有限公司 | 一种dpu中虚拟交换机的带流量升级方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103516802A (zh) * | 2013-09-30 | 2014-01-15 | 中国科学院计算技术研究所 | 一种实现跨异构虚拟交换机无缝迁移的方法和装置 |
CN104780071A (zh) * | 2015-04-21 | 2015-07-15 | 杭州华三通信技术有限公司 | 虚拟交换机的升级方法及装置 |
EP3125117A1 (en) * | 2014-03-28 | 2017-02-01 | NTT Docomo, Inc. | Update management system and update management method |
CN107493180A (zh) * | 2016-06-13 | 2017-12-19 | 阿里巴巴集团控股有限公司 | 一种虚拟交换机的升级方法以及装置 |
CN108886476A (zh) * | 2016-03-30 | 2018-11-23 | 华为技术有限公司 | 虚拟交换机数据平面和数据平面迁移的多个提供器框架 |
CN108900441A (zh) * | 2018-07-04 | 2018-11-27 | 联想(北京)有限公司 | 网络切换方法、第一电子设备及可读存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103324532B (zh) * | 2013-06-28 | 2016-05-04 | 东软集团股份有限公司 | 虚拟机的动态迁移方法及*** |
CN108023756B (zh) * | 2016-10-28 | 2021-09-28 | 阿里巴巴集团控股有限公司 | 一种虚拟交换机的升级方法和装置 |
JP6740911B2 (ja) * | 2017-01-16 | 2020-08-19 | 富士通株式会社 | ポート切替プログラム、ポート切替方法、および情報処理装置 |
JP6855906B2 (ja) * | 2017-04-25 | 2021-04-07 | 富士通株式会社 | スイッチプログラム、スイッチング方法及び情報処理装置 |
CN107995129B (zh) * | 2017-11-30 | 2021-12-17 | 锐捷网络股份有限公司 | 一种nfv报文转发方法和装置 |
CN108768895B (zh) * | 2018-05-18 | 2021-02-23 | 华为技术有限公司 | 一种虚拟机迁移的方法及数据中心 |
-
2018
- 2018-12-07 CN CN201811495309.7A patent/CN109450701B/zh active Active
-
2019
- 2019-11-27 WO PCT/CN2019/121308 patent/WO2020114292A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103516802A (zh) * | 2013-09-30 | 2014-01-15 | 中国科学院计算技术研究所 | 一种实现跨异构虚拟交换机无缝迁移的方法和装置 |
EP3125117A1 (en) * | 2014-03-28 | 2017-02-01 | NTT Docomo, Inc. | Update management system and update management method |
CN104780071A (zh) * | 2015-04-21 | 2015-07-15 | 杭州华三通信技术有限公司 | 虚拟交换机的升级方法及装置 |
CN108886476A (zh) * | 2016-03-30 | 2018-11-23 | 华为技术有限公司 | 虚拟交换机数据平面和数据平面迁移的多个提供器框架 |
CN107493180A (zh) * | 2016-06-13 | 2017-12-19 | 阿里巴巴集团控股有限公司 | 一种虚拟交换机的升级方法以及装置 |
CN108900441A (zh) * | 2018-07-04 | 2018-11-27 | 联想(北京)有限公司 | 网络切换方法、第一电子设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2020114292A1 (zh) | 2020-06-11 |
CN109450701A (zh) | 2019-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109450701B (zh) | 一种虚拟交换机切换方法、装置、宿主机及计算机可读存储介质 | |
US9477632B2 (en) | Access proxy for accessing peripheral component interconnect express endpoint device, PCIe exchanger and computer system | |
US6718482B2 (en) | Fault monitoring system | |
CN103201724B (zh) | 在高可用性虚拟机环境中提供高可用性应用程序 | |
US8612973B2 (en) | Method and system for handling interrupts within computer system during hardware resource migration | |
US10417062B2 (en) | Method and apparatus of unloading out of memory processing flow to user space | |
CN109766172B (zh) | 一种异步任务调度方法以及装置 | |
JP7438355B2 (ja) | ノード管理方法、装置、機器、記憶媒体及びシステム | |
EP3522449B1 (en) | Service state transition method and device | |
CN111190854A (zh) | 通信数据处理方法、装置、设备、***和存储介质 | |
CN113067875A (zh) | 基于微服务网关动态流控的访问方法和装置以及设备 | |
CN113760543A (zh) | 资源管理方法、装置、电子设备及计算机可读存储介质 | |
CN110659104B (zh) | 一种业务监控方法及相关设备 | |
CN116431202A (zh) | 一种基于微服务***的无损发版方法、装置和电子设备 | |
CN109032767B (zh) | 异步多进程的业务处理***、方法、装置及存储介质 | |
CN116521324B (zh) | 中断虚拟化处理方法、装置及电子设备 | |
CN112153215A (zh) | 通话处理方法、装置、相关设备及存储介质 | |
CN104572315A (zh) | 实现子***间通信的方法、通信实体及分布式通信*** | |
CN109936462B (zh) | 容灾方法及装置 | |
CN116126457A (zh) | 容器迁移方法和服务器集群 | |
CN111090627B (zh) | 基于池化的日志存储方法、装置、计算机设备及存储介质 | |
CN113676894B (zh) | 业务处理方法及设备 | |
US20220179680A1 (en) | Application state control method apparatus, and terminal and computer-readable storage medium | |
CN104811391B (zh) | 数据包的处理方法、装置及服务器 | |
CN104283950A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |