某股份有限公司是一家拥有 10000 多人的大型企业,拥有多个数据中心核心机房,由于建设的数据中心周期时间较久,核心机房的设备已经运作时间较长,而且设备硬件偏旧。已经无法 支持未来的生产系统、业务系统部署需求。无法支撑核心业务快速上线时间,整个数据中心机房需要进行转型化升级改造来适应未来数字化业务的发展。
1.2 项目目标基于以上项目背景和需求,本次数据中心网络建设设计需要满足未来较长一段时期的基础设施部署需求,并借助数据中心网络部署的独立性,运用 VXLAN 、 SDN 主流技术对当前数据中心网络结构进行优化,以适应未来网络架构的发展需求。本项目的具体目标如下:
1、数据中心机房网络基础设施。
2、数据中心网络至少需要支持未来的生产系统、业务系统部署需求。业务上线时间由原先的平均 30 天,缩短到分钟级别。
3、结合 XX 大型 IT 总体的规划,对数据中心的网络结构进行必要的优化,以适应新时期的业务部署、安全运行、提高 IT 管理水平的需求,网络方案要保持一定的先进性。
4、采用先进的数据中心设计理念,能够支持新一代应用架构,适用于未来 5-7 年的 IT 技术发展,可以最大程度的保护数据和业务连续性。
1.3 项目需求1.3.1 业务需求如何更加快速地部署业务应用,为企业业务系统提供更及时、更便利的网络服务,提升企业的运行效率与竞争实力,也是当前企业数据中心使用中面临的挑战之一。因此,当前数据中心的建设必须考虑如何实现快速上线业务、快速响应需求、提高部署效率。
1.3.2 网络需求服务器虚拟化使高效利用 IT 资源,降低企业运营成本成为可能。服务器内多虚拟机之间的交互流量,传统网络设备无法感知,也不能进行流量监控和必要的策略控制。虚拟机的灵活部署和动态迁移需要网络接入侧做相应的调整,在迁移时保持业务不中断。虚拟机迁移的物理范围不应过小,否则无法充分利用空闲的服务器资源。迁移后虚拟机的 IP 地址不改变,以保持业务不中断,因此对数据中心网络提出了大二层的需求。
1.3.3 安全需求数据中心对网络安全性的需求是最基本的需求。安全性设计包括物理空间的安全控制及网络的安全控制。系统设计从整体方案上需要考虑端对端的安全,保证安全、绿色的使用资源。
1.3.4 运维需求高效的运维是数据中心运营成功的基础。数据中心网络设备和 IT 资源呈现数量大、厂商多、运行配置复杂的特点,如何简化企业数据中心的运维管理、降低人工运维成本,是当前企业数据中心发展面临的重要挑战。
在采用虚拟化技术后,数据中心网络延伸到服务器内部,如何对包括虚拟设备在内的多类设备进行统一管理、实现网络流量的精细化管理和网络故障的快速定位,都是对云计算时代数据中心运维的基本需求。
在数据中心业务场景中,面向应用的运维管理目前正变得越来越迫切,如应用间 / 内的交互数据统计,带宽占用情况,数据转发路径链路质量,会话连接故障分析等精细化运维管理正成为用户广泛的诉求,上述运维手段的实现将对减轻人工运维压力,快速故障响应,提升用户业务体验等方面都将获得显著效果。
随着企业业务的快速扩展需求, IT 做为基础设施,快速部署和减少投入成为主要需求,云计算可以提供可用的、便捷的、按需的资源提供,成为当前企业 IT 建设的常规形态,而在云计算中大量采用和部署的虚拟化几乎成为一个基本的技术模式。部署虚拟机需要在网络中无限制地迁移到目的物理位置,虚机增长的快速性以及虚机迁移成为一个常态性业务。服务器虚拟化在经过多年的发展后已经越来越成熟,被应用的领域也越来越广泛。它有效降低了成本,提高了资源利用率和可用性,同时使运维效率也得到了较大提升,进而缓解了信息化建设所面对的诸多压力。虽然服务器虚拟化的普及彻底改变了应用的调配和管理,但是,这些动态工作负载所连接的网络却未能跟上它的发展步伐。网络调配仍然极其缓慢,甚至一个简单的拓扑结构的创建也需要数天或数周时间。
传统的网络已经不能很好满足企业迈向云时代的这种需求,面临着如下挑战:
2.1 业务规划与网络架构紧耦合传统数据中心业务规划分区分域, IP 地址网段划分则一般以 POD 为单位,一个 POD 内为一个网段,规划部署同一种业务。此种网络架构规划清晰,维护简单,但是不足之处就是业务扩容受限,假设业务 1 部署在 POD1 内,如果 POD1 内无法扩容,需要把业务部署在其他的机架上时则要求 POD1 与其他机架二层 Trunk 互通,要对网络做大量的配置更改。
2.2 东西流量受到传统网络架构限制传统网络架构以三层为主,主要是以控制南北数据流量为主,由于数据中心虚拟机的大规模使用,虚拟机迁移的特点以东西流量为主,在迁移后需要其 IP 地址、 MAC 地址等参数保持不变,如此则要求业务网络是一个二层网络。但已有二层技术存在下面问题:
生成树 (STP Spaning Tree Protocol) 技术,部署和维护繁琐,网络规模不宜过大,限制了网络的扩展。
各厂家私有的 IRF/vPC/ 等网络虚拟化技术,虽然可以简化部署、同时具备高可靠性,但是对于网络的拓扑架构有严格要求,同时各厂家不支持互通,在网络的可扩展性上有所欠缺,只适合小规模网络部署,一般只适合数据中心内部网络。
大二层网络技术 TRILL/SPB/FabricPath 等,虽然能支持二层网络的良好扩展,但对网络设备有特殊要求,网络中的设备需要软硬件升级才能支持此类技术,带来部署成本的上升。
云业务中虚拟机的大规模部署,使二层地址( MAC )表项的大小限制了云计算环境下虚拟机的规模,特别是对于接入设备而言,二层地址表项规格较小,限制了整个云计算数据中心的业务规模。
2.4 传统安全部署模式的限制传统模式下的安全部署都是基于路径基于拓扑的安全策略部署,安全业务必须根据业务的要求配置好 VLAN 、 IP 、引流策略,而且这些策略都是手工配置的,如果业务变更,那么安全策略的配置也必须跟着重新配置。另外传统安全都是基于物理硬件设备部署的,导致在业初期由于业务量小使设备利用率很低造成资源浪费,而且业务后期随着业务量的增量可能又会出现性能不够用的情况,安全设备的性能无法根据业务的要求而动态的扩展性能或者释放资源。
2.5 不能适应大规模租户部署云业务需要大量租户之间的隔离,当前的主流二层网络隔离技术为 VLAN ,但是在大量租户部署时会有两大限制:一是 VLAN 可用的数量为 4K 左右,远远不能满足公有云或大型私有云的部署需求;二是如果在大规模数据中心部署 VLAN ,会使得所有 VLAN 在数据中心都被允许通过,会导致任何一个 VLAN 的广播数据会在整个数据中心内泛滥,大量消耗网络带宽,同时带来维护的困难。
DC1.0 是传统数据中心所采用模块化、层次化的建设模式,针对不同类型及批次的业务进行分区分期建设。这种 “ 烟囱式 ” 的建设方式存在着重复投资、资源利用率低、建设及交付周期长、网络规划复杂僵化、业务扩容困难等问题。
随着计算虚拟化技术的普及应用,数据中心实现了计算资源池化,不同业务可以按需申请计算资源;同时,为了满足计算虚拟化对网络技术提出的大二层互通等新需求,开始应用 VxLAN 等网络虚拟化技术,数据中心建设进入了 DC2.0 。在这个阶段, IT 各部门负责前期统一规划建设和定期扩容,业务部门按需申请池化资源配额,项目建设及扩容不再和业务部门具体项目强相关。计算和网络虚拟化技术的融合,有效提高了资源利用率,缩短了资源交付周期。
随着云计算技术的发展,数据中心跨入 DC3.0 时代。云平台作为面向业务部门的用户界面,统一整合了对数据中心的计算、存储、网络池化资源,同时提供实时自助申请界面,帮助业务部门将业务开通时间缩短到分钟级别,真正实现了面向应用的自动化。
3.2 数据中心解决方案架构组成3.3 数据中心解决方案特点▲ 新 IT 业务平面和运维平面无缝融合,支撑面向应用的自动化
Fabric Director 作为面向监控运维的基础架构管理平面,负责数据中心物理资源的部署、纳管,物理及虚拟资源的运维和监控;云平台作为面向交付的云 & 租户管理平面,负责数据中心虚拟资源部署,同时为 PaaS 及 SaaS 层面的应用自动化部署提供支持。两者以数据中心资源生命周期管理为轴,实现了无缝融合。
▲ 开放、自动化、可编程的下一代网络架构,适用多种典型场景
1、SDN 场景:SDN 控制器承上启下,北向提供完整的 Restful API ,通过 Neutron 插件与 OpenStack 对接,同时支持各类第三方云平台对接;南向纳管 Openflow 及 E*** 两种组网形式;是当前数据中心解决方案的主打场景
2、OpenStack Plugin 场景:无 SDN 控制器,由网元上运行的 Comware 平台直接对接 OpenStack Neutron 组件
3、第三方自动化软件场景:针对特定用户需求,支持 Ansible 、 Puppet 等第三方自动化软件,为用户业务提供更多灵活性
▲ 完整的软件定义网络模型 SDN +,助力用户自描述网络
用户通过云平台申请计算资源、存储资源、租户虚拟网络,其中的计算和存储资源是业务部署需要,而虚拟网络负责将计算和存储资源连接起来。为了满足不同业务的网络互通及隔离需求,必须支持完整的软件定义网络模型,包括:
1、提供完整的网络抽象模型
具备完整网络描述能力,抽象端口、 L2 、 L3 网络、 L4~L7 层网络服务。
2、基于网络抽象模型,用户自描述 / 自定义网络
租户虚拟网络根据自身需求可灵活自定义,而物理网络可保持不变。
3、分配、管控、呈现以及运维自定义网络
网络资源可基于租户、租户不同业务进行细分;支持查看租户虚拟网络拓扑和物理网络拓扑的映射关系,并基于该统一拓扑进行运维和排障。
VCF Fabric 网络架构在实现完整的软件定义网络模型的同时,还提供了多样化的网络转发控制平面模型和 Overlay 组网方式,充分满足用户各类网络场景需求。
某大型企业数据中心项目从业务实际需求出发,充分利用信息技术优势,从大处着眼,小处着手,与用户共同建设一个目标明确、管理清晰、执行顺利、平稳运行的项目,在系统的建设和管理过程中,我们将遵循以下原则:
1 、注重顶层设计、统筹规划,分步实施原则
在项目的整体规划和总体设计阶段做好统一设计、统一标准、统一规范,然后分层、分阶段、逐步建设,关注每个阶段的产出和成果,在统一的目标下逐步完成整个项目的策略、需求、分析、设计、研发、测试、部署、试运行、培训、运维等工作。同时充分发挥各类项目相关人的知识能动性,提供信息化建设的咨询指导。
2 、强化应用建设,突出应用,关注实用原则
数据中心建设项目的建设效果和建设思路直接体现了建设项目最直接的产出。因此,我们在建设项目过程中,将重点突出项目的应用目的,关注实用价值,以应用和需求为主导,并在建设的过程中基于业务服务的要求、 IT 技术的发展,边建设、边开发、边应用、边完善,让应用的实际效果作为项目直接驱动要素。
3 、追求架构先进、技术成熟,扩展性强原则
项目建设中所采用的技术架构,在一定程度上影响着项目的稳定性,也影响到项目未来的发展。因此在实施过程中我们将放眼长远,在保证可靠的基础上,尽量采用先进的网络技术、应用平台和开发工具,使数据中心系统建设项目具有较长的生命周期。
4 、经济实用、节约成本原则
无论在产品的选型、技术的选择中,我们都要考虑成本的约束,其中不仅考虑当前采购的经济性,还要考虑系统长期运维的经济性,即系统的总拥有成本,尽力选择既经济可行又长期保障的产品和技术。
5 、确保安全、保护隐私原则
在系统建设中要充分考虑到系统安全性以及敏感信息的隐私性,避免数据出现在共享信息里,从网络系统、硬件子系统、软件子系统的设计都要充分考虑安全保密,采用安全可靠的技术,保证建成的系统稳定运行。
6 、重视资源、强调成长原则
在项目建设的过程中,注重信息资源和人力资源的管理,在数据资源方面,注重网络资源共享的效率性,实现网络互连、信息互通、资源共享,应用交互与协同的网络环境,同时注重各级人力资源配置的合理性,做好培训工作,与甲方的工作人员共同成长,充分发挥资源效能。
7 、保护投资、充分利旧原则
在本项目建设过程中,充分利用现有资源,防止新铺摊子和重复建设,所有建设内容都依托现有条件和队伍进行建设,充分利用现有的资源、成果、设备,不搞重复建设。
8 、先进性和成熟性
遵守先进性、可行性、成熟性,以保证系统的互操作性、兼容性、可维护性、可扩展性,并对前期投资有较好的保护。
9 、一致性和复用性
本项目建设应充分考虑业务需求,要最大限度利用已有的资源,以减少重复投资,提高投资收益率。
10 、实施有序性
统筹协调,建立相关管理制度,加强管理和指导,确保协调推进,有序实施,保证项目能够顺利、按时完成。
4.2 整体组网设计典型的 ADDC 组网图如上图所述,在这个图中,转发层的设备包括 vswitch 虚拟交换机、 vxlan 二层网关、 vxlan 三层网关、 vFW ����,�ַ�、 vLB 、其他普通的路由交换设备。控制层设备为 VCF 控制器。管理层设备为 VCFD ( ADDC Director )。控制层设备和管理层设备可以集中部署在网络管理区。物理设备由 Director 进行管理,可一键完成基础 underlay 网络、服务器和存储的自动化部署;在业务网络层面,通过 VXLAN 技术构建的 Overlay 网络可以实现与物理网络的解耦,大大提高网络的灵活性。VXLAN 网络通过 SDN 控制器采用下发流表的方式指导数据转发;对于一个用户的数据中心来说,服务器包含两种类型,即虚拟化服务器和非虚拟化服务器,虚拟化的服务器可以采用 vswitch 作为 vtep ,物理服务器则采用支持 Vxlan 的物理交换机作为 vtep 。控制平面借助高可靠的 SDN Controller VCFC 集群实现管理和配置, VCFC 控制器集中控制 vtep 和 vxlan 二层网关、 vxlan 三层网关。Fabric 区域网络的所有设备由 SDN 控制器 +VCFD 通过标准协议集中管理, VCFC 负责控制平面, VCFD 负责管理平面,减少了传统设备管理的复杂性。同时当用户业务扩展时,通过集中管理用户可以方便快速的部署网络设备,完成 Overlay 和 Underlay 网络的自动化交付,便于网络的扩展和管理。
核心 Spine 设备核心系列交换机主要提供 VXLAN 三层网关功能,网关之间可以采用堆叠方式部署;支持 VXLAN 报文的封装与解封装,并根据内层报文的 IP 头部进行三层转发,支持跨 VXLAN 之间的转发,支持 VXLAN 和传统 VLAN 之间的互通。
如果采用网络 Overlay 方式部署,即 VXLAN 协议由物理网络交换机处理,作为 vSwith 下的 VM 或物理服务器的接入设备;采用该方式可以最大利用硬件交换机的芯片高速转发,对于新建的数据中心推荐或增加新的业务单元模块时推荐使用。
如果采用主机 Overlay 方式部署,即 VXLAN 协议由虚拟网络交换机处理,虚拟交换机可以提供 VXLAN 协议封装、解封装功能,支撑 VM 接入到 SDN 的 Overlay 网络。用该方式可以最大利用现有的网络交换机进行部署,无需更换,对于已建成的数据中心 SDN 改造场景可以采用。
服务链功能主要是用来提供租户内东西向流量的安全服务,此功能由硬件安全设备或基于 NFV 形态的软件安全设备来承担;控制器支持集中控制整个服务链的构建与部署,将 NFV 形态或硬件形态的的服务资源抽象为统一的服务资源池,数据需要按照业务逻辑所定义的顺序,依次经过这些服务节点,实现服务链的自定义和统一编排。
4.3 数据中心 SDN 网络基础架构Overlay 网络的基础架构如下图所示:
Overlay 网络的基础架构
VM( Virtual Machine ,虚拟机)在一台服务器上可以创建多台虚拟机,不同的虚拟机可以属于不同的 VXLAN 。属于相同 VXLAN 的虚拟机处于同一个逻辑二层网络,彼此之间二层互通。
两个 VXLAN 可以具有相同的 MAC 地址,但一个段不能有一个重复的 MAC 地址。
VTEP( VXLAN Tunnel End Point , VXLAN 隧道端点)VXLAN 的边缘设备,进行 VXLAN 业务处理:识别以太网数据帧所属的 VXLAN 、基于 VXLAN 对数据帧进行二层转发、封装 / 解封装 VXLAN 报文等。
VXLAN 通过在物理网络的边缘设置智能实体 VTEP ,实现了虚拟网络和物理网络的隔离。VTEP 之间建立隧道,在物理网络上传输虚拟网络的数据帧,物理网络不感知虚拟网络。VTEP 将从虚拟机发出 / 接受的帧封装 / 解封装,而虚拟机并不区分 VNI 和 VXLAN 隧道。
VNI (VXLAN Network Identifier , VXLAN 网络标识符 )VXLAN 采用 24 比特标识二层网络分段,使用 VNI 来标识二层网络分段,每个 VNI 标识一个 VXLAN ,类似于 VLAN ID 作用。VNI 占用 24 比特,这就提供了近 16M 可以使用的 VXLANs 。VNI 将内部的帧封装(帧起源在虚拟机)。使用 VNI 封装有助于 VXLAN 建立隧道,该隧道在第 3 层网络之上覆盖率第二层网络。
VXLAN 隧道在两个 VTEP 之间完成 VXLAN 封装报文传输的逻辑隧道。业务入隧道进行 VXLAN 头、 UDP 头、 IP 头封装后,通过三层转发透明地将封装后的报文转发给远端 VTEP ,远端 VTEP 对其进行出隧道解封装处理。
VSI( Virtual Switching Instance ,虚拟交换实例)VTEP 上为一个 VXLAN 提供二层交换服务的虚拟交换实例。
4.4 详细设计内容4.4.1 OverlayOverlay 基础概念Overlay 在网络技术领域,是一种网络架构上叠加的虚拟化技术模式,其大体框架是对基础网络不进行大规模修改的条件下,实现应用在网络上的承载,并能与其它网络业务分离,并且以基于 IP 的基础网络技术为主。
Overlay 网络是指建立在已有网络上的虚拟网,逻辑节点和逻辑链路构成了 Overlay 网络。
Overlay 网络是具有独立的控制和转发平面,对于连接在 overlay 边缘设备之外的终端系统来说,物理网络是透明的。
Overlay 网络是物理网络向云和虚拟化的深度延伸,使云资源池化能力可以摆脱物理网络的重重限制,是实现云网安融合的关键。
Overlay 网络概念图
Overlay 技术标准IETF 在 Overlay 技术领域提出 VXLAN 、 NVGRE 、 STT 三大技术方案。大体思路均是将以太网报文承载到某种隧道层面,差异性在于选择和构造隧道的不同,而底层均是 IP 转发。VXLAN 和 STT 对于现网设备而言对流量均衡要求较低,即负载链路负载分担适应性好,一般的网络设备都能对 L2-L4 的数据内容参数进行链路聚合或等价路由的流量均衡,而 NVGRE 则需要网络设备对 GRE 扩展头感知并对 flow ID 进行 HASH ,需要硬件升级;STT 对于 TCP 有较大修改,隧道模式接近 UDP 性质,隧道构造技术属于革新性,且复杂度较高,而 VXLAN 利用了现有通用的 UDP 传输,成熟性极高。
所以总体比较, VLXAN 技术具有更大优势,而且当前 VLXAN 也得到了更多厂家和客户的支持,已经成为 Overlay 技术的主流标准,所以本文的后续介绍均以 VXLAN 技术作为标准进行介绍, NVGRE 、 STT 则不再赘述。
VXLAN ( Virtual eXtensible LAN ,可扩展虚拟局域网络)是基于 IP 网络、采用“ MAC in UDP ”封装形式的二层 *** 技术,具体封装的报文格式如图 2 所示。VXLAN 可以基于已有的服务提供商或企业 IP 网络,为分散的物理站点提供二层互联功能,主要应用于数据中心网络。
VXLAN 具有如下特点:
使用 24 位的标识符,最多可支持 16M 个 VXLAN ,解决了传统二层网络 VLAN 资源不足的问题。
基于 IP 网络组建大二层网络,使得网络部署和维护更加容易,并且可以好地利用现有的 IP 网络技术,例如利用等价路由负载分担。
只有边缘设备需要进行 VXLAN 处理, VXLAN 业务对网络中间设备透明,只需根据 IP 头转发报文,降低了网络部署的难度和费用。
VXLAN 是一个网络封装机制,它从两个方面解决了移动性和扩展性:
它是 MAC in UDP 的封装,允许主机间通信通过一个 Overlay 网络,这个 Overlay 网络可以横跨多个物理网络。这是一个独立于底层物理网络的逻辑网络,虚机迁移时不再需要改动物理设备的配置。
VXLAN 用 24-bit 的标识符,表示一个物理网络可以支持 1600 万个逻辑网段。数量级大大超过数据中心 VLAN 的限制( 4094 )
在 ADDC 体系结构中,封装工作在 VTEP 上执行, VTEP 可以是 vswitch ,或者是物理设备。这样, VXLAN 对主机和底层三层网络来说都是透明的。VXLAN 和 非 VXLAN 主机(例如,物理服务器或 Internet 路由器)之间的网关服务由 VXLAN 三层网关设备执行。Vxlan 三层网关将 VXLAN 网段 ID 转换为 VLAN ID ,因此非 VXLAN 主机可以与 VXLAN 虚拟服务器通信。
Overlay 网络分为 2 个平面,数据平面和控制平面。
Overlay 数据平面提供
提供数据封装,基于承载网络传输 , VXLAN 使用 MAC over UDP 封装
Overlay 控制平面提供
1 、服务发现( Service Discovery )
Overlay 边缘设备如何发现彼此,以便建立 Overlay 隧道关系
2 、地址通告和映射( Address Advertising and Mapping )
Overlay 边缘设备如何交换其学习到的主机可达性信息(包括但不限于 MAC 地址、或 IP 地址、或其他地址信息)
Overlay 边缘设备到主机的可达性问题,物理网络和 Overlay 网络地址映射
3 、隧道管理( Tunnel Management )
ADDC 1.0 强控解决方案 VXLAN 的控制平面是通过 SDN 控制器学习 , 由于控制器了解整 网的拓扑结构, VM 管理器知道虚拟机的位置和状态,这样,通过控制器与 VM 管理器的联动,就可以很容易实现基于控制器完成控制平面的地址学习,然后通过标准 OpenFlow 协议下发到网络设备。控制器支持多个节点集群,提供了高可靠性和极强的扩展性。
4.4.2 主机部署与物理位置解耦和通过使用 MAC-in-UDP 封装技术, VXLAN 为虚拟机提供了位置无关的二层抽象, Underlay 网络和 Overlay 网络解耦合。终端能看到的只是虚拟的二层连接关系,完全意识不到物理网络限制。