CN112398687A - 云计算网络的配置方法、云计算网络***以及存储介质 - Google Patents
云计算网络的配置方法、云计算网络***以及存储介质 Download PDFInfo
- Publication number
- CN112398687A CN112398687A CN202011267764.9A CN202011267764A CN112398687A CN 112398687 A CN112398687 A CN 112398687A CN 202011267764 A CN202011267764 A CN 202011267764A CN 112398687 A CN112398687 A CN 112398687A
- Authority
- CN
- China
- Prior art keywords
- virtual
- physical host
- network
- address
- vnic
- 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.)
- Granted
Links
Images
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- 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
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5061—Pools of addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供了一种云计算网络的配置方法、云计算网络***以及存储介质,涉及云计算技术领域,其中的配置方法包括:在物理宿主机中部署虚拟机,在物理宿主机和/或虚拟机中部署容器实例;通过云管理平台为虚拟机配置第一虚拟网卡vNIC,并为容器实例配置第二vNIC;通过云管理平台配置转发模块分别与第一vNIC和第二vNIC连接,通过转发模块并基于报文处理规则在物理宿主机中以及物理宿主机之间进行数据通信;本公开的方法、***以及介质,实现云计算平台中虚拟机与容器混合部署环境下的透传虚拟化直连,使网络结构相较部署结构更加简单,减少虚拟交换机数量,提升网络转发性能,并可以提升容器网络的隔离性,降低网络管理的复杂性。
Description
技术领域
本公开涉及云计算技术领域,尤其涉及一种云计算网络的配置方法、云计算网络***以及存储介质。
背景技术
随着容器技术的发展以及其编排技术的不断完善,越来越多的厂商开始把业务运行在容器中。在目前的使用场景中,虚拟化技术与容器技术结合使用,构建统一的融合平台,虚拟机和容器嵌套部署。在实际的应用场景中,云计算网络中的虚拟机和容器通常是混合部署的,即在物理宿主机中既有单独的虚拟机、容器,又有容器部署在虚拟机当中,并且云计算网络中有各种不同的网络通信与隔离的需求。目前,在云计算网络中,通过在宿主机和虚拟机中设置更多的虚拟交换机对复杂的网络通信与隔离需求进行处理,但是此种方法增加了网络中虚拟交换机的数量,加重了性能上的负担,转发效率并不高。
发明内容
为了解决上述技术问题,提出了本公开。本公开的实施例提供了一种云计算网络的配置方法、云计算网络***以及存储介质。
根据本公开实施例的第一方面,提供一种云计算网络的配置方法,包括:在物理宿主机中部署虚拟机,在所述物理宿主机和/或所述虚拟机中部署容器实例;通过云管理平台为所述虚拟机配置第一虚拟网卡vNIC,并为所述容器实例配置第二vNIC;其中,所述容器实例与所述第二vNIC连接并进行数据透传;在所述物理宿主机中部署转发模块,通过所述云管理平台配置所述转发模块分别与所述第一vNIC和所述第二vNIC连接,并为所述转发模块配置报文处理规则;通过所述转发模块并基于所述报文处理规则在所述物理宿主机中以及所述物理宿主机之间进行数据通信。
可选地,所述物理宿主机的数量为多个,所述转发模块包括:虚拟交换机virtualswitch;在每个物理宿主机中都部署一个virtual switch;所述方法还包括:通过所述云管理平台配置所述virtual switch分别与所述第一vNIC和所述第二vNIC连接;通过所述virtual switch并基于所述报文处理规则对所述物理宿主机中的虚拟机和容器实例之间的交互数据进行转发,对所述物理宿主机中的虚拟机和容器实例与其他物理宿主机中的虚拟机和容器实例之间的交互数据进行封装与解封处理并进行转发。
可选地,通过所述云管理平台基于其存储的网络拓扑信息、IP地址池以及MAC地址池,为所述第一vNIC配置第一虚拟MAC地址和第一IP地址,并为所述第二vNIC配置第二虚拟MAC地址和第二IP地址;通过所述云管理平台并基于其存储的VXLAN网络配置信息,分别为所述虚拟机和所述容器实例配置VXLAN网络标识符VNI。
可选地,所述virtual switch接收到所述物理宿主机中的虚拟机或容器实例发送的业务报文,获取业务报文中的目标MAC地址或目标IP地址;如果所述目标MAC地址为部署在同一物理宿主机中的其他虚拟机的第一虚拟MAC地址或其他容器实例的第二虚拟MAC地址,或者,所述目标IP地址为部署在同一物理宿主机中的其他虚拟机的第一IP地址或其他容器实例的第二IP地址;则所述virtual switch将所述业务报文转发给部署在同一物理宿主机中的其他虚拟机或其他容器实例。
可选地,如果所述目标MAC地址为部署在其他物理宿主机中的虚拟机的第一虚拟MAC地址或容器实例的第二虚拟MAC地址,或者所述目标IP地址为部署在其他物理宿主机中的虚拟机的第一IP地址或容器实例的第二IP地址,所述virtual switch基于业务报文中的VNI判断所述业务报文的来源或目的是否为属于同一VXLAN网络的虚拟机或容器实例;如果是,则所述virtual switch基于预设的VXLAN报文封装规则对业务报文进行封装处理,获得VXLAN报文并通过隧道发送给所述其他物理宿主机中的virtual switch;所述其他物理宿主机中的virtual switch对VXLAN报文进行解封处理,将业务报文发送给所述其他物理宿主机中的虚拟机或容器实例。
可选地,如果判断所述业务报文的来源或目的不为属于同一VXLAN网络的虚拟机或容器实例,则所述virtual switch基于所述目标IP地址发送给所述其他物理宿主机中的virtual switch;所述其他物理宿主机中的virtual switch基于所述目标IP地址将业务报文发送给所述其他物理宿主机中的虚拟机或容器实例。
可选地,通过所述云管理平台对所述物理宿主机的虚拟机或容器实例进行新增或移除处理;所述云管理平台基于与所述新增或移除处理相对应的配置更新信息,对自身存储的所述网络拓扑信息以及此物理宿主机和其他物理宿主机中的virtual switch进行网络信息同步处理。
可选地,如果通过所述云管理平台在所述物理宿主机中增加虚拟机,则为新增的虚拟机配置所述第一vNIC,基于所述MAC地址池和所述IP地址池对所述第一vNIC配置第一虚拟MAC地址以及第一IP地址;如果通过所述云管理平台在所述物理宿主机中移除虚拟机,则对与被移除的虚拟机以及部署在此虚拟机中的全部容器实例进行移除处理,并将被移除的虚拟机的第一虚拟MAC地址和第一IP地址,以及被移除的容器实例的第二虚拟MAC地址和第二IP地址分别回收在对应的所述MAC地址池和所述IP地址池中。
可选地,如果通过所述云管理平台在所述物理宿主机或所述虚拟机中增加容器实例,则为新增的容器实例配置所述第二vNIC,并对所述第二vNIC配置第二虚拟MAC地址和第二IP地址;如果通过所述云管理平台在所述物理宿主机或所述虚拟机中移除容器实例,则在进行移除处理之后,将被移除的容器实例的第二虚拟MAC地址和第二IP地址分别回收在对应的所述MAC地址池和所述IP地址池中。
可选地,在所述物理宿主机中部署虚拟机管理器,所述云管理平台通过所述虚拟机管理器对所述第一vNIC和第二vNIC进行管理和维护;所述容器实例对于被分配给自身的第二vNIC进行管理和配置;其中,所述虚拟机管理器包括:Hypervisor管理器。
根据本公开实施例的第二方面,提供一种云计算网络***,包括:虚拟化资源池、云管理平台和转发模块;所述虚拟化资源池包括:物理宿主机、在物理宿主机中部署的虚拟机、在所述物理宿主机和/或所述虚拟机中部署的容器实例;所述云管理平台,用于为所述虚拟机配置第一虚拟网卡vNIC,并为所述容器实例配置第二vNIC;其中,所述容器实例与所述第二vNIC连接并进行数据透传;配置所述转发模块分别与所述第一vNIC和所述第二vNIC连接,并为所述转发模块配置报文处理规则;所述转发模块,部署在所述物理宿主机中,用于基于所述报文处理规则在所述物理宿主机中以及所述物理宿主机之间进行数据通信。
可选地,所述物理宿主机的数量为多个,所述转发模块包括:虚拟交换机virtualswitch;在每个物理宿主机中都部署一个virtual switch;所述云管理平台,用于配置所述virtual switch分别与所述第一vNIC和所述第二vNIC连接;所述virtual switch,用于基于所述报文处理规则对所述物理宿主机中的虚拟机和容器实例之间的交互数据进行转发,对所述物理宿主机中的虚拟机和容器实例与其他物理宿主机中的虚拟机和容器实例之间的交互数据进行封装与解封处理并进行转发。
可选地,所述云管理平台,用于基于网络拓扑信息、IP地址池以及MAC地址池,为所述第一vNIC配置第一虚拟MAC地址和第一IP地址,并为所述第二vNIC配置第二虚拟MAC地址和第二IP地址;基于VXLAN网络配置信息,分别为所述虚拟机和所述容器实例配置VXLAN网络标识符VNI。
可选地,所述virtual switch,用于接收所述物理宿主机中的虚拟机或容器实例发送的业务报文,获取业务报文中的目标MAC地址或目标IP地址;如果所述目标MAC地址为部署在同一物理宿主机中的其他虚拟机的第一虚拟MAC地址或其他容器实例的第二虚拟MAC地址,或者,所述目标IP地址为部署在同一物理宿主机中的其他虚拟机的第一IP地址或其他容器实例的第二IP地址,则将所述业务报文转发给部署在同一物理宿主机中的其他虚拟机或其他容器实例。
可选地,所述virtual switch,还用于如果所述目标MAC地址为部署在其他物理宿主机中的虚拟机的第一虚拟MAC地址或容器实例的第二虚拟MAC地址,或者所述目标IP地址为部署在其他物理宿主机中的虚拟机的第一IP地址或容器实例的第二IP地址,基于业务报文中的VNI判断所述业务报文的来源或目的是否为属于同一VXLAN网络的虚拟机或容器实例;如果是,则基于预设的VXLAN报文封装规则对业务报文进行封装处理,获得VXLAN报文并通过隧道发送给所述其他物理宿主机中的virtual switch;其中,所述其他物理宿主机中的virtual switch对VXLAN报文进行解封处理,将业务报文发送给所述其他物理宿主机中的虚拟机或容器实例。
可选地,所述virtual switch,还用于如果判断所述业务报文的来源或目的不为属于同一VXLAN网络的虚拟机或容器实例,则基于所述目标IP地址发送给所述其他物理宿主机中的virtual switch;其中,所述其他物理宿主机中的virtual switch基于所述目标IP地址将业务报文发送给所述其他物理宿主机中的虚拟机或容器实例。
可选地,所述云管理平台,用于对所述物理宿主机的虚拟机或容器实例进行新增或移除处理;基于与所述新增或移除处理相对应的配置更新信息,对自身存储的所述网络拓扑信息以及此物理宿主机和其他物理宿主机中的virtual switch进行网络信息同步处理。
可选地,所述云管理平台,具体用于如果在所述物理宿主机中增加虚拟机,则为新增的虚拟机配置所述第一vNIC,基于所述MAC地址池和所述IP地址池对所述第一vNIC配置第一虚拟MAC地址以及第一IP地址;如果在所述物理宿主机中移除虚拟机,则对与被移除的虚拟机以及部署在此虚拟机中的全部容器实例进行移除处理,并将被移除的虚拟机的第一虚拟MAC地址和第一IP地址,以及被移除的容器实例的第二虚拟MAC地址和第二IP地址分别回收在对应的所述MAC地址池和所述IP地址池中。
可选地,所述云管理平台,具体用于如果在所述物理宿主机或所述虚拟机中增加容器实例,则为新增的容器实例配置所述第二vNIC,并对所述第二vNIC配置第二虚拟MAC地址和第二IP地址;如果在所述物理宿主机或所述虚拟机中移除容器实例,则在进行移除处理之后,将被移除的容器实例的第二虚拟MAC地址和第二IP地址分别回收在对应的所述MAC地址池和所述IP地址池中。
可选地,虚拟机管理器,部署在所述物理宿主机中,用于对所述第一vNIC和第二vNIC进行管理和维护;所述容器实例对于被分配给自身的第二vNIC进行管理和配置;其中,所述虚拟机管理器包括:Hypervisor管理器。
根据本公开实施例的第三方面,提供一种云计算网络***,包括:处理器;用于存储所述处理器可执行指令的存储器;所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现如上所述的方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述的方法。
基于本公开上述实施例提供的云计算网络的配置方法、云计算网络***以及存储介质,通过对物理宿主机中的虚拟网卡进行管理,使容器透传直连虚拟网卡,实现云计算平台中虚拟机与容器混合部署环境下的透传虚拟化直连,使所有虚拟机、容器和宿主机处于同一网络平面,通过将容器网络、虚拟机网络合并在同一个网络平面层次,可以有效降低网络管理的复杂性;通过虚拟交换机组建云计算平台中的虚拟网络,能够使网络结构相较部署结构更加简单,减少虚拟交换机数量,提升网络转发性能;通过云管理平台对组网内的虚拟网卡MAC地址以及IP地址进行实时地、动态地分配与调整,可以进行更简洁的网络管理,并可以通过MAC与IP的动态调配提升容器网络的隔离性。
下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其他目的、特征以及优势将变得更加明显。附图用来提供对本公开实施例的进一步的理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1为本公开的云计算网络的配置方法的一个实施例的流程示意图;
图2为本公开的云计算网络的配置方法的一个实施例的虚拟机和容器的部署示意图;
图3为本公开的云计算网络的配置方法的一个实施例中的对虚拟机或容器实例进行新增或移除处理的流程示意图;
图4为本公开的云计算网络的配置方法的一个实施例中的网络管理与虚拟网卡设备管理的示意图;
图5为本公开的云计算网络的配置方法的一个实施例中的报文转发的流程示意图;
图6为本公开的云计算网络的配置方法的一个实施例的网络配置示意图;
图7为本公开的云计算网络***的一个实施例的示意图;
图8为本公开的云计算网络***的另一个实施例的示意图。
具体实施方式
下面将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
还应理解,在本公开实施例中,“多个”可以指两个或者两个以上,“至少一个”可以指一个、两个或两个以上。
还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
另外,本公开中术语“和/或”,仅是一种描述关联对象的关联关系,表示可以存在三种关系,如A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本公开的实施例可以应用于终端设备、计算机***、服务器等电子设备,其可与众多其它通用或者专用计算***环境或配置一起操作。适于与终端设备、计算机***或者服务器等电子设备一起使用的众所周知的终端设备、计算***、环境和/或配置的例子包括但不限于:个人计算机***、服务器计算机***、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的***、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机***、大型计算机***和包括上述任何***的分布式云计算技术环境等等。
终端设备、计算机***、服务器等电子设备可以在由计算机***执行的计算机***可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机***/服务器可以在分布式云计算环境中实施。在分布式云计算环境中,任务可以是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算***存储介质上。
示例性方法
随着技术的发展和不断增加的业务需求,云计算这一针对现有技术进行整合的新的IT服务模式被提出并迅速发展。云计算领域的关键性技术包括虚拟化技术、并行编程技术、海量数据管理、云计算平台管理技术等。其中,虚拟化技术是云计算的基础,实现了云计算的灵活资源分配、提高计算资源的利用率。
虚拟化技术是一种资源管理技术,通过创建虚拟资源(虚拟计算机硬件平台、存储设备、计算机网络资源等)来提供相应服务,其原理是将实体物理资源(网络、内存、服务器等)进行切分,创建出与物理设备具有相同功能和属性的虚拟设备,借此实现资源的共享与复用。虚拟化设备不能够脱离实体物理资源独立运行,但是却可以使用软件方式对其进行分配,从而打破了实体物理设备间不可切割的障碍,使其根据具体的用户或业务需求进行资源调整。
在云计算中,虚拟化技术是一切云上服务与应用的基础。根据虚拟化对象的不同,虚拟化技术可分为存储虚拟化、服务器虚拟化、网络虚拟化等。容器技术很大程度地对现有的信息技术基础架构产生了影响,促进了PaaS、DevOps等领域的发展。随着容器技术的发展以及其编排技术的不断完善,越来越多的厂商开始把业务运行在容器中。
因为容器化环境对网络的需求与传统物理机、虚拟化环境对网络的需求非常不一样,容器化网络发展相对滞后,且是制约各类容器方案落地的重要因素。目前,针对容器的网络方案主要有路由方案与隧道方案两种类型,路由方案有MacVlan、Calico等,隧道方案有Weave、Flannel、OVS等。
现有的云计算网络中存在有大量的虚拟机和容器混合部署的场景。云计算网络中的虚拟机和容器通常是混合部署的,即在物理宿主机中既有单独的虚拟机、容器,又有容器部署在虚拟机;云计算网络中有各种不同的网络通信与隔离的需求,例如:同一宿主机中的容器需要与虚拟机进行网络通讯、不同宿主机中的容器需要相互通信、不同宿主机中的虚拟机和容器属于同一租户,需要与其他网络进行网络隔离等。在宿主机和虚拟机中设置更多的虚拟交换机,用以满足复杂的网络通信与隔离需求,增加了网络中虚拟交换机的数量,加重了性能上的负担,转发效率并不高。
图1为本公开的云计算网络的配置方法的一个实施例的流程示意图,如图1所示的方法包括步骤:S101-S104。下面对各步骤分别进行说明。
S101,在物理宿主机中部署虚拟机,在物理宿主机和/或虚拟机中部署容器实例。虚拟机可以为现有的多种虚拟机,容器实例可以为多种虚拟化的容器实例。
S102,通过云管理平台为虚拟机配置第一虚拟网卡vNIC(Virtual NetworkInterface Card),并为容器实例配置第二vNIC;其中,容器实例与第二vNIC连接并进行数据透传。
在一个实施例中,第一vNIC和第二vNIC可以为现有的多种vNIC。容器实例可以使用现有的透传技术与第二vNIC连接并进行数据透传。
S103,在物理宿主机中部署转发模块,通过云管理平台配置转发模块分别与第一vNIC和第二vNIC连接,并为转发模块配置报文处理规则。报文处理规则可以包括对业务报文的封装、解封等规则,报文处理规则也可以包括用于进行报文转发的转发流表等,转发流表由云管理平台进行维护和更新。
S104,通过转发模块并基于报文处理规则在物理宿主机中以及物理宿主机之间进行数据通信。
在一个实施例,物理宿主机的数量为多个,转发模块包括虚拟交换机virtualswitch等,在每个物理宿主机中都部署一个virtual switch。如图2所示,云管理平台存储有完整的网络拓扑信息,网络拓扑信息包括虚拟机、容器实例、vNIC、virtual switch的信息以及部署信息等。云管理平台维护网络中的公共IP池,按需为不同的虚拟机或容器实例分配所需网段的IP地址;云管理平台还存储全部的虚拟网卡信息,维护与管理网络中的虚拟网卡的MAC地址。容器是独立运行的一个或一组应用、以及运行环境,可以通过Docker等应用容器引擎部署容器实例。当对容器实例分配了第二vNIC后,容器实例可以对被分配给自身的第二vNIC进行管理和配置,例如配置第二vNIC是否启用、删除第二vNIC等。
云计算业务节点,即物理宿主机上运行着有关于具体业务的虚拟机与容器实例。每台物理宿主机中运行有virtual switch虚拟交换机和Hypervisor虚拟机管理器。virtual switch连接容器实例、虚拟机以及其他宿主机中的virtual switch,完成报文的交换转发。虚拟机管理器负责协调与管理物理宿主机中的物理网卡以及虚拟机和容器实例所使用的虚拟网卡。
通过透传虚拟化技术可以利用物理宿主机中的虚拟网卡与物理宿主机中的容器实例或是嵌套在虚拟机中的容器实例进行直连,提高容器网络通信的效率;对于部署的虚拟机与容器实例,能够使其网卡与宿主机网卡处于同一平面中,通过virtual switch进行交换,虚拟机网络与容器网络不再受其部署方式的约束,都处于逻辑上的平行关系,因此,可以大量减少因混合部署而带来的更多交换次数,以及存在的网络隔离困难。
在一个实施例中,对于直接部署在物理宿主机中的容器实例,将主机中的虚拟网卡直接分配给容器实例;对于部署在虚拟机中的容器实例,则通过透传虚拟化技术将虚拟机网卡分配给虚拟机中的容器实例。将混合部署环境中的所有虚拟机、容器实例和宿主机放置在同一平面,通过virtual switch进行连接,从而构建以virtual switch为连接体的虚拟网络。云计算网络由云管理平台进行管理,能够实现网络中的跨主机通信与网络隔离;通过将容器网络、虚拟机网络合并在同一个网络平面层次,可以有效降低网络管理的复杂性。
图3为本公开的云计算网络的配置方法的一个实施例中的对虚拟机或容器实例进行新增或移除处理的流程示意图,如图3所示的方法包括步骤:S301-S302。下面对各步骤分别进行说明。
S301,通过云管理平台对物理宿主机的虚拟机或容器实例进行新增或移除处理。
S302,云管理平台基于与新增或移除处理相对应的配置更新信息,对自身存储的网络拓扑信息以及此物理宿主机和其他物理宿主机中的virtual switch进行网络信息同步处理。
云管理平台将更新的网络信息同步到所有物理宿主机的virtual switch,由virtual switch进行交换流表等的修改、更新操作。
在一个实施例中,如果通过云管理平台在物理宿主机中增加虚拟机,则为新增的虚拟机配置第一vNIC,基于MAC地址池和IP地址池对第一vNIC配置第一虚拟MAC地址以及第一IP地址。
如果通过云管理平台在物理宿主机中移除虚拟机,则对与被移除的虚拟机以及部署在此虚拟机中的全部容器实例进行移除处理,并将被移除的虚拟机的第一虚拟MAC地址和第一IP地址,以及被移除的容器实例的第二虚拟MAC地址和第二IP地址分别回收在对应的MAC地址池和IP地址池中。
如果通过云管理平台在物理宿主机或虚拟机中增加容器实例,则为新增的容器实例配置第二vNIC,并对第二vNIC配置第二虚拟MAC地址和第二IP地址。如果通过云管理平台在物理宿主机或虚拟机中移除容器实例,则在进行移除处理之后,将被移除的容器实例的第二虚拟MAC地址和第二IP地址分别回收在对应的MAC地址池和IP地址池中。
在一个实施例中,在物理宿主机中部署虚拟机管理器,云管理平台通过虚拟机管理器对第一vNIC和第二vNIC进行管理和维护。虚拟机管理器包括Hypervisor管理器等。
当用户通过云管理平台操作改变云计算网络中的拓扑结构时,云管理平台更新其存储的网络拓扑信息,并根据更新的类型进行后续相关操作。如果新增虚拟机或容器实例,云管理平台根据其当前的MAC信息为新增的容器实例或虚拟机分配MAC地址并记录。
物理宿主机上的Hypervisor管理器为新增的容器实例或虚拟机创建新的虚拟网卡并设置云管理平台分配的MAC地址。云管理平台会根据需求为该容器实例或虚拟机分配IP地址。物理宿主机内的虚拟机以及容器实例都配置有独立的MAC地址、IP地址,虚拟机与容器实例之间虽然是嵌套部署,但在逻辑上可视为平行关系,并且都连接到同一virtualswitch上。
如果关闭或移除容器实例或虚拟机,云管理平台在更新网络拓扑信息后回收其MAC与IP,并将更改消息发送至此物理宿主机和其他物理宿主机中的virtual switch进行处理,并由Hypervisor管理器进行虚拟网卡的处理。
在一个实施例中,如图4所示,云管理平台中储存有网络拓扑信息,并同时维护有整个云计算网络的公共IP池和所有物理宿主机中的虚拟网卡的MAC信息(MAC地址池),通过上述信息的相互协调,可以为虚拟机或容器实例实时地、动态地分配虚拟网卡MAC地址与IP地址。
虚拟网卡的管理与维护由每台宿主机中的Hypervisor管理器处理。在云管理平台上管理与维护网络中的虚拟网卡MAC和IP地址信息,通过为网络中的容器实例或虚拟机分配MAC地址与IP地址进行网络的隔离与管理,使网络结构更简洁,容器网络的隔离性更好。
图5为本公开的云计算网络的配置方法的一个实施例中的报文转发的流程示意图,如图5所示的方法包括步骤:S501-S502。下面对各步骤分别进行说明。
S501,通过云管理平台配置virtual switch分别与第一vNIC和第二vNIC连接。
S502,通过virtual switch并基于报文处理规则对物理宿主机中的虚拟机和容器实例之间的交互数据进行转发,对物理宿主机中的虚拟机和容器实例与其他物理宿主机中的虚拟机和容器实例之间的交互数据进行封装与解封处理并进行转发。
在一个实施例中,通过云管理平台基于其存储的网络拓扑信息、IP地址池以及MAC地址池,为第一vNIC配置第一虚拟MAC地址和第一IP地址,并为第二vNIC配置第二虚拟MAC地址和第二IP地址。通过云管理平台并基于其存储的VXLAN(Virtual Extensible LocalArea Network,虚拟扩展局域网)网络配置信息,分别为虚拟机和容器实例配置VXLAN网络标识符VNI(VXLAN Network Identifier)。
virtual switch接收到物理宿主机中的虚拟机或容器实例发送的业务报文,获取业务报文中的目标MAC地址或目标IP地址;如果目标MAC地址为部署在同一物理宿主机中的其他虚拟机的第一虚拟MAC地址或其他容器实例的第二虚拟MAC地址,或者,目标IP地址为部署在同一物理宿主机中的其他虚拟机的第一IP地址或其他容器实例的第二IP地址,则virtual switch将业务报文转发给部署在同一物理宿主机中的其他虚拟机或其他容器实例。
如果目标MAC地址为部署在其他物理宿主机中的虚拟机的第一虚拟MAC地址或容器实例的第二虚拟MAC地址,或者目标IP地址为部署在其他物理宿主机中的虚拟机的第一IP地址或容器实例的第二IP地址,virtual switch基于业务报文中的VNI判断业务报文的来源或目的是否为属于同一VXLAN网络的虚拟机或容器实例。
如果业务报文的来源或目的为属于同一VXLAN网络的虚拟机或容器实例,则virtual switch基于预设的VXLAN报文封装规则对业务报文进行封装处理,获得VXLAN报文并通过VXLAN隧道发送给其他物理宿主机中的virtual switch。可以使用现有的VXLAN报文封装与转发方法,对业务报文进行封装并通过VXLAN隧道转发。其他物理宿主机中的virtual switch对VXLAN报文进行解封处理,将业务报文发送给其他物理宿主机中的虚拟机或容器实例。可以使用现有的VXLAN报文解封处理方法对VXLAN报文进行解封处理,基于MAC地址或IP地址发送给物理宿主机中的虚拟机或容器实例。
如果判断业务报文的来源或目的不为属于同一VXLAN网络的虚拟机或容器实例,则virtual switch基于目标IP地址发送给其他物理宿主机中的virtual switch。其他物理宿主机中的virtual switch基于目标IP地址将业务报文发送给其他物理宿主机中的虚拟机或容器实例。
在一个实施例中,如图6所示,云管理平台为虚拟机分配的虚拟MAC地址为8C-23-5A-78-27-DC,为容器实例分配虚拟MAC地址为9C-23-5A-78-27-DB,该虚拟MAC地址被记录在云管理平台中,并可由云管理平台进行分类。云管理平台可为虚拟机以及容器实例分配IP地址,可以根据具体地业务需求分配私网地址或公网IP地址。
如6图所示,虚拟机被分配了私网地址,而容器实例需要接入互联网,则为其在公共IP池中分配可使用的公网IP地址116.21.254.149。这些配置信息会相互协调进行更新,并通过物理宿主机中的虚拟机管理器进行具体的协调实现。
同一租户的容器实例或虚拟机资源可能处于不同的物理宿主机中,通过设置VXLAN可以实现租户的网络隔离。云管理平台在分配IP地址时,同时可以为其分配VXLAN网络信息。
如图6所示,宿主机A中的容器b与容器B中的容器c和虚拟机c属于同一个VNI5030的VXLAN网络。VNI是VXLAN网络标识符,用于区分VXLAN段。一个VNI表示一个租户,即使多个终端用户属于同一个VNI,也表示一个租户。而不同VXLAN段的设备之间不能直接进行二层通信。当需要提供部分容器与虚拟机间的隔离、同一虚拟机内容器进行隔离时,可以利用MAC地址进行隔离,也可以通过VALN、XVLAN进行隔离。
当同一VNI网络下的容器进行跨主机通信时,例如容器b和容器c需要进行通信,virtual switch对容器b发出的数据报文进行VXLAN的封装,其中,virtual switch中存储的VXLAN信息来自于云管理平台。virtual switch将封装后的VXLAN报文发送至目的宿主机B后,由目的宿主机B的virtual switch进行识别VNI并对数据报文解封装,通过虚拟网卡发送至容器c。
当不同VNI网络下的容器进行跨主机通信时,需要在云管理平台的控制下,由第三层的网关进行转发,云管理平台负责提供转发的安全控制。当容器需要与外网进行通信时,例如容器a,由云管理平台为其在公共IP池中选取可用的公网IP,并配置修改其所直连的虚拟网卡,以此达到与外网进行通信。
示例性装置
在一个实施例中,如图7所示,本公开提供一种云计算网络***,包括:虚拟化资源池、云管理平台73和转发模块。虚拟化资源池包括物理宿主机71和72、在物理宿主机71,72中部署的虚拟机710,711,712,720,721,722以及在虚拟机711,712,721,722中部署的容器实例7111,7112,7121,7122,7211,7212,7221,7222、在物理宿主机71,72中部署的容器实例71n1,72n1等。下面以物理宿主机71为例进行说明。
云管理平台73为虚拟机710,711,712配置第一虚拟网卡Vnic 7101,7115,7125,并为容器实例7111,7112,7121,7122,71n1配置第二Vnic 7113,7114,7123,7124,71n2;其中,容器实例7111,7112,7121,7122,71n1与第二vNIC7113,7114,7123,7124,71n2连接并进行数据透传。
云管理平台73配置转发模块分别与第一vNIC 7101,7115,7125和第二vNIC7113,7114,7123,7124,71n2连接,并为转发模块配置报文处理规则。转发模块部署在物理宿主机71中,用于基于报文处理规则在物理宿主机71中以及物理宿主机71和物理宿主机72之间进行数据通信。虚拟机管理器714,724分别部署在物理宿主机71,72中,用于对第一vNIC和第二vNIC进行管理和维护,虚拟机管理器714,724包括Hypervisor管理器等。
在一个实施例中,物理宿主机的数量为两个、三个、四个等,例如,物理宿主机的数量为两个。下面以物理宿主机71为例进行说明。转发模块包括虚拟交换机virtual switch。在物理宿主机71中部署一个virtual switch 713。云管理平台73配置virtual switch分别与第一vNIC 7101,7115,7125和第二vNIC7113,7114,7123,7124,71n2连接。
Virtual switch 713基于报文处理规则对物理宿主机71中的虚拟机710,711,712和容器实例7111,7112,7121,7122,71n1之间的交互数据进行转发,对物理宿主机71中的虚拟机710,711,712和容器实例7111,7112,7121,7122,71n1与其他物理宿主机72中的虚拟机720,721,722和容器实例7211,7212,7221,72n1之间的交互数据进行封装与解封处理并进行转发。
在一个实施例中,云管理平台73基于网络拓扑信息、IP地址池以及MAC地址池,为第一vNIC 7101,7115,7125分别配置第一虚拟MAC地址和第一IP地址,并为第二vNIC 7113,7114,7123,7124,71n2分别配置第二虚拟MAC地址和第二IP地址。云管理平台73基于VXLAN网络配置信息,分别为虚拟机710,711,712和容器实例7111,7112,7121,7122,71n1配置VXLAN网络标识符VNI。
virtual switch 713用于接收物理宿主机71中的虚拟机或容器实例发送的业务报文,获取业务报文中的目标MAC地址或目标IP地址。如果目标MAC地址为部署在同一物理宿主机71中的其他虚拟机的第一虚拟MAC地址或其他容器实例的第二虚拟MAC地址,或者,目标IP地址为部署在同一物理宿主机71中的其他虚拟机的第一IP地址或其他容器实例的第二IP地址,则将业务报文转发给部署在同一物理宿主机71中的其他虚拟机或其他容器实例。
如果目标MAC地址为部署在其他物理宿主机72中的虚拟机的第一虚拟MAC地址或容器实例的第二虚拟MAC地址,或者目标IP地址为部署在其他物理宿主机72中的虚拟机的第一IP地址或容器实例的第二IP地址,virtual switch713基于业务报文中的VNI判断业务报文的来源或目的是否为属于同一VXLAN网络的虚拟机或容器实例。
如果判断业务报文的来源或目的为属于同一VXLAN网络的虚拟机或容器实例,则virtual switch 713基于预设的VXLAN报文封装规则对业务报文进行封装处理,获得VXLAN报文并通过隧道发送给其他物理宿主机72中的virtual switch723;其中,其他物理宿主机72中的virtual switch 723对VXLAN报文进行解封处理,将业务报文发送给其他物理宿主机723中的虚拟机或容器实例。
如果判断业务报文的来源或目的不为属于同一VXLAN网络的虚拟机或容器实例,则virtual switch 713基于目标IP地址发送给其他物理宿主机72中的virtual switch723;其中,其他物理宿主机72中的virtual switch 723基于目标IP地址将业务报文发送给其他物理宿主机72中的虚拟机或容器实例。
在一个实施例中,云管理平台73对物理宿主机71中的虚拟机或容器实例进行新增或移除处理。云管理平台73基于与新增或移除处理相对应的配置更新信息,对自身存储的网络拓扑信息以及此物理宿主机71和其他物理宿主机72中的virtual switch进行网络信息同步处理。
云管理平台73如果在物理宿主机71中增加虚拟机,则为新增的虚拟机配置第一vNIC,基于MAC地址池和IP地址池对第一vNIC配置第一虚拟MAC地址以及第一IP地址。如果在物理宿主机71中移除虚拟机,则对与被移除的虚拟机以及部署在此虚拟机中的全部容器实例进行移除处理,并将被移除的虚拟机的第一虚拟MAC地址和第一IP地址,以及被移除的容器实例的第二虚拟MAC地址和第二IP地址分别回收在对应的MAC地址池和IP地址池中。
云管理平台73如果在物理宿主机71或物理宿主机71中的虚拟机中增加容器实例,则为新增的容器实例配置第二vNIC,并对第二vNIC配置第二虚拟MAC地址和第二IP地址。如果在物理宿主机71或物理宿主机71中的虚拟机中移除容器实例,则云管理平台73在进行移除处理之后,将被移除的容器实例的第二虚拟MAC地址和第二IP地址分别回收在对应的MAC地址池和IP地址池中。
图8为本公开的云计算网络***的另一个实施例的示意图,如图8所示,云计算网络***81包括一个或多个处理器811和存储器812。
处理器811可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制云计算网络***81中的其他组件以执行期望的功能。
存储器812可以包括一个或多个计算机程序产品,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器,例如,可以包括:随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。非易失性存储器,例如,可以包括:只读存储器(ROM)、硬盘以及闪存等。在计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器811可以运行程序指令,以实现上文的本公开的各个实施例的云计算网络的配置方法以及/或者其他期望的功能。在计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
在一个示例中,云计算网络***81还可以包括:输入装置813以及输出装置814等,这些组件通过总线***和/或其他形式的连接机构(未示出)互连。此外,该输入设备813还可以包括例如键盘、鼠标等等。该输出装置814可以向外部输出各种信息。该输出设备814可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图8中仅示出了该云计算网络***81中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,云计算网络***81还可以包括任何其他适当的组件。
除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,计算机程序指令在被处理器运行时使得处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的云计算网络的配置方法中的步骤。
计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的云计算网络的配置方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列举)可以包括:具有一个或者多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势以及效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
上述实施例中的云计算网络的配置方法、云计算网络***以及存储介质,通过对物理宿主机中的虚拟网卡进行管理,实现云计算平台中虚拟机与容器混合部署环境下的透传虚拟化直连,使所有虚拟机、容器和宿主机处于同一网络平面;通过将容器网络、虚拟机网络合并在同一个网络平面层次,可以有效降低网络管理的复杂性;通过虚拟交换机组建云计算平台中的虚拟网络,能够使网络结构相较部署结构更加简单,减少虚拟交换机数量,提升网络转发性能;通过云管理平台对组网内的虚拟网卡MAC地址以及IP地址进行实时地、动态地分配与调整,可以进行更简洁的网络管理,并可以通过MAC与IP的动态调配提升容器网络的隔离性。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于***实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本公开中涉及的器件、装置、设备、***的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备以及***。诸如“包括”、“包含、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
提供所公开的方面的以上描述,以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改等对于本领域技术人员而言,是非常显而易见的,并且在此定义的一般原理可以应用于其他方面,而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式中。尽管以上已经讨论了多个示例方面以及实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
Claims (10)
1.一种云计算网络的配置方法,包括:
在物理宿主机中部署虚拟机,在所述物理宿主机和/或所述虚拟机中部署容器实例;
通过云管理平台为所述虚拟机配置第一虚拟网卡vNIC,并为所述容器实例配置第二vNIC;其中,所述容器实例与所述第二vNIC连接并进行数据透传;
在所述物理宿主机中部署转发模块,通过所述云管理平台配置所述转发模块分别与所述第一vNIC和所述第二vNIC连接,并为所述转发模块配置报文处理规则;
通过所述转发模块并基于所述报文处理规则在所述物理宿主机中以及所述物理宿主机之间进行数据通信。
2.如权利要求1所述的方法,其中,所述物理宿主机的数量为多个,所述转发模块包括:虚拟交换机virtual switch;在每个物理宿主机中都部署一个virtual switch;所述方法还包括:
通过所述云管理平台配置所述virtual switch分别与所述第一vNIC和所述第二vNIC连接;
通过所述virtual switch并基于所述报文处理规则对所述物理宿主机中的虚拟机和容器实例之间的交互数据进行转发,对所述物理宿主机中的虚拟机和容器实例与其他物理宿主机中的虚拟机和容器实例之间的交互数据进行封装与解封处理并进行转发。
3.如权利要求2所述的方法,还包括:
通过所述云管理平台基于其存储的网络拓扑信息、IP地址池以及MAC地址池,为所述第一vNIC配置第一虚拟MAC地址和第一IP地址,并为所述第二vNIC配置第二虚拟MAC地址和第二IP地址;
通过所述云管理平台并基于其存储的VXLAN网络配置信息,分别为所述虚拟机和所述容器实例配置VXLAN网络标识符VNI。
4.如权利要求3所述的方法,还包括:
所述virtual switch接收到所述物理宿主机中的虚拟机或容器实例发送的业务报文,获取业务报文中的目标MAC地址或目标IP地址;
如果所述目标MAC地址为部署在同一物理宿主机中的其他虚拟机的第一虚拟MAC地址或其他容器实例的第二虚拟MAC地址,或者,所述目标IP地址为部署在同一物理宿主机中的其他虚拟机的第一IP地址或其他容器实例的第二IP地址,则所述virtual switch将所述业务报文转发给部署在同一物理宿主机中的其他虚拟机或其他容器实例。
5.如权利要求4所述的方法,还包括:
如果所述目标MAC地址为部署在其他物理宿主机中的虚拟机的第一虚拟MAC地址或容器实例的第二虚拟MAC地址,或者所述目标IP地址为部署在其他物理宿主机中的虚拟机的第一IP地址或容器实例的第二IP地址,所述virtual switch基于业务报文中的VNI判断所述业务报文的来源或目的是否为属于同一VXLAN网络的虚拟机或容器实例;
如果是,则所述virtual switch基于预设的VXLAN报文封装规则对业务报文进行封装处理,获得VXLAN报文并通过隧道发送给所述其他物理宿主机中的virtual switch;
所述其他物理宿主机中的virtual switch对VXLAN报文进行解封处理,将业务报文发送给所述其他物理宿主机中的虚拟机或容器实例。
6.如权利要求5所述的方法,还包括:
如果判断所述业务报文的来源或目的不为属于同一VXLAN网络的虚拟机或容器实例,则所述virtual switch基于所述目标IP地址发送给所述其他物理宿主机中的virtualswitch;
所述其他物理宿主机中的virtual switch基于所述目标IP地址将业务报文发送给所述其他物理宿主机中的虚拟机或容器实例。
7.如权利要求3所述的方法,还包括:
通过所述云管理平台对所述物理宿主机的虚拟机或容器实例进行新增或移除处理;
所述云管理平台基于与所述新增或移除处理相对应的配置更新信息,对自身存储的所述网络拓扑信息以及此物理宿主机和其他物理宿主机中的virtual switch进行网络信息同步处理。
8.一种云计算网络***,包括:
虚拟化资源池、云管理平台和转发模块;
所述虚拟化资源池包括:物理宿主机、在物理宿主机中部署的虚拟机、在所述物理宿主机和/或所述虚拟机中部署的容器实例;
所述云管理平台,用于为所述虚拟机配置第一虚拟网卡vNIC,并为所述容器实例配置第二vNIC;其中,所述容器实例与所述第二vNIC连接并进行数据透传;配置所述转发模块分别与所述第一vNIC和所述第二vNIC连接,并为所述转发模块配置报文处理规则;
所述转发模块,部署在所述物理宿主机中,用于基于所述报文处理规则在所述物理宿主机中以及所述物理宿主机之间进行数据通信。
9.一种云计算网络***,包括:
处理器;用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011267764.9A CN112398687B (zh) | 2020-11-13 | 2020-11-13 | 云计算网络的配置方法、云计算网络***以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011267764.9A CN112398687B (zh) | 2020-11-13 | 2020-11-13 | 云计算网络的配置方法、云计算网络***以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112398687A true CN112398687A (zh) | 2021-02-23 |
CN112398687B CN112398687B (zh) | 2023-04-18 |
Family
ID=74599345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011267764.9A Active CN112398687B (zh) | 2020-11-13 | 2020-11-13 | 云计算网络的配置方法、云计算网络***以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112398687B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113553137A (zh) * | 2021-06-17 | 2021-10-26 | 中国人民解放军战略支援部队信息工程大学 | 一种nfv架构下基于dpdk的接入能力网元高速数据处理方法 |
CN113765816A (zh) * | 2021-08-02 | 2021-12-07 | 阿里巴巴新加坡控股有限公司 | 一种基于服务网格的流量控制方法、***、设备及介质 |
CN114465847A (zh) * | 2022-01-21 | 2022-05-10 | 中国船舶重工集团公司第七0九研究所 | 一种基于容器的动态冗余可靠***和方法 |
CN114629844A (zh) * | 2022-02-28 | 2022-06-14 | 浙江大华技术股份有限公司 | 一种报文转发的方法、装置及电子设备 |
CN114726773A (zh) * | 2022-03-23 | 2022-07-08 | 阿里云计算有限公司 | 云网络***、报文转发方法、芯片及云网关设备 |
CN116820686A (zh) * | 2023-08-29 | 2023-09-29 | 苏州浪潮智能科技有限公司 | 物理机的部署方法、虚拟机和容器统一监控的方法及装置 |
CN117118774A (zh) * | 2023-10-23 | 2023-11-24 | 杭州优云科技有限公司 | 二层网络下云计算网关的接入方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110090910A1 (en) * | 2009-10-16 | 2011-04-21 | Sun Microsystems, Inc. | Enhanced virtual switch |
US20160378518A1 (en) * | 2015-06-29 | 2016-12-29 | Vmware, Inc. | Policy based provisioning of containers |
CN107276826A (zh) * | 2017-07-24 | 2017-10-20 | 郑州云海信息技术有限公司 | 一种容器网络配置方法和装置 |
WO2018112709A1 (zh) * | 2016-12-19 | 2018-06-28 | 华为技术有限公司 | 一种数据包处理方法、主机和*** |
CN110704155A (zh) * | 2018-07-09 | 2020-01-17 | 阿里巴巴集团控股有限公司 | 容器网络构建方法及装置、物理主机、数据传输方法 |
-
2020
- 2020-11-13 CN CN202011267764.9A patent/CN112398687B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110090910A1 (en) * | 2009-10-16 | 2011-04-21 | Sun Microsystems, Inc. | Enhanced virtual switch |
US20160378518A1 (en) * | 2015-06-29 | 2016-12-29 | Vmware, Inc. | Policy based provisioning of containers |
WO2018112709A1 (zh) * | 2016-12-19 | 2018-06-28 | 华为技术有限公司 | 一种数据包处理方法、主机和*** |
US20180302243A1 (en) * | 2016-12-19 | 2018-10-18 | Huawei Technologies Co., Ltd. | Data Packet Processing Method, Host, and System |
CN107276826A (zh) * | 2017-07-24 | 2017-10-20 | 郑州云海信息技术有限公司 | 一种容器网络配置方法和装置 |
CN110704155A (zh) * | 2018-07-09 | 2020-01-17 | 阿里巴巴集团控股有限公司 | 容器网络构建方法及装置、物理主机、数据传输方法 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113553137B (zh) * | 2021-06-17 | 2022-11-01 | 中国人民解放军战略支援部队信息工程大学 | 一种nfv架构下基于dpdk的接入能力网元高速数据处理方法 |
CN113553137A (zh) * | 2021-06-17 | 2021-10-26 | 中国人民解放军战略支援部队信息工程大学 | 一种nfv架构下基于dpdk的接入能力网元高速数据处理方法 |
CN113765816A (zh) * | 2021-08-02 | 2021-12-07 | 阿里巴巴新加坡控股有限公司 | 一种基于服务网格的流量控制方法、***、设备及介质 |
CN113765816B (zh) * | 2021-08-02 | 2023-12-15 | 阿里巴巴新加坡控股有限公司 | 一种基于服务网格的流量控制方法、***、设备及介质 |
CN114465847A (zh) * | 2022-01-21 | 2022-05-10 | 中国船舶重工集团公司第七0九研究所 | 一种基于容器的动态冗余可靠***和方法 |
CN114465847B (zh) * | 2022-01-21 | 2024-05-28 | 中国船舶重工集团公司第七0九研究所 | 一种基于容器的动态冗余可靠***和方法 |
CN114629844B (zh) * | 2022-02-28 | 2024-04-05 | 浙江大华技术股份有限公司 | 一种报文转发的方法、装置及电子设备 |
CN114629844A (zh) * | 2022-02-28 | 2022-06-14 | 浙江大华技术股份有限公司 | 一种报文转发的方法、装置及电子设备 |
CN114726773A (zh) * | 2022-03-23 | 2022-07-08 | 阿里云计算有限公司 | 云网络***、报文转发方法、芯片及云网关设备 |
CN116820686A (zh) * | 2023-08-29 | 2023-09-29 | 苏州浪潮智能科技有限公司 | 物理机的部署方法、虚拟机和容器统一监控的方法及装置 |
CN116820686B (zh) * | 2023-08-29 | 2024-01-09 | 苏州浪潮智能科技有限公司 | 物理机的部署方法、虚拟机和容器统一监控的方法及装置 |
CN117118774B (zh) * | 2023-10-23 | 2024-02-27 | 杭州优云科技有限公司 | 二层网络下云计算网关的接入方法及装置 |
CN117118774A (zh) * | 2023-10-23 | 2023-11-24 | 杭州优云科技有限公司 | 二层网络下云计算网关的接入方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112398687B (zh) | 2023-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112398687B (zh) | 云计算网络的配置方法、云计算网络***以及存储介质 | |
US9602307B2 (en) | Tagging virtual overlay packets in a virtual networking system | |
US10757072B2 (en) | Packet transmission method, apparatus, and system | |
CN112398688B (zh) | 容器网络配置方法、容器网络***以及存储介质 | |
US10541836B2 (en) | Virtual gateways and implicit routing in distributed overlay virtual environments | |
US10666609B2 (en) | Management of domain name systems in a large-scale processing environment | |
KR101840904B1 (ko) | 가상화된 네트워크와 비-가상화된 네트워크 간 가상화 게이트웨이 | |
US9628290B2 (en) | Traffic migration acceleration for overlay virtual environments | |
US8954992B2 (en) | Distributed and scaled-out network switch and packet processing | |
US9143582B2 (en) | Interoperability for distributed overlay virtual environments | |
US9535730B2 (en) | Communication apparatus and configuration method | |
US20190166196A1 (en) | Data replication for a virtual networking system | |
WO2022078415A1 (zh) | 报文转发方法以及网络设备 | |
CN112583655B (zh) | 数据传输方法、装置、电子设备及可读存储介质 | |
CN105635190A (zh) | 数据中心网络中的服务执行方法及装置 | |
CN115686729A (zh) | 容器集群网络***、数据处理方法、设备及计算机程序产品 | |
CN115665026A (zh) | 一种集群组网的方法和装置 | |
US20170126430A1 (en) | Multiple gateway operation on single operating system | |
WO2023066224A1 (zh) | 一种部署容器服务的方法及装置 | |
WO2023155838A1 (zh) | 一种虚拟网络功能vnf实例化的方法及装置 | |
CN117793000A (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 |