联通天宫平台数字化虚拟网络基座实践
2021-09-02

Kube-OVN线上技术交流会上,中国联通软件研究院向超胜分享了“联通天宫平台数字化虚拟网络基座实践”。

向超胜负责天宫容器云平台虚拟网络的架构规划与设计,以及容器网络相关技术的推进与落地。通过他的分享我们可以了解到天宫虚拟网络的一些关键特性,以及联通天宫容器云平台虚拟网络的演进,以及第三代底层底座网络模型以及上层租户网络模型的设计。

1.png

天宫容器云平台虚拟网络的演进

2019年4月份,天宫容器云平台以思科开源基础设施Contiv作为虚拟网络的控制平面,OVS作为虚拟网络的数据转发平面,并在Contiv的基础之上,优化其原生的网络模型以及既有功能的编排以及新功能的二次研发,形成了天宫容器云平台第一代虚拟网络。该阶段平台推出了虚拟私有云VPC、云负载均衡器CLB两款虚拟网络产品。

第一代虚拟网络产品上线之后,仍然面临着诸多的问题与挑战。首先是Contiv社区活跃度很差,出现问题需要平台团队自己解决,而且Contiv的稳定性不足,解决这些问题是个大挑战;第二点是Contiv子网没有扩展性,而且从性能上来讲,很难满足一些关键的核心业务系统的性能要求;第三点是一些新的扩展性功能通过既有Contiv来做的话,成本和技术门槛相对而言比较高,比如IPV6支持、VPC的多出口多入口等。

2020年开始,从Kube-OVN社区了解到了OVN,团队从功能、性能、稳定性三方面对OVN展开了充分的测试与验证,最后决定用OVN替代Contiv作为虚拟网络的管控平面,从而形成了天宫容器云平台第二代虚拟网络。相较第一代虚拟网络而言,第二代虚拟网络除了保留第一代虚拟网络的全部功能,同时也基于OVN实现了分布式云网关NAT,同时也实现了VPC的多出口/多入口功能,目前团队正在进行IPV6支持及VPC互联等扩展功能的开发。

2021年初,天宫容器云平台开始进行第三代虚拟网络的研发。相较第二代虚拟网络而言,最大的差异就是平台底座从Mesos切换到K8s,同时还引入了智能网卡,从而彻底解决虚拟网络性能的问题。我们还计划推出除VPC网络以外的VLAN网络产品,并结合WAP以及蜜罐推出虚拟网络安全产品。

天宫容器云平台虚拟网络“三剑客”

应用上云网络先行,天宫容器云平台为了助力项目应用快速上云、敏捷上云,推出了虚拟网络三剑客:VPC网络、NAT网关和云负载均衡器CLB。首先是VPC网络,可以帮助项目团队在天宫云上快速构建隔离的、可自主管控的虚拟网络环境,简化应用的部署,而NAT网关作为VPC网络出口,云负载均衡器CLB 作为VPC网络的入口,二者结合在VPC网络与经典网络之间构建一个高速的交换通道,从而扩展应用系统对外的服务能力,同时实现应用更高水平的容错。

2.png

虚拟私有云VPC作为云上的私密网络,能够实现租户之间100%隔离,安全可靠。同时,项目应用可以根据业务的实际需求来自主规划、配置网络架构,简化应用部署,非常灵活。此外,VPC网络还支持承载容器、虚机、裸金属,同时兼容CNI以及CNM容器网络接口规范。

云网关NAT作为VPC的出口,可构建最高10GB的高速出网通道,满足大规模的应用场景,而且NAT网关采用集群形态部署,开箱即用,运行稳定可靠。同时,应用可以根据业务的实际需求,按需开通访问企业内网或者互联网的需求,满足应用出网需求多样性。

云负载均衡器CLB作为VPC的入口,也是“即开即用”,目前其支持网络四层负载和七层负载,而且支持主流的调度算法,像人群、权重、最少连接数、源IP地址、Hash等等,还支持多类的健康检查,支持连接会话保持。目前CLB最小基准单元支持1200万的并发连接,而且可以结合业务的规模量线性扩展,从而满足海量业务访问。而且项目应用可以根据业务的实际需求,按需开通,从企业内网或者从互联网接入,从而满足业务应用入网需求的多样性。

最后一个是VPC对等连接,它不是一个独立的产品,它是依附于虚拟私有云VPC的一个特性,它的应用场景是实现跨VPC间的应用之间,直接基于私网IP直接互联互通的,而且可以降低通信时延。目前的话VPC的连接在使用上面存在两个约束,第一个,两个互联的VPC之间子网不可重叠,而且要保持两端是唯一的;二是目前VPC的连接是不支持跨可用区进行互联的,只支持同一可用区的互联。

 

第三代虚拟网络底层底座网络模型设计

天宫容器云平台第三代虚拟网络底座网络模型的设计,借鉴了Kube-OVN的业务网络模型,包括一个分布式路由器和三类分布式子网交换机。

3.png

第一类分布式子网交换机为“管理网”,它的用途是为租户VPC网络内的一些工作负载提供管理网的功能,用于进行外网管控。

第二类分布式子网交换机为“Pod”子网,它的用途是用来承载底座K8s下发的Pod容器,实现Pod容器之间的互联互通。

第三类分布式子网交换机为“Node”子网,它的作用是将K8s中的节点纳入底座VPC网络中,从而满足K8s中Pod子网与Node子网互联互通的网络规范。

以上三类子网都是针对底座VPC内部互联互通的情况,对于主动出VPC网络的流量,我们基于ECMP和原地址路由,将流量引入到企业内网区的一组服务器上,并通过SNAT出去。而针对主动入集群的流量,基于Kube-Proxy的IPVS规则,集群外部的客户端通过访问服务器组的Node IP+Node Pod,从而实现将流量从外部引入 VPC网络内的Pod容器中。

平台上租户网络模型的设计,是由一个分布式虚拟路由器和三类分布式子网交换机组成。

第一类分布式子网交换机是“业务子网”,它的用途主要是用来承载租户下发的容器虚拟机、裸金属等工作负载,实现它们之间的互联互通。

4.png

第二类分布式子网交换机是“基础设施子网”,它的主要用途是用来承载云负载均衡器CLB的接入,从而实现集群外部流量访问租户VPC网络内的云资源实例。

第三类分布式子网交换机是“边界交换机”,通过分布式网关端口,承载NAT网关集群,实现租户VPC网络流量的换出。

上一篇:数字化装备制造新标杆!灵雀云携手腾讯云打造三一集团技术中台

下一篇 :quick-debug | 容器程序调试利器,如本地运行般丝滑



为您数字化转型提供更为完善的解决方案和更加优质的全栈服务。

申请试用
© 2024 All Rights Reserved. 灵雀云 版权所有 备 案号:京ICP备15011102号-2      隐私条款
电话咨询 在线客服 微信咨询 公众号