CN113037655A - 一种实现多cpu架构容器和虚机网络互通的方法 - Google Patents
一种实现多cpu架构容器和虚机网络互通的方法 Download PDFInfo
- Publication number
- CN113037655A CN113037655A CN202110227972.4A CN202110227972A CN113037655A CN 113037655 A CN113037655 A CN 113037655A CN 202110227972 A CN202110227972 A CN 202110227972A CN 113037655 A CN113037655 A CN 113037655A
- Authority
- CN
- China
- Prior art keywords
- network
- container
- virtual machine
- tenant
- isolation
- 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
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/0893—Assignment of logical groups to network elements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种实现多CPU架构容器和虚机网络互通的方法,属于容器技术领域。本发明的实现多CPU架构容器和虚机网络互通的方法,容器云支持多租户网络隔离,支持多租户的容器和虚机网络互通,其中多租户网络隔离包括默认相互隔离和默认相互通信;多租户的容器和虚机互通包括容器网络作为基础和虚机网络作为基础。该发明的实现多CPU架构容器和虚机网络互通的方法能够有效提升容器的多租户隔离功能,降低服务的成本,提升了竞争力,具有很好的推广应用价值。
Description
技术领域
本发明涉及容器技术领域,具体提供一种实现多CPU架构容器和虚机网络互通的方法。
背景技术
容器技术是比较流行的提供微服务的PaaS技术,而Kubernetes是容器编排调度的事实标准。Kubernetes是一个基于容器技术的分布式架构领先方案,为容器化的应用提供部署、运行、容器编排、容器调度、服务发现和动态伸缩等一系列功能,提高了大规模容器集群管理的便捷性和高可用性。
基于Kubernetes提供容器云平台是各大云厂商的首选。浪潮容器云基于Kubernetes提供容器云平台、容器服务、Serverless服务、容器服务控制面集中管理、边缘云场景,通过使用多CPU架构容器和虚机网络互通技术,实现了浪潮容器和虚机网络的互通,并实现了多租户的网络隔离。浪潮云基于Kubernetes提供了容器云,并给用户提供了容器服务。容器服务基于虚机给用户提供了一套Kubernetes集群,用于实现用户的容器管理功能,浪潮云基于虚机给用户收取费用,但是,虚机资源属于比较昂贵的资源,用户使用容器服务的成本相对偏高。
用户希望降低服务费用,最好只收取具体业务容器的费用,就产生了Serverless服务的需求,即只给用户提供一个容器,不用虚机。这种情况下,还需要使用用户的虚拟网络资源,需要基于虚拟网络,把虚拟网络资源分配给容器,并需要跟用户原来的虚机服务通信,就产生了容器和虚机网络互通的需求,并要支持租户的网络隔离。
在边缘场景下,需要基于容器管理虚机,也有容器和虚机网络打通的需求,要实现用户的虚机网络隔离,还要支持ARM、MIPS等国产化CPU物理机。
随着容器和虚机网络互通需求的明确,需要提供一个支持多CPU架构的容器和虚机网络互通的方案,支持浪潮云的Serverless和容器服务控制面集中管理的功能,并支持边缘场景。
发明内容
本发明的技术任务是针对上述存在的问题,提供一种能够有效提升容器的多租户隔离功能,降低服务的成本,提升了竞争力的实现多CPU架构容器和虚机网络互通的方法。
为实现上述目的,本发明提供了如下技术方案:
一种实现多CPU架构容器和虚机网络互通的方法,该方法中容器云支持多租户网络隔离,支持多租户的容器和虚机网络互通,其中多租户网络隔离包括默认相互隔离和默认相互通信;多租户的容器和虚机互通包括容器网络作为基础和虚机网络作为基础。
通过该实现多CPU架构容器和虚机网络互通的方法可以使用用户的网络资源实现用户的容器和虚机网络互通,并保证了多租户的网络隔离,支持了浪潮云的Serverless服务、容器服务控制面集中管理、边缘云场景,有效提升了用户容器的多租户隔离功能,保证了用户的容器和虚机的网络互通能力,降低了浪潮容器服务的成本,提升了浪潮容器云的竞争力。
作为优选,所述默认相互隔离为通过增加路由策略通信,默认相互通信为通过隔离策略实现隔离。
作为优选,所述容器网络作为基础为虚机使用容器网络,虚机网络作为基础为容器使用虚机网络,容器网络作为基础与虚机网络作为基础时,保证容器和虚机使用的网络在一个网络层级上,支持覆盖网络的封包和解包。
作为优选,容器网络作为基础时,支持多租户网络管理,使用Kube虚机网络,Kube虚机网络为基于虚机实现的容器网络,支持交换机级别的隔离。
其中Kube虚机网络由控制器、容器网络插件、容器网络接口服务器、虚拟交换机四部分组成;控制器完成Kubernetes资源的生命周期管理,包括子网、节点、容器组、服务、网络策略、外部网关、虚拟本地网络、内部连接等资源,控制器调用虚机网络中心服务实现逻辑交换机、交换机端口、负载均衡虚拟IP等管理;容器网络插件实现容器网络的增加和删除方法,通过调用容器网络接口服务器实现;容器网络接口服务器用于实现节点网卡、容器网卡、主机网卡、提供者网卡的创建和删除;虚拟交换机由虚机网络北向服务、虚机网络北向进程、虚机网络南向服务、虚拟交换机四部分组成,实现了逻辑交换机、路由器、交换机端口号、负载均衡虚拟IP、端口号组、网络交换机、本地端口号等资源的管理,并通过虚拟交换机实现网桥、流表等资源的管理。
作为优选,容器网络作为基础时,Kube虚机网络实现租户网络和管理网络,Kube虚机网络默认生成一个路由,保证所有租户子网通信,实现租户隔离网络,在租户创建子网的同时,增加网络隔离策略,使用虚拟交换机的流表实现网络隔离,租户的容器和虚机通信使用虚拟交换机实现。
此时容器网络作为基础时,使用NetworkPolicy实现隔离。
作为优选,容器网络作为基础时,使用Calico实现管理网,Kube虚机网络实现租户网络,去掉Kube虚机网络的默认路由,保证租户网络默认隔离,租户的容器和虚机使用虚拟交换机通信,容器管理器与容器的通信使用Calico实现。
此时容器网络作为基础时,不支持租户网络互通。
作为优选,虚机网络作为基础时,支持多租户网络管理,使用Kuryr+Neutron,Kuryr调用Neutron,实现容器网络的管理,虚机使用Neutron直接管理。
作为优选,虚机网络作为基础时,容器使用Kuryr网络,调用Neutron的API生成端口,调用Neutron代理器,Neutron代理器调用虚机,在对应网桥上创建端口,容器管理器调用Kuryr案例插件,给容器组激活网卡,容器和虚拟交换机基于虚机通信,租户的服务使用负载均衡实现。
与现有技术相比,本发明的实现多CPU架构容器和虚机网络互通的方法具有以下突出的有益效果:支持了浪潮容器云在多CPU架构容器和虚机网络互通的能力,实现了用户使用自己的网络资源实现容器和虚机网络互通的功能,保证了多租户下的网络隔离,支持了浪潮云的Serverless服务、容器服务控制面集中管理、边缘云,有效提升了容器的多租户隔离功能,保证了用户的容器和虚机的网络互通能力,降低了浪潮云容器服务的成本,提升了浪潮容器云的竞争力,具有良好的推广应用价值。
附图说明
图1是本发明所述实现多CPU架构容器和虚机网络互通的方法中容器网络作为基础时使用NetworkPolicy实现隔离的示意图;
图2是本发明所述实现多CPU架构容器和虚机网络互通的方法中容器网络作为基础时不支持租户网络互通的示意图;
图3是本发明所述实现多CPU架构容器和虚机网络互通的方法中虚机网络作为基础时的示意图;
图4是本发明所述实现多CPU架构容器和虚机网络互通的方法中Kube虚机网络的技术架构图;
图5是本发明所述实现多CPU架构容器和虚机网络互通的方法的流程图。
具体实施方式
下面将结合附图和实施例,对本发明的实现多CPU架构容器和虚机网络互通的方法作进一步详细说明。
实施例
本发明的实现多CPU架构容器和虚机网络互通的方法,容器云支持多租户网络隔离,支持多租户的容器和虚机网络互通,其中多租户网络隔离包括默认相互隔离和默认相互通信。默认相互隔离为通过增加路由策略通信,默认相互通信为通过隔离策略实现隔离。
多租户的容器和虚机互通包括容器网络作为基础和虚机网络作为基础。容器网络作为基础为虚机使用容器网络,虚机网络作为基础为容器使用虚机网络,容器网络作为基础与虚机网络作为基础时,保证容器和虚机使用的网络在一个网络层级上,支持覆盖网络的封包和解包。
如图1所示,容器网络作为基础时使用NetworkPolicy实现隔离,支持多租户网络管理,使用Kube虚机网络,Kube虚机网络为基于虚机实现的容器网络,支持交换机级别的隔离。容器网络作为基础时,Kube虚机网络实现租户网络和管理网络,Kube虚机网络默认生成一个路由,保证所有租户子网通信,实现租户隔离网络,在租户创建子网的同时,增加网络隔离策略,使用虚拟交换机的流表实现网络隔离,租户的容器和虚机通信使用虚拟交换机实现。
如图2所示,容器网络作为基础时不支持租户网络互通,使用Calico实现管理网,Kube虚机网络实现租户网络,去掉Kube虚机网络的默认路由,保证租户网络默认隔离,租户的容器和虚机使用虚拟交换机通信,容器管理器与容器的通信使用Calico实现。
如图3所示,虚机网络作为基础时,支持多租户网络管理,使用业务网络和虚机网络,业务网络调用虚机网络,实现容器网络的管理,虚机使用虚机网络直接管理。虚机网络作为基础时,容器使用业务网络,调用虚机网络的API生成端口,容器和虚拟交换机基于虚机通信,租户的服务使用负载均衡实现。
该实现多CPU架构容器和虚机网络互通的方法适用于浪潮容器云,浪潮容器云已经支持了Calico、Kube虚机网络、业务网络插件,支持多容器网卡管理。
针对浪潮公有云场景,可以使用Calico+Kuryr组合,使用Calico实现管理侧网络,使用Kuryr实现租户侧网络,可以支持无服务器容器和租户容器集群控制面集中管理的功能。针对边缘云场景,可以使用Kube虚机网络支持多租户网络,容器化管理虚机,并支持租户的IP管理功能。由于Kube虚机网络默认支持了一个路由,所有使用Kube虚机网络创建的虚机或容器,默认网络可达,需要配合网络策略实现多租户网络隔离。基于容器网络实现默认不可达的多租户网络,可以使用Calico+Kube虚机网络的组合,使用Calico实现管理网络,使用Kube虚机网络实现租户侧网络,并不支持跨租户的网络互通。
如图4所示,Kube虚机网络由控制器、容器网络插件、容器网络接口服务器、虚拟交换机四部分组成;控制器完成Kubernetes资源的生命周期管理,包括子网、节点、容器组、服务、网络策略、外部网关、虚拟本地网络、内部连接等资源,控制器调用虚机网络中心服务实现逻辑交换机、交换机端口、负载均衡虚拟IP等管理;容器网络插件实现容器网络的增加和删除方法,通过调用容器网络接口服务器实现;容器网络接口服务器用于实现节点网卡、容器网卡、主机网卡、提供者网卡的创建和删除;虚拟交换机由虚机网络北向服务、虚机网络北向进程、虚机网络南向服务、虚拟交换机四部分组成,实现了逻辑交换机、路由器、交换机端口号、负载均衡虚拟IP、端口号组、网络交换机、本地端口号等资源的管理,并通过虚拟交换机实现网桥、流表等资源的管理。
如图5所示,该实现多CPU架构容器和虚机网络互通的方法用户创建容器组后,虚机网络控制器获取创建事件,调用虚机网络中心,虚机网络中心调用虚拟交换机命令创建逻辑交换机端口,虚机网络控制器把IP记录到容器组的注解上。Kubernetes把容器组调度到具体节点上,节点上容器管理器调用虚机网络网络插件创建容器网卡,虚机网络网络插件调用虚机网络网络接口服务器,虚机网络网络接口服务器调用虚拟交换机创建网卡和加入网桥。
以上所述的实施例,只是本发明较优选的具体实施方式,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。
Claims (8)
1.一种实现多CPU架构容器和虚机网络互通的方法,其特征在于:该方法中容器云支持多租户网络隔离,支持多租户的容器和虚机网络互通,其中多租户网络隔离包括默认相互隔离和默认相互通信;多租户的容器和虚机互通包括容器网络作为基础和虚机网络作为基础。
2.根据权利要求1所述的实现多CPU架构容器和虚机网络互通的方法,其特征在于:所述默认相互隔离为通过增加路由策略通信,默认相互通信为通过隔离策略实现隔离。
3.根据权利要求2所述的实现多CPU架构容器和虚机网络互通的方法,其特征在于:所述容器网络作为基础为虚机使用容器网络,虚机网络作为基础为容器使用虚机网络,容器网络作为基础与虚机网络作为基础时,保证容器和虚机使用的网络在一个网络层级上,支持覆盖网络的封包和解包。
4.根据权利要求3所述的实现多CPU架构容器和虚机网络互通的方法,其特征在于:容器网络作为基础时,支持多租户网络管理,使用Kube虚机网络,Kube虚机网络为基于虚机实现的容器网络,支持交换机级别的隔离。
5.根据权利要求4所述的实现多CPU架构容器和虚机网络互通的方法,其特征在于:容器网络作为基础时,Kube虚机网络实现租户网络和管理网络,Kube虚机网络默认生成一个路由,保证所有租户子网通信,实现租户隔离网络,在租户创建子网的同时,增加网络隔离策略,使用虚拟交换机的流表实现网络隔离,租户的容器和虚机通信使用虚拟交换机实现。
6.根据权利要求5所述的实现多CPU架构容器和虚机网络互通的方法,其特征在于:容器网络作为基础时,使用Calico实现管理网,Kube虚机网络实现租户网络,去掉Kube虚机网络的默认路由,保证租户网络默认隔离,租户的容器和虚机使用虚拟交换机通信,容器管理器与容器的通信使用Calico实现。
7.根据权利要求6所述的实现多CPU架构容器和虚机网络互通的方法,其特征在于:虚机网络作为基础时,支持多租户网络管理,使用Kuryr+Neutron,Kuryr调用Neutron,实现容器网络的管理,虚机使用Neutron直接管理。
8.根据权利要求7所述的实现多CPU架构容器和虚机网络互通的方法,其特征在于:虚机网络作为基础时,容器使用Kuryr网络,调用Neutron的API生成端口,调用Neutron代理器,Neutron代理器调用虚机,在对应网桥上创建端口,容器管理器调用Kuryr案例插件,给容器组激活网卡,容器和虚拟交换机基于虚机通信,租户的服务使用负载均衡实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110227972.4A CN113037655A (zh) | 2021-03-02 | 2021-03-02 | 一种实现多cpu架构容器和虚机网络互通的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110227972.4A CN113037655A (zh) | 2021-03-02 | 2021-03-02 | 一种实现多cpu架构容器和虚机网络互通的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113037655A true CN113037655A (zh) | 2021-06-25 |
Family
ID=76465176
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110227972.4A Pending CN113037655A (zh) | 2021-03-02 | 2021-03-02 | 一种实现多cpu架构容器和虚机网络互通的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113037655A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113676524A (zh) * | 2021-08-09 | 2021-11-19 | 浪潮云信息技术股份公司 | 一种实现多cpu架构容器网络代理的方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9912739B1 (en) * | 2017-01-12 | 2018-03-06 | Red Hat Israel, Ltd. | Open virtualized multitenant network scheme servicing virtual machine and container based connectivity |
CN107864131A (zh) * | 2017-11-03 | 2018-03-30 | 郑州云海信息技术有限公司 | 一种实现Kubernetes集群多租户网络隔离的方法及系统 |
CN107947961A (zh) * | 2017-10-17 | 2018-04-20 | 上海数讯信息技术有限公司 | 基于SDN的Kubernetes网络管理系统与方法 |
CN108989091A (zh) * | 2018-06-22 | 2018-12-11 | 杭州才云科技有限公司 | 基于Kubernetes网络的租户网络隔离方法、存储介质、电子设备 |
CN109194502A (zh) * | 2015-12-31 | 2019-01-11 | 北京轻元科技有限公司 | 多租户容器云计算系统的管理方法 |
CN110198231A (zh) * | 2018-05-08 | 2019-09-03 | 腾讯科技(深圳)有限公司 | 用于多租户的容器网络管理方法和系统以及中间件 |
CN110808857A (zh) * | 2019-10-31 | 2020-02-18 | 深圳前海环融联易信息科技服务有限公司 | 实现Kubernetes集群的网络互通方法、装置、设备以及存储介质 |
CN112130957A (zh) * | 2020-09-11 | 2020-12-25 | 烽火通信科技股份有限公司 | 一种容器突破虚拟化隔离使用智能网卡的方法与系统 |
-
2021
- 2021-03-02 CN CN202110227972.4A patent/CN113037655A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109194502A (zh) * | 2015-12-31 | 2019-01-11 | 北京轻元科技有限公司 | 多租户容器云计算系统的管理方法 |
US9912739B1 (en) * | 2017-01-12 | 2018-03-06 | Red Hat Israel, Ltd. | Open virtualized multitenant network scheme servicing virtual machine and container based connectivity |
CN107947961A (zh) * | 2017-10-17 | 2018-04-20 | 上海数讯信息技术有限公司 | 基于SDN的Kubernetes网络管理系统与方法 |
CN107864131A (zh) * | 2017-11-03 | 2018-03-30 | 郑州云海信息技术有限公司 | 一种实现Kubernetes集群多租户网络隔离的方法及系统 |
CN110198231A (zh) * | 2018-05-08 | 2019-09-03 | 腾讯科技(深圳)有限公司 | 用于多租户的容器网络管理方法和系统以及中间件 |
CN108989091A (zh) * | 2018-06-22 | 2018-12-11 | 杭州才云科技有限公司 | 基于Kubernetes网络的租户网络隔离方法、存储介质、电子设备 |
CN110808857A (zh) * | 2019-10-31 | 2020-02-18 | 深圳前海环融联易信息科技服务有限公司 | 实现Kubernetes集群的网络互通方法、装置、设备以及存储介质 |
CN112130957A (zh) * | 2020-09-11 | 2020-12-25 | 烽火通信科技股份有限公司 | 一种容器突破虚拟化隔离使用智能网卡的方法与系统 |
Non-Patent Citations (2)
Title |
---|
《知乎》: "《容器编排之Kubernetes多租户网络隔离》", 《HTTPS://ZHUANLAN.ZHIHU.COM/P/26614324》 * |
知乎: "《OpenStack容器网络项目Kuryr(libnetwork)》", 《HTTPS://ZHUANLAN.ZHIHU.COM/P/24554386》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113676524A (zh) * | 2021-08-09 | 2021-11-19 | 浪潮云信息技术股份公司 | 一种实现多cpu架构容器网络代理的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102457439B (zh) | 一种云计算系统的虚拟交换系统及其虚拟交换方法 | |
CN107947961B (zh) | 基于SDN的Kubernetes网络管理系统与方法 | |
US9614748B1 (en) | Multitenant data center providing virtual computing services | |
CN102307246B (zh) | 基于云计算的虚拟机间安全通信保护系统 | |
CN106953788B (zh) | 一种虚拟网络控制器及控制方法 | |
CN109194502B (zh) | 多租户容器云计算系统的管理方法 | |
US20170257269A1 (en) | Network controller with integrated resource management capability | |
US9876756B2 (en) | Network access method and device for equipment | |
CN107070717B (zh) | 一种跨主机的Docker容器通讯的方法 | |
CN109660466A (zh) | 一种面向云数据中心租户的多活负载均衡实现方法 | |
CN111224821A (zh) | 安全服务部署系统、方法及装置 | |
WO2019127418A1 (zh) | 网络服务管理方法、相关装置及系统 | |
CN113596110A (zh) | 一种面向异构云的云原生微服务平台 | |
CN109688241B (zh) | 基于SDN的IPv4/IPv6双栈转换方法和系统 | |
CN111225071B (zh) | 一种云平台及跨云平台网络互通系统、方法 | |
EP2584742A1 (en) | Method and switch for sending packet | |
CN109039913A (zh) | 虚拟路由装置和虚拟机通信系统 | |
CN112600903B (zh) | 一种弹性虚拟网卡迁移方法 | |
US9166947B1 (en) | Maintaining private connections during network interface reconfiguration | |
WO2023165137A1 (zh) | 一种跨集群的网络通信系统和方法 | |
CN113783781A (zh) | 使虚拟私有云之间网络互通的方法和装置 | |
CN111510367A (zh) | 一种基于vxlan隧道实现vpc网络跨集群互通方法及系统 | |
CN114124714B (zh) | 一种多层级网络部署方法、装置、设备及存储介质 | |
CN112242952B (zh) | 一种数据转发方法、柜顶式交换机和存储介质 | |
CN114448978B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210625 |