第 21 章 VXLAN
本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com
虚拟 eXtensible Local Area Network (VXLAN) 是一种允许设备在同一第二层 (L2) 网络上通信的技术,即使它们被第三层 (L3) 网络分隔开来。简单地说,这就像在 L3 上建立 L2 隧道,但其实没那么简单,因为如果简单了,我们就不会有工作了。
几十年来,人们一直教导 Network+ 尽可能缩小 L2 广播域,以限制广播风暴等可能造成的破坏。此外,随着数据中心规模的扩大,我们开始遇到交换机硬件的限制,如支持的最大 MAC 地址数。为此,我们坚持要求数据中心拥有自己的 IP 空间。早在上世纪 90 年代,我就赚了不少钱,将公司从庞大的桥接环境转移到更合理、更分段的 IP 解决方案上。那么,为什么要倒退呢?
vMotion 等解决方案允许虚拟机(VM)从一台主机移动到另一台主机,同时保持虚拟机的可用性。这是一件很酷的事情,但要做到这一点,虚拟机的 IP 地址必须保持不变。在多个地点建立数据中心对避免灾难来说是件好事,因此这些主机可能位于不同的物理位置。因此,我们需要让同一个 IP 空间存在于两个不同的物理位置。
此外,某些集群技术要求所有主机都在同一 IP 空间内。公司通常希望在多个楼宇之间建立群集,以提高弹性,这就再次引出了在不同楼宇建立相同 L2 域的要求。
作为一名长期的网络架构师,我花了相当多的时间来反驳这一点。我有一些非常聪明的朋友是 VMware 和存储方面的专家,他们认为我是他们无法完成工作的原因。当网络人员坚持的设计阻碍了服务器/存储/虚拟机人员实施他们的解决方案时,网络人员就成了拦路虎。
答案(像我这样的人非常不喜欢)是,网络的存在是为了满足服务器的连接需求。如果没有服务器,也就没有网络。因为网络并没有真正发展到满足现代虚拟计算的需求,而现代虚拟计算又一直坚持使用 L2 网络来解决问题,所以我们只能努力让这一切运转起来。
目前有几种现有技术试图解决这个问题。思科的重叠传输虚拟化(OTV)使用网络设备通过 L3 对 L2 进行隧道传输,但它被设计为点对点解决方案,就像可能部署的网络虚拟专用网(VPN)一样。因此,无需在服务器、主机或 VMware 集群上进行额外配置。OTV 为思科专有,需要思科 Nexus 交换机(虚拟设备上下文 [VDC] 可专用于 OTV)或思科 ASR 路由器作为 OTV 设备。
VXLAN 是一项开放标准,由思科、VMware、Arista 等多家厂商共同开发。Arista 的创始人之一 Ken Duda 在其创建过程中发挥了重要作用。
VXLAN 和 IT 领域的大多数事物一样,充斥着各种新术语、缩略语和首字母缩写词,因此在继续讨论之前,让我们先来定义一下这些术语、缩略语和首字母缩写词。
- VXLAN 重叠网络(网段)
VXLAN 提供了一个存在于 L3 网络之上的 L2 叠加网络。没错,这就是 L2 在 L3 上的隧道,而 L3 则在 L2 上。每个 L2 网络都称为VXLAN 覆盖网络或VXLAN 网段。这些网段是离散的(可以有很多个),并通过其 VXLAN 网络标识符来识别。
- VXLAN 网络标识符 (VNI)
-
VNI 是 VXLAN 隔离 L2 叠加网络的手段。它有时也被称为 VXLAN 网段标识(VXLAN Segment-ID)。VNI 类似于 VLAN 编号,但由于 VNI 是 24 位值(16,777,216 种可能性),而 ...