大规模数据中心内云计算网络演变的研究及分析
2021-05-31李猛
李猛
中通服咨询设计研究院有限公司
0 引言
云计算采用虚拟化、分布式计算、分布式存储、资源管理等技术,将弹性、可共享、可伸缩性的软硬件资源池池化,再通过网络等方式向客户提供按需自助、可计量的服务。云计算作为一种IT 基础设施交付和使用模式,具有灵活、按需自服务、高扩展性、低成本等特点,能有效降低企业的运营成本,节省投资。
1 大规模数据中心内云计算的传统三层网络
三层网络架构起源于园区网络,传统的大型数据中心网络将其沿用了下来。这个模型包含以下三层。在以往的数据中心网络建设时,关注的重点都是指接口层服务器前的网络,这个网络模型包含以下三层
传统的三层网络结构如图1 所示,其中的汇聚层作为服务器网关,可以增加防火墙、负载均衡和应用加速等应用优化设备。
图1 传统三层网络架构
通常情况下,汇聚交换机是二层(L2)和三层(L3)网络的分界点,汇聚交换机以下的是二层网络,以上是三层网络。每组汇聚交换机管理一个PoD,每个PoD 内都是独立的VLAN。服务器在PoD 内迁移不必修改IP 地址和默认网关,因为一个PoD 对应一个二层广播域。
三层网络架构以其实现简单、配置工作量低、广播控制能力较强等优势在传统数据中心网络中大量应用,但是在当前云计算背景下,传统的三层网络架构已经无法满足云数据中心对网络的诉求,无法支撑大二层网络构建和流量的无阻塞转发。
三层网络架构的一个优势是对广播的有效控制,其可以在汇聚层设备上通过VLAN 技术将广播域控制在一个PoD 内,但是在云计算背景下,计算资源被资源池化,根据计算资源虚拟化的要求,VM(虚拟机)需要在任意地点创建、迁移,而不需要对IP 地址或者默认网关进行修改,这从根本上改变了数据中心的网络架构。为了满足计算资源虚拟化的要求,必须构建一个大二层网络来满足VM 的迁移诉求。针对传统的三层网络架构,必须将二三层网络的分界点设置在核心交换机,核心交换机以下均为二层网络,这样一来,汇聚层作为网关的作用就不复存在,网络架构逐渐向没有汇聚层的二层架构演进。
在云数据中心,业务的架构逐渐从单体模式转变为“Web-App-DB”模式,分布式技术开始在企业应用中流行。一个业务的多个组件通常分布在多个虚拟机/容器中。业务的运行不再由单台或几台物理服务器来完成,而是多台服务器协同完成,这就导致了东西向流量规模的快速增长。在为南北向流量设计的三层网络架构中,某些类型的东西向流量(如跨PoD 的二层流量及三层流量)必须经过汇聚层和核心层进行转发,数据经过了许多不必要的节点,也会因为收敛比导致网络性能下降。同时,东西向流量经过的设备层级变多可能会导致流量的来回路径不一致,不同路径的时延不同,使得整体流量的时延难以预测,这对于大数据这类对时延非常敏感的业务来说是不可接受的。
可见,在云计算数据中心里面Ethernet(以太网)网络规模扩大,流量带宽需求增加,因此不会在网络中间位置再插入安全和优化设备了,转发性能低。再加上带宽收敛比的问题,短期内大型云计算数据中心网络里面不会出现汇聚层的概念。
2 云计算对大数据中心网络的核心诉求
随着云计算的蓬勃发展,云计算基础设施IaaS 越发重要,其可用性和可靠性备受关注。随着数据中心规模化商用以及新技术的迅猛发展,云计算对大数据中心网络的主要需求如下
(1)流量增大,流量变化需要网络改变。随着互联网技术的不断发展,应用软件的数量呈现爆发式增长,数据中心的业务量激增,大数据需要大管道。随着大量应用迁入数据中心,数据中心流量模型也在发生变化。数据中心的东西向流量(内部服务器之间的流量)已占总流量的90%以上。传统数据中心的树状网络架构已难以满足业务诉求,需要构建新的分布式网络架构,将三层网关下沉,以求最大限度地优化流量路径,满足业务对带宽及时延的要求。
(2)业务快速上线,网络需要池化与自动化。传统数据中心网络割裂,无法满足云数据中心构建大规模资源池的诉求网络呈现“烟囱式”,计算资源被限定在模块内部,无法统一调度,导致冷热不均。同时,网络间采用分布式路由决策,路由难以优化,网络利用率低。传统数据中心的自动化程度较低,无法满足业务快速弹性上线的诉求;应用部署按月粒度开通,无法支撑新业务的发展;应用扩容困难。
(3)安全、稳定、智能化要求增高。云计算中心安全服务化层级低,营运资本高。威胁不断升级,人工分析效率低,调查处置难。安全威胁可视化分析差,无法指导安全运维。网络配置变化频繁,流量激增,云计算中心内应用策略及互访关系日益复杂,传统的网络运维手段已无法适应数据中心网络的发展。
3 大规模数据中心内云计算的Spine-Leaf 网络架构
基于Clos 架构的两层Spine-Leaf 架构中每个Leaf 交换机的上行链路数等于Spine 交换机的数量,每个Spine 交换机的下行链路数等于Leaf 交换机的数量。可以说,Spine 交换机和Leaf 交换机之间是以full-mesh(全网状)方式连接的。具体网络拓扑示意图如图2 所示。
图2 Spine-Leaf 架构
Spine-Leaf 在架构上是可以轻松实现无阻塞。在所有端口速率一致的情况下,如果能够使用一半的端口作为上行端口,则理论上带宽的收敛比可以做到11。但是实际上,即使是在云数据中心,服务器的利用率也不可能达到100%,即不可能所有的服务器均随时保持满速发送流量。实际情况中,设备的上行带宽和下行带宽之间的比例会设计为13 左右,这个比例的设计被认为大体上可以支撑无阻塞转发。
在Spine-Leaf 架构中,Leaf 交换机相当于传统三层架构中的接入交换机,直接连接物理服务器,并通常作为网关设备。Spine 交换机相当于核心交换机,是整个网络的转发核心。Spine 和Leaf 交换机之间通过ECMP(Equal Cost Multi Path,等价多路径)实现多路径转发。和传统三层网络中的核心交换机不同的是,Spine 交换机是整个网络流量的转发核心,相当于Clos 架构中的中间级。由Clos 架构可以看出,南北向流量可以不再通过Spine 发送至网络外部,而是可以通过Leaf 交换机完成这一任务,这样Spine 交换机可以专注于流量的转发而不再需要关注其他一些辅助功能。
4 Spine-Leaf 架构与传统的三层网络架构比较
Spine-Leaf架构相对于传统的三层网络架构的优势如下(见图3)
图3 多级别的Spine-Leaf 架构
第一,支持无阻塞转发。Spine-Leaf 架构对于东西向和南北向流量的处理模式是完全一致的,在设计合理的情况下,可以实现流量的无阻塞转发。无论何种类型的流量都只需要经过Leaf-Spine-Leaf 3 个节点即可完成转发。
第二,弹性和可扩展性好。Spine-Leaf 拥有很好的横向扩展能力,只需要保证Spine 和Leaf 在一个比例范围内,不需要重新设计,将原有的结构复制一份即可。一般来说,基于3 级Clos 的Spine-Leaf 架构可以满足当前大部分数据中心网络的带宽诉求。针对超大型的数据中心,可采用5级的SpineLeaf架构,即每个PoD 部署一个3 级Clos 的Spine-Leaf 网络,不同PoD之间再增加一层Core 交换机进行互联,跨PoD 流量可以通过Leaf-Spine-Core-Spine-Leaf,5 跳可达。Spine 和Core 之间进行full-mesh 连接。另外,网络设计可以非常灵活,在数据中心运行初期网络流量较少时,可以适当减少Spine 交换机的数量,后续流量增长后再灵活地增加Spine 交换机即可。
第三,网络可靠性高。传统三层网络架构中,尽管汇聚层和核心层都做了高可用设计,但是汇聚层的高可用由于是基于STP(Spanning Tree Protocol,生成树协议)的,并不能充分利用多个交换机的性能,并且,如果所有的汇聚交换机(一般是两个)都出现故障,那么整个汇聚层PoD 网络就会瘫痪。但是在Spine-Leaf 架构中,跨PoD 的两个服务器之间有多条通道,不考虑极端情况时,该架构的可靠性比传统三层网络架构高。
5 大规模数据中心内云计算网络的设计方案
大规模数据中心内云计算网络的物理组网架构建议采用Spine-Leaf 架构,该网络结构可以提供接入节点间的无差异互访,具有高带宽、大容量和低网络时延等特点。由于采用了Spine-Leaf 的扁平结构,整体网络东西向流量转发路径较短,转发效率较高。扩展性上,当服务器数量增加时,增加Leaf数量即可实现弹性扩缩。当Leaf 数量增加导致Spine 转发带宽不足时,可相应增加Spine 节点的个数。
Spine 节点主要负责Leaf 节点之间流量的高速转发。推荐多台单机部署,数量根据Leaf 到Spine 的收敛比(Leaf 的下行总带宽和Leaf 的上行总带宽的比值,不同的行业及不同的客户有各自的要求)来决定。一般来说,收敛比为1∶9~1∶2。
Leaf 节点主要负责Server 的接入(业务服务器和VAS 服务器)和作为南北向网关。Leaf 可使用多种灵活的组网方式,推荐使用M-LAG 双活方式部署,如果对可靠性或升级丢包时间等要求不高,也可以使用虚拟机框类技术。每个Leaf 节点与所有Spine 节点相连,构建全连接拓扑形态。
Leaf 和Spine 之间建议通过三层路由接口互联,通过配置动态路由协议实现三层互联。路由协议推荐OSPF 或BGP,采用ECMP 实现等价多路径负载分担和链路备份。从Leaf 通过多条等价路径转发数据流量到Spine,在保证可靠性的同时也能提升网络的带宽。如图4 所示。
图4 Spine-Leaf 架构物理组网
根据服务器接入带宽和Leaf 到Spine 的收敛比选定Server Leaf 硬件设备。硬件形态主要考虑接入带宽、收敛比和特殊业务诉求。服务器接入带宽一般来说为10GE 或者25GE。收敛比则是Leaf 下行带宽和上行带宽的比例情况,可以根据客户要求来进行设计,一般为1 ∶9~1 ∶2。
除了一般的服务器接入的Server leaf 之外,还有Border Leaf 和Service Leaf。Border Leaf 主要用作数据中心网络的南北向网关,负责将南北向流量发送给对端的PE及从PE接收发往数据中心内部的流量。Service Leaf 主要用作接入防火墙、负载均衡器等VAS 设备。Service Leaf 和Border Leaf 可以合设也可以分设。
6 结束语
随着云计算技术的快速发展和数据中心内业务激增,传统三层网络架构无法支撑大二层网络构建和流量的无阻塞转发,Spine-Leaf 架构网络逐渐开始出现,其拥有高可靠、高智能、低延时的特性,可以很好地满足大规模数据中心内云计算的组网需求,不过对于规模较的数据中心,传统的三层网络架构拥有实现简单、配置工作量低、广播控制能力较强的特点,所以也仍然适用。