VXLAN篇之Multi-Pod

作者简介:张磊,思科原厂8年多technical consulting engineer,精通思科数据中心/园区网产品及技术;精通SAN网络架构及产品;熟悉广域网产品及技术。

第一篇:VXLAN篇之初识
第二篇:VXLAN篇之EVPN
第三篇:VXLAN篇之进阶

之前的《VXLAN篇之进阶》说到了multi-pod,multi-fabric,multi-site。这次,再把multi-pod给填上!

一、VXLAN multi-pod overview:

1/ VXLAN Multipod Design Interconnecting Leaf Nodes:

如上图所示,每个Pod通过Transit Leaf Node互连。Transit Leaf Node是纯三层设备,可以是computing leaf nodes (连接本地endpoints的leaf节点) ,也可以是border leaf nodes (连接external router的leaf节点).

2/ VXLAN Multipod Design Interconnecting Spine Nodes:

如上图所示,在每一个单独的pod里面,Spine除了保证可以路由leaf之间的VXLAN流量,不需要额外的功能。这是因为VXLAN隧道是在leaf之间建立,并且独立于其他pod。

3/ VXLAN Multipod M-Shaped Design:

如上图所示,在这种场景下,transit leaf node连接本地Spine和远端Pod里的Spine设备。Transit leaf node的数量,取决于两个Pod之间流量大小,以及未来的扩展性。

二、Multi-pod:when?why?

在相同数据中心,部署的pods之间的互连,比如同一个数据中心的不同机房:multi-pod设计就会很有用。考虑这样一种场景,基础布线已经完成了,而且是针对传统三层结构(接入、汇聚、核心)做的布线;这时就不太容易适用Spine-leaf架构。通过核心层(或者叫super spine)把独立的pod互连起来。

同样的,当不同的pod被放到同一个园区的不同的楼里时,没有足够的光纤做leaf和spine之间full mesh互连时,Multi-Pod的方案相比整个数据中心或者园区重新布线,会是一种更为节约成本的解决方案。

三、multi-pod的部署方案:

1/ Use of Direct Layer 3 Links for VXLAN Multipod Deployments:

如上图所示,这些pod通过专用的三层网络设备连接。或者,可以使用在leaf节点上配置三层口然后直连。

2/ Single Control Plane for Underlay and Overlay Connectivity:

如上图所示,对于单个物理位置上(比如两个pod在同数据中心的不同机房)的multi-pod,通常首选这种方式。这也是multi-pod最流行的一种使用方式

3/ Multipod Deployment with Control-Plane Separation Across Pods:

尽管在技术上和功能上,“Single Control Plane for Underlay and Overlay Connectivity”(上一种)的方式都很好,但是仍然将control-plane跨pod进行分离的方式介绍给大家,这种方式可以提供更简单、更结构化的设计,如上图所示。这种方式虽然在结构上更简单,但是,需要考虑的细节会更多,配置量也会更大。

四、L2 VNI映射与L3 anycast gateway:

VLAN-to-Layer 2 VNI Mapping

VXLAN segment独立于underlay网络,同样的,VTEP之间的underlay网络独立于VXLAN overlay。本地定义的vlan及其的关联的二层VNI映射组合,允许你创建可以跨pod的二层逻辑segment。如上图所示,它提供了连接到相同VNI的endpoint之间的二层连接,这些endpoint独立于它们连接到的特定pod。同时,不同的二层VNI segment提供了endpoint之间的逻辑隔离。就像在传统的VLAN部署中一样,不同的二层VNI endpoint之间只能通过三层路由功能进行通信。

Anycast Layer 3 Gateway

上图展示了一个web服务器在与host和database之间通信时,执行了一个实时迁移的过程:从host所在的Pod,迁移到了database所在的远端Pod。
MP-BGP control-plane注意到了web服务器发生了移动,并且知道了web服务器的新位置。随后,它将增加BGP sequence number值,并立即通知其他所有VTEP,告诉它们web服务器的新位置。这个sequence number现在高于原始值,所以,所有的VTEP接收到了这个update后,都会使用新的下一跳信息,并更新它们的转发表(egress VTEP-4)。可以参见之前的“VXLAN篇之EVPN”。

