数据中心互连 (DCI)/远程 EVPN 网关
DCI/EVPN 网关覆盖
过去,企业一直将数据中心互连 (DCI) 技术用作实现业务连续性、灾难恢复 (DR) 或运维连续性 (COOP) 的构建块。这些服务可用性用例主要依赖于需要将地理上分离的数据中心与第 2 层连接进行连接,以实现应用可用性和性能。
随着高度虚拟化的软件定义数据中心 (SDDC)、云计算以及最近的边缘计算的兴起,其他用例也应运而生:
- 主机托管扩展:将计算和存储资源共享到主机托管数据中心设施。
- 资源池:在数据中心之间共享和转移应用,以提高效率或改善最终用户体验。
- 快速可扩展性:将容量从资源受限的位置扩展到其他设施或数据中心。
- 传统迁移:将应用和数据从陈旧、低效的设备和架构迁移到更高效、性能更高且更具成本效益的架构。
借助 Apstra 软件,您可以部署和管理简单、灵活且基于意图的、包含供应商的 DCI 解决方案。Apstra 将基于标准的 MP-BGP EVPN 与 VXLAN 结合使用,已在网络行业中广泛采用软件和硬件。从传统供应商到白盒 ODM 的大量经济高效的商用硬件和软件选项中进行选择,从传统供应商集成网络操作系统 (NOS) 到分解式开源选项,应有尽有。
EVPN VXLAN 是一种基于标准 (RFC-7432) 的现代数据中心构建方法。它集成了数据平面封装 (VXLAN) 和路由控制平面(MP-BGP EVPN 地址族),用于在主机之间扩展第 2 层广播域以及脊叶网络中的第 3 层路由域。EVPN 依靠纯第 3 层底层网络在 VXLAN 隧道端点 (VTEP) 之间路由 VXLAN 隧道流量,在 MP-BGP 协议家族中引入了新的地址家族,并支持在 VTEP 之间交换 MAC/IP 地址。端点 MAC 和 IP 通告以及“ARP/ND 抑制”消除了对绝大多数广播/未知/组播 (BUM) 流量的需求,并依赖于 VXLAN 的 ECMP 单播路由(从源 VTEP 到目标 VTEP)。这可确保为叠加网络流量提供最佳路由选择和转发路径的高效负载分担。
正如 EVPN VXLAN 可在单个站点内扩展主机之间的第 2 层连接一样,DCI 功能可在站点之间实现第 2 层连接。Apstra DCI 功能支持在数据中心之间扩展第 2 层或第 3 层服务,以实现灾难恢复、主动-主动站点的负载平衡,甚至促进服务从一个数据中心迁移到另一个数据中心。
限制:
-
不支持不同供应商的 EVPN 交换矩阵之间的 EVPN-GW (DCI)。
-
远程 EVPN 网关不支持 IPv6。(实际 EVPN 路由可以包含 IPv6 类型 2 和类型 5。)
DCI 部署选项
以下特征适用于所有部署选项:
- 您可以将 Apstra DCI 扩展到其他 Apstra 托管数据中心、非 Apstra 托管数据中心,甚至可以扩展到传统的非脊叶设备。
- Apstra 的实施和行为在这三种情况下都是相同的。
- 无论远程端是另一个 DCI GW 还是 ASBR,对 Apstra 都是透明的。
- Apstra 既不管理 GW,也不管理 ASBR。
您可以使用以下方法实现数据中心互连。如需为您的组织选择最佳选项的帮助,请咨询您的 Apstra 解决方案架构师 (SA) 或系统工程师 (SE)。
过火的
DCI “Over the Top” 是一种透明的解决方案,这意味着 EVPN 路由被封装在标准 IP 中,并且对底层传输隐藏。这使得服务扩展变得简单灵活,之所以选择这种方式,是因为数据中心团队几乎可以在与 WAN 或服务提供商组协调的情况下实施它。这减少了实施时间和公司内部摩擦。但是,需要权衡可扩展性和弹性。
网关 (GW)
基于 Apstra 远程 EVPN 网关 功能,您可以选择性地将 远程 EVPN 网关 指定为同一站点中的外部通用系统(标记为外部路由器),从而将 EVPN 属性扩展到所述网关。此解决方案可以在每个站点创建一个容错域,从而防止故障影响远程站点的融合并产生多个容错域。远程站点的 IP/MAC 端点表在通用系统(标记为外部路由器)网关上进行处理并保持状态。您还可以实施 WAN QoS 和安全性,以及传输技术提供的优化(例如 MPLS TE)。但是,这种解决方案在运维上更加复杂,需要额外的硬件和成本。
自治系统边界路由器 (ASBR)
使用 Apstra 远程 EVPN 网关 功能,您可以选择性地将 远程 EVPN 网关 指定为 ASBR WAN 边缘设备。这种端到端 EVPN 支持统一封装,并消除了专用的 GW 要求。虽然运维复杂,但与“使用网关的 DCI”和“Over the Top”相比,它的可扩展性更高。
实现
您可以将路由区域和虚拟网络 (VN) 扩展到 Apstra 管理的蓝图(跨 Pod)或 Apstra 不托管的远程网络(跨数据中心)。此功能引入了 EVPN 网关 (GW) 角色,该角色可以是参与交换矩阵的交换机,也可以是连接到交换矩阵的通用系统(标记为服务器)上的路由服务器。
EVPN 网关用例
- 将第 3 层隔离域(VRF/路由区域)跨越到多个 Apstra 托管的 Pod(蓝图),或扩展到远程 EVPN 域。
- 为 L2VNI/虚拟网络提供第 2 层域扩展。
- 帮助将 EVPN 域从 Apstra 扩展到 Apstra 托管,将 Apstra 扩展到非托管 Pod。
- 主干设备上无 VXLAN 流量终止 - 连接主干设备上的外部通用系统(标记为外部路由器)。这是为了支持 IPv4(底层)外部连接。与边界叶设备不同,在此,当连接到外部通用系统(标记为外部路由器)时,主干设备不需要终止 VXLAN 流量。简而言之,使用此功能可以将 IPv4 路由交换到远程 VTEP(在默认路由区域/VRF 中),并且只需要第 3 层连接:
过火的
当 BGP EVPN 对等互连在“顶部”完成时,数据中心网关 (DC-GW) 是一种纯 IP 传输功能,BGP EVPN 对等互连在不同数据中心的网关之间建立。
下一节将介绍通过 IP 网络以可扩展方式互连两个或多个基于 BGP 的以太网 VPN (EVPN) 站点的过程。其动机是支持 EVPN 站点的扩展,而不必依赖典型的数据中心互连 (DCI) 技术,如 MPLS/VPLS,这些技术通常难以配置,有时是专有的,并且可能本质上是遗留的。
“Over the Top”是一种简单的解决方案,只需要数据中心之间的 IP 路由和经过调整的 MTU 来支持网关端点之间的 VXLAN 封装。在这种实施中,EVPN 路由通过 MP-BGP 在站点之间进行端到端扩展。启用多跳 BGP 的前提是,通过 WAN 的站点之间会有多个第 3 层跃点。否则,默认 TTL 将递减为 0,数据包将被丢弃,并且不会进入远程路由器。Apstra 会自动渲染所需的配置,以解决这些限制。
此设计合并了站点之间的独立 EVPN-VXLAN 域和 VXLAN 隧道。通过将以前分离的 EVPN 域合并到不同站点中,可以实现在站点之间扩展第 2 层和第 3 层 (VRF) 服务的优势,但也会将站点呈现为单个故障域。因此,一个站点中的故障必然会传播。此外,每当您在站点之间跨 WAN 扩展第 2 层时,您也在扩展泛洪域,随之而来的是所有通过成本高昂的 WAN 链路传输的广播流量。目前,此解决方案不提供任何过滤或 QoS。
当单独的 Apstra 蓝图管理单个站点时(或仅管理一个站点时),您必须在每个站点中独立创建和管理扩展路由区域 (VRF) 和虚拟网络(第 2 层和/或第 3 层定义的 VLAN/子网)。您必须在站点之间手动映射 VRF 和 VN(这会产生管理开销)。
如果您要在同一 Apstra 控制器中的两个数据中心之间建立 P2P 连接(蓝图),则每个蓝图都必须从不同的 IP 池中提取资源,以避免构建错误。为此,请使用相同的 IP 子网创建两个 IP 池,但名称不同。
这种“Over the Top”解决方案最易于部署,无需额外硬件,除了增加 MTU 外,无需引入额外的 WAN 配置。它是最灵活的,进入门槛最低。但是,缺点是只有一个 EVPN 控制平面,一个站点中的路由异常会影响其他站点的融合和可达性。第 2 层洪水域的扩展还意味着一个站点中的广播风暴会扩展到其他站点。
任何 DCI 的实施都需要仔细的资源规划和协调。增加更多的站点需要成倍地增加这种规划和协调。底层中的 VTEP 环路需要泄露。VNID 必须在站点之间匹配,在某些情况下,还必须导入其他路由目标 (RT)。本文档稍后将对此进行详细介绍。
数据平面扩展:第 3 层
VXLAN 网络 ID (VNID) 是 VXLAN 标头的一部分,用于识别唯一的 VXLAN 隧道,每个隧道都与 IP 网络中的其他 VXLAN 隧道隔离。第 3 层数据包可以封装到 VXLAN 数据包中,或者第 2 层 MAC 帧可以直接封装到 VXLAN 数据包中。在这两种情况下,唯一的 VNID 都与第 3 层子网或第 2 层域相关联。在站点之间扩展第 3 层或第 2 层服务时,实际上是在站点之间拼接 VXLAN 隧道。因此,VNID 需要在站点之间匹配。
请务必了解,一个特定的 VNID 只会与一个 VRF(即 Apstra 术语中的路由区)相关联。VNID 存在于 VRF 中。它们与 VRF 绑定。对于第 3 层服务,每个 VNID 的拼接或扩展是通过在路由区域 (VRF) 内导出和导入 RT 来完成的。第 3 层子网(路由)通过 RT 识别。所有 VNID 都会在 EVPN 网关(边缘)自动导出到 WAN。相反,在进入交换矩阵的 EVPN 网关(边缘)处会自动导入相同值的 RT。因此,如果您协调一个站点的第 3 层 VNID 以匹配另一个站点,则无需额外配置。
在上图中,不需要额外的导出或导入。所有内容都会自动导出(全部导出),并且由于 RT 匹配,因此会自动导入。
但是,如果 DC1 中的 VNID 与 DC2 中的 VNID 不同,则您必须分别导入 RT。每个相应的网关仍会自动导入相同值的 RT。在下面的示例中,需要执行从其他站点手动添加 RT 的额外步骤。
数据平面扩展:第 2 层
虚拟网络可以是纯第 2 层服务(第 3 层任播网关不会实例化)。它可以是机架本地的(机架内包含的面向服务器的端口上的 VLAN)或 VXLAN(选择机架以在机架之间扩展第 2 层泛洪和广播域。此第 2 层域具有自己的 VNID,MAC 帧(相对于 IP 数据包)通过第 2 层域的 VNID 封装到 VXLAN 标头中。
同样的原则也适用于以下情况:所有 VNID 都将在 EVPN 网关上导出(在本例中为 Type-2 路由/MAC 地址),并且会自动导入匹配的 RT。但是,导入和导出 RT 的位置不在路由区域级别,而是在虚拟网络本身。
Apstra 工作流程
控制平面扩展:EVPN 网关
Apstra 使用了“EVPN 网关”的概念。理论上,此设备可以是叶式、主干式或超级主干交换矩阵节点,也可以是 DCI 设备。EVPN 网关将交换矩阵端与网络分隔开来,网络用于站点互连并屏蔽站点内部 VTEP。
在 Apstra 中,EVPN 网关是属于并驻留在 EVPN 交换矩阵边缘的设备,而 EVPN 交换矩阵也连接到外部 IP 网络。在 Apstra EVPN 蓝图中,这始终是一个边界叶设备。一个数据中心的 EVPN 网关与另一个数据中心的一个或多个互惠 EVPN 网关建立 BGP EVPN 对等互连。“其他”EVPN 网关是 Apstra 术语中的“远程 EVPN 网关”。本地 EVPN 网关假定是蓝图中由 Apstra 管理的设备之一,并在创建“远程 EVPN 网关”时被选中。本地 EVPN 网关是具有一个或多个外部路由连接的边界叶交换机,用于进出 EVPN Clos 交换矩阵的流量。
借助此功能,您可以配置一个本地 EVPN 网关(始终是 Apstra 管理的交换机),与另一个数据中心中的非 Apstra 托管甚至非主干叶设备对等。EVPN 网关 BGP 对等连接用于将所有 EVPN 属性从 Pod 内部传输到 Pod 外部。在 Apstra 环境中,每张蓝图代表一个数据中心。如果两个或更多站点处于 Apstra 管理之下,您仍必须将每个站点配置为指向其他站点中的“远程 EVPN 网关”。我们建议您为每个数据中心创建多个冗余 EVPN 网关。EVPN 网关之间目前也存在全网状要求,但在未来的版本中,这一要求将会被移除。
底层 VTEP 路由通告
必须相互建立对 VTEP IP 地址或等效汇总路由的底层可访问性。每个站点都必须将这些 VTEP 环路从默认路由区域内播发到导出的 BGP (IPv4) 底层播发中。默认情况下,路由策略中的环路处于启用状态。
创建远程 EVPN 网关
默认情况下,所有蓝图上的 ESI MAC msb(最高有效字节)均设置为 2。每个连接的 Apstra 蓝图都必须具有唯一的 MSB,以防止影响服务的问题。在创建网关之前,请相 应地更改 ESI MAC MSB 。(您可以将其中一个保留为默认值。
远程 EVPN 网关是一项逻辑功能,您可以在任何地方和任何设备上实例化。通常需要 BGP 支持,特别是 L2VPN/EVPN、AFI/SAFI。要与 EVPN 网关建立 BGP 会话,应具备 IP 连接以及与 TCP 端口 179 的连接(IANA 分配 BGP TCP 端口)。
为了增强弹性,我们建议对同一个远程 EVPN 域至少有两个远程网关。
- 从蓝图中,导航到“通过 顶部或外部网关暂存> DCI > ”,然后单击 “通过顶部创建或外部网关”。
- 在打开的对话框中,填写远程 EVPN 网关的以下信息。
在数据中心交换矩阵之间扩展 L2 网络时,您可以选择仅交换 EVPN 路由类型 RT-5 前缀(无接口型号)。当不需要在数据中心位置之间交换所有主机路由时,这个功能会很有用。这导致 DCI 设备上对路由信息库 (RIB)(也称为路由表)和转发信息库 (FIB)(也称为转发表)的要求较小。
- 选择 本地网关节点。这些是蓝图中将配置本地 EVPN 网关的设备。您可以选择一台或多台设备与配置的远程 EVPN 网关对等。您可以使用查询函数来帮助您找到相应的节点。我们建议使用与外部通用系统(标记为外部路由器)直接连接的多个边界叶设备。
- 单击 “创建 ”(Create) 暂存网关并返回到表视图。
- 准备好在蓝图中部署设备时,请提交更改。
我们建议使用多个远程 EVPN 网关。要配置其他远程 EVPN 网关,请重复上述步骤。
如果要将远程 EVPN 网关配置到其他 Apstra 蓝图中,则必须在该蓝图中单独配置和部署远程 EVPN 网关。
部署更改后,Apstra 将监控远程 EVPN 网关的 BGP 会话。要查看蓝图中的任何异常,请导航到 活动>异常。
增强型路由区段
作为扩展服务一部分的设备上的 RT(路由目标)导入/导出策略控制 EVPN 路由安装。指定路由目标策略,以添加导入和导出 Apstra 用于路由区域/VRF 的路由目标。在创建路由区域时执行此操作。导航到 暂存>虚拟>路由区域 ,然后单击 创建路由区。有关更多信息,请参阅 路由区域。
为路由区域生成的默认路由目标为 <L3 VNI>:1。您无法更改此默认值。
要确认在 VTEP 上接收到的路由正确,请确保蓝图和远程 EVPN 域之间的 L3VNI 和路由目标相同。
增强型虚拟网络
您可以添加 Apstra 用于虚拟网络的其他导入和导出路由目标。
Apstra 为虚拟网络生成的默认路由目标是 <L2 VNI>:1。你无法改变这一点。
对于 VNI 内部通信,使用特定于 L2VNI 的 RT。导入 RT 用于确定哪些收到的路由适用于特定 VNI。要建立连接,蓝图和远程域之间的第 2 层 VNI 必须相同。SVI 子网在域中必须相同。
远程网关拓扑表示
远程 EVPN 网关在拓扑视图上表示为云元素,带有虚线连接,连接到用于建立 BGP 会话的蓝图元素,如下图所示。(下图与最新版本略有不同。