基于VPC网络的通信方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:35941946 阅读:17 留言:0更新日期:2022-12-14 10:30
本申请涉及通信技术领域,公开了一种基于VPC网络的通信方法、装置、计算机设备及存储介质,包括:在宿主机中创建虚拟网桥;为虚拟网桥配置虚拟化网段的虚拟网关;将至少一个虚拟机的网关桥接至虚拟网桥;响应于通信指令,至少一个虚拟机通过虚拟网关和宿主机的网卡与外网进行通信,和/或,至少一个虚拟机通过虚拟网关与内网进行通信。本申请的方法,能够基于虚拟私有云服务的kvm虚拟化方案,实现宿主机和虚拟机不同网段的ip相互访问和通信。同时,解决了虚拟机与容器或多个虚拟机之间的网络互通,达到了无需改造业务代码,即可平滑处理虚拟机与容器,或者多个虚拟机之间的相互通信的目的。目的。目的。

【技术实现步骤摘要】
基于VPC网络的通信方法、装置、计算机设备及存储介质


[0001]本申请涉及通信
,尤其是涉及到一种基于VPC网络的通信方法、装置、计算机设备及存储介质。

技术介绍

[0002]目前,云厂商的服务器和相关服务通常采用2种服务模式:kvm(Kernel

based Virtual Machine)虚拟化和k8s(Kubernetes)容器化。k8s容器化使用云厂商的容器云,kvm虚拟化通过云厂商的裸金属服务器自建的虚拟化。但对于VPC(Virtual Private Cloud,虚拟私有云服务)网络,kvm虚拟化技术与CCE(Cloud Container Engine,云容器引擎)容器化技术混合部署,不支持管理用户自建的kvm虚拟化的ip,而且,为了保证vm虚拟机和pod容器之间的正常通讯,需要进行业务代码改造,容易影响现有的服务。

技术实现思路