这样,没有任何中断当前active会话,web服务器持续的使用它的默认网关;现在这个默认网关就从VTEP-1变成了VTEP-4。

五、网络服务集成方案—外部通信:

上边我们说了Pod-to-Pod的设计方案(即两个Pod之间的流量通信),下边我们看看multi-pod如何与外部通信:

Active-Standby的防火墙部署架构

几个注意点:

  • 防火墙服务节点可以是物理设备或虚拟设备,通常部署物理设备。
  • 防火墙服务节点可以是路由或透明模式部署,路由模式是最常用的选项。
  • 防火墙服务节点可以被配置成第一跳路由器(first-hop router)来提供默认网关的功能。

当使用路由模式时,可以在防火墙节点和网络设备之间使用动态路由协议,从而实现VLXAN区域与WAN edge设备之间交换路由条目,或者也可以使用静态路由。

为了支持多租户,可以为需要与外部网络域通信的每个租户提供不同的防火墙接口(或VRF)。这种方法通常与物理防火墙设备的部署一起使用,或者,可以为每个租户部署一对专用的active-standby虚拟设备。

接下来,结合流量我们宏观的看一看:

1/ Inbound流量:

Suboptimal Inbound Traffic Path

Optimized Inbound Traffic Path

假设active防火墙稳定在Pod-1,我们就需要通过路由策略,使得所有外部入站流量均从actve防火墙进去VXLAN域。避免次优路径,消耗interpod link带宽。

2/ Outbound流量:

Static Routes Configuration

Suboptimal Outbound Traffic Path

Optimized Outbound Traffic Forwarding

VTEP-2和VTEP-3均需要配置静态路由,但只在连接active防火墙的VTEP-2上执行:静态路由重分布到EVPN control-plane。避免连接standby防火墙的VTEP-3执行不必要的VXLAN封装解封装。VTEP-2和VTEP-3均配置静态路由的目的是为了防火墙failover时使用。

注:对比Suboptimal Outbound Traffic Path和Optimized Outbound Traffic Forwarding两张图的VTEP-3。

Firewall Failover Scenario

这里引入一个新的功能:Host Mobility Manager (HMM) route tracking。该功能在较新的Cisco NX-OS版本中被引入。如果主机路由是本地学习到,则打上HMM up标签;如果主机路由是通过MP-BGP学到,则打上HMM down标签。

首先,VTEP-2和VTEP-3均配有HMM。一旦防火墙发生failover,VTEP-3上的HMM进程跟踪到了一个与原active防火墙相同的IP(standby防火墙开始接管),这时,它会触发一个动作:将静态路由(预配好的)重分布到MP-BGP。从而使得MP-BGP发送update告知其他所有VTEP节点,新的actve防火墙位置在VTEP-3下。当VTEP-2收到了这个BGP update,它携带着与本地原active防火墙相同的IP地址和MAC地址的信息,通过比较BGP sequence number发现,VTEP-3发来的值更高。所以,VTEP-2会更新本地转发表,同时,从EVPN control-plane撤回旧的静态路由。

六、Multi-Pod的不足:

End-to-End封装会带来扩展性问题,当前支持的最大VTEP数量为256.

单一的BUM replication domain,没有任何限制,不安全(被非预期终端接收)。

最后例行tip:尽管multi-pod可以解决部分问题,但是它也确实存在着一些不足。技术的迭代和更新是日新月异的,让我们来看一张图:

Multi-site,the happy place!

虽然,我们现在推荐使用multi-site,但是,谈主还是希望将技术的演进过程逐一的介绍给大家!就像现在没人用OSI七层参考模型,但我们网络的第一课永远是OSI七层参考模型一样!


  • 本站原创文章仅代表作者观点,不代表SDNLAB立场。所有原创内容版权均属SDNLAB,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用,转载须注明来自 SDNLAB并附上本文链接。 本站中所有编译类文章仅用于学习和交流目的,编译工作遵照 CC 协议,如果有侵犯到您权益的地方,请及时联系我们。
  • 本文链接https://www.sdnlab.com/23643.html
分享到:
相关文章
条评论

登录后才可以评论

leiz2 发表于19-10-16
2