[0003]有鉴于此,本申请提供了一种基于VPC网络的通信方法、装置、计算机设备及存储介质,以解决VPC网络中平滑处理虚拟机和容器之间或多个虚拟机之间的相互通讯的问题。
[0004]第一方面,提供了一种基于VPC网络的通信方法,VPC网络服务于宿主机和至少一个虚拟机,该方法包括:
[0005]在宿主机中创建虚拟网桥;
[0006]为虚拟网桥配置虚拟化网段的虚拟网关;
[0007]将至少一个虚拟机的网关桥接至虚拟网桥;
[0008]响应于通信指令,至少一个虚拟机通过虚拟网关和宿主机的网卡与外网进行通信,和/或,至少一个虚拟机通过虚拟网关与内网进行通信。
[0009]进一步地,在宿主机中创建虚拟网桥,包括:
[0010]获取配置文件;
[0011]在宿主机的OSI网络模型的网络层,根据配置文件,创建虚拟网桥。
[0012]进一步地,为虚拟网桥配置虚拟化网段的虚拟网关,包括:
[0013]在宿主机上创建VPC网络接口,VPC网络接口与所述宿主机的网卡接口连接;
[0014]将虚拟化网段中的任一可用IP地址分配给VPC网络接口;
[0015]将VPC网络接口连接到虚拟网桥上。
[0016]进一步地,至少一个虚拟机通过虚拟网关和宿主机的网卡与外网进行通信,包括:
[0017]在任一虚拟机通过任一虚拟机的网卡访问外网的情况下,任一虚拟机通过任一虚拟机的网卡将通信指令对应的第一数据获取请求发送至虚拟网关的ip地址;
[0018]虚拟网关将第一数据获取请求转发至宿主机的网卡的ip地址;
[0019]通过宿主机的网卡的ip地址,按照VPC网络的网络协议将第一数据获取请求发送至外网;
[0020]宿主机将外网反馈的数据包发送至任一虚拟机的网卡的ip地址。
[0021]进一步地,至少一个虚拟机通过虚拟网关与内网进行通信,包括:
[0022]在任一虚拟机通过任一虚拟机的网卡访问内网的情况下,任一虚拟机通过任一虚拟机的网卡将通信指令对应的第二数据获取请求发送至虚拟网关的ip地址;
[0023]通过虚拟网关将第二数据获取请求发送至内网;
[0024]宿主机将内网反馈的数据包发送至任一虚拟机的网卡的ip地址。
[0025]进一步地,内网包括至少一个虚拟机;外网包括LXC集群、k8s集群和/或互联网设备。
[0026]进一步地,虚拟网桥包括linuxbridge桥或OVS桥。
[0027]第二方面,提供了一种基于VPC网络的通信装置,VPC网络服务于至少一个虚拟机和宿主机,该装置包括:
[0028]创建模块,用于在宿主机中创建虚拟网桥;
[0029]配置模块,用于为虚拟网桥配置虚拟化网段的虚拟网关;
[0030]通信模块,用于将至少一个虚拟机的网关桥接至虚拟网桥;以及,
[0031]响应于通信指令,至少一个虚拟机通过虚拟网关和宿主机的网卡与外网进行通信,和/或,至少一个虚拟机通过虚拟网关与内网进行通信。
[0032]进一步地,基于VPC网络的通信装置,还包括:
[0033]获取模块,用于获取配置文件;
[0034]创建模块,具体用于在宿主机的OSI网络模型的网络层,根据配置文件,创建虚拟网桥。
[0035]进一步地,创建模块,还用于在宿主机上创建VPC网络接口,VPC网络接口与所述宿主机的网卡接口连接;
[0036]配置模块,具体用于将虚拟化网段中的任一可用IP地址分配给VPC网络接口;以及,
[0037]将VPC网络接口连接到虚拟网桥上。
[0038]进一步地,通信模块,具体用于在任一虚拟机通过任一虚拟机的网卡访问外网的情况下,任一虚拟机通过任一虚拟机的网卡将第一数据获取请求发送至虚拟网关的ip地址;
[0039]虚拟网关将通信指令对应的第一数据获取请求转发至宿主机的网卡的ip地址;
[0040]通过宿主机的网卡的ip地址,按照VPC网络的网络协议将第一数据获取请求发送至外网;
[0041]宿主机将外网反馈的数据包发送至任一虚拟机的网卡的ip地址。
[0042]进一步地,通信模块,具体用于在任一虚拟机通过任一虚拟机的网卡访问内网的情况下,任一虚拟机通过任一虚拟机的网卡将通信指令对应的第二数据获取请求发送至虚拟网关的ip地址;
[0043]通过虚拟网关将第二数据获取请求发送至内网;
[0044]宿主机将内网反馈的数据包发送至任一虚拟机的网卡的ip地址。
[0045]进一步地,内网包括至少一个虚拟机;外网包括LXC集群、k8s集群和/或互联网设备。
[0046]进一步地,虚拟网桥包括linuxbridge桥或OVS桥。
[0047]第三方面,提供了一种计算机设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述基于VPC网络的通信方法的步骤。
[0048]第四方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述基于VPC网络的通信方法的步骤。
[0049]上述基于VPC网络的通信方法、装置、计算机设备及存储介质所实现的方案中,在宿主机中创建虚拟网桥,以使至少一个虚拟机(vm)能够通过虚拟网桥与宿主机的网络桥接。再为虚拟网桥配置虚拟化网段的虚拟网关,并将至少一个虚拟机虚拟化的ip通信的网关设置在虚拟网桥上。从而通过虚拟网桥和虚拟网关的搭建,将宿主机作为至少一个虚拟机与内、外网之间的交换机,使至少一个虚拟机可通过虚拟网关和宿主机的网卡与外网进行通信,以及使至少一个虚拟机通过虚拟网关与内网进行通信。进而实现了基于虚拟私有云服务的kvm虚拟化方案,以及宿主机和虚拟机不同网段的ip相互访问和通信。同时,解决了虚拟机与容器或多个虚拟机之间的网络互通,以达到部署在其上的服务之间可互相通信访问,达到了无需改造业务代码,即可平滑处理虚拟机与容器,或者多个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于VPC网络的通信方法,其特征在于,所述VPC网络服务于宿主机和至少一个虚拟机,所述方法包括:在所述宿主机中创建虚拟网桥;为所述虚拟网桥配置虚拟化网段的虚拟网关;将所述至少一个虚拟机的网关桥接至所述虚拟网桥;响应于通信指令,所述至少一个虚拟机通过所述虚拟网关和所述宿主机的网卡与外网进行通信,和/或,所述至少一个虚拟机通过所述虚拟网关与内网进行通信。2.根据权利要求1所述的基于VPC网络的通信方法,其特征在于,所述在所述宿主机中创建虚拟网桥,包括:获取配置文件;在所述宿主机的OSI网络模型的网络层,根据所述配置文件,创建所述虚拟网桥。3.根据权利要求1所述的基于VPC网络的通信方法,其特征在于,所述为所述虚拟网桥配置虚拟化网段的虚拟网关,包括:在所述宿主机上创建VPC网络接口,所述VPC网络接口与所述宿主机的网卡接口连接;将所述虚拟化网段中的任一可用IP地址分配给所述VPC网络接口;将所述VPC网络接口连接到所述虚拟网桥上。4.根据权利要求1所述的基于VPC网络的通信方法,其特征在于,所述至少一个虚拟机通过所述虚拟网关和所述宿主机的网卡与外网进行通信,包括:在任一虚拟机通过所述任一虚拟机的网卡访问外网的情况下,所述任一虚拟机通过所述任一虚拟机的网卡将所述通信指令对应的第一数据获取请求发送至所述虚拟网关的ip地址;所述虚拟网关将所述第一数据获取请求转发至所述宿主机的网卡的ip地址;通过所述宿主机的网卡的ip地址,按照所述VPC网络的网络协议将所述第一数据获取请求发送至所述外网;所述宿主机将所述外网反馈的数据包发送至所述任一虚拟机的网卡的ip地址。5.根据权利要求1所述的基于VPC网络的通信方法,其特征在...

【专利技术属性】
技术研发人员:徐斌
申请(专利权)人:康键信息技术深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1