《策略驱动型数据中心——ACI技术详解》——1.3 数据中心设计
本节书摘来自异步社区《策略驱动型数据中心——ACI技术详解》一书中的第1章,第1.3节,作者: 【美】Lucien Avramov 【意】Maurizio Portolani 更多章节内容可以访问云栖社区“异步社区”公众号查看。
1.3 数据中心设计
数据中心网络基础架构设计,还包括定义交换机如何互联和如何保证网络中的数据通信。在包含接入、汇聚和核心的三层设计方法中,思科vPC是数据中心最常用的部署技术。还有一种被称之为“主干-叶节点”的新型两层矩阵的设计方法。这两种方法都会在本章后面的“采用主干-叶节点的ACI基础架构的逻辑数据中心设计”小节中介绍。
物理数据中心有3种基本的设计方法:列端式(EoR)、列中式(MoR)和架顶式(ToR)。该命名约定表示网络交换机在数据中心列中的位置。
这些部署模型的选择将基于以下的数据中心项目需求
- 故障域大小
- 可供机架和数据中心使用的功率
- 每个机架的服务器数量
- 每台服务器的NIC数量
- NIC速率
- 布线制约因素
- 操作制约因素
- 市场上可用的交换机形态规格
- 可用的预算
- 超载比
这个列表并不是最全面的,这只是为了解释主要的列中式或架顶式方法的最终选择决策背后的概念。目前的发展趋势是使用ToR方法来设计数据中心。这并不意味着ToR是唯一可采用的设计方法,因为每个数据中心的需求是不同的,但它是目前最常见的部署方法。
1.3.1 列端式
EoR是经典的数据中心模型,其中的交换机放在数据中心机柜列的一端。每个机架有电缆连接到列端网络设备,如图1-14所示。EoR模型减少了需要管理的网络设备数量,优化了网络的端口利用率。在此模型中,机架中的服务器布局决策所受的约束更少。要实现冗余设计,可使用两束铜线来连接每个机架,二者都连接到相反的EoR网络基础架构。此模型的不足在于,必须在每列上要预先水平铺设大量的电缆,以及从列的每端通过架空托架或地下连接大量的电缆。此外,它会为每列生成一个很大的网络故障域。当服务器是虚拟化的,而且每台服务器运行数十到数百个VM时,这方面的影响会更大。这些不足使EoR模型不适合在现代数据中心中采用,在现代数据中心中,机架以各种不同的方式部署,而且不同机架的速率和电缆的需求可能会不同,所以需要经常重新布线。EoR模型非常适合具有高可用性的机箱式交换机,其中服务器接入端口事实上是连接到模块化的机箱式交换机上的。
列中式
MoR是EoR模型的一种变形。MoR模型定义了将服务器连接到位于机柜列中部的交换机的架构。MoR 模型减少了对从列的一端连接到另一端的更长的电缆的要求,因为使用MoR,网络位于中部。MoR不仅在电缆长度上,而且在电缆类型上减少了布线成本。7至10米长的CX-1双绞线可用于将设备与MoR网络设备互联,而不需要包含配线架在内的更长的光纤。
架顶式:现代数据中心方法
前面已经提到,ToR方法是目前最常用的。它更适合POD设计并且包含一个故障域。ToR模型定义了将服务器连接到位于同一个机架内的交换机的架构。这些交换机通常使用水平光纤电缆来连接到汇聚交换机。此模型提供了接入层向优化的高带宽网络和低成本低运维开销布线设施架构的清晰的迁移路线图。它还支持按需付费的计算机部署模型,这增加了业务敏捷性。数据中心的接入层给架构师带来的挑战最大,因为他们需要选择布线架构来支持数据中心计算机的互联需求。
ToR网络架构和布线模型建议使用光纤作为连接机架的主干电缆,而在机架上主要使用铜线或光纤介质来连接服务器。来自每个机架的光纤的使用还有助于保护基础架构投资,因为在采用任何其他传输机制之前,不断演变的标准(包括40-GE和100-GE)更可能使用光纤实现。例如,40-GE能够使用在现有的多模10-GE光纤基础架构上开发的思科QSFP BiDi光模块作为收发器来运行。通过限制机架内的铜线的使用,ToR模型可将最常更改的布线隔离到最常变更的数据中心组件中:即机架本身。对于来自机架的光纤的使用提供了一种灵活的数据中心布线基础架构,以支持从1-GE过渡到现在的10-GE和40-GE,同时支持在未来过渡到100-GE和更高速率。ToR方法的主要不足在于要管理的交换机数量。这对思科Nexus 2000方法来说不是问题,它可以进行集中管理。此外,借助思科ACI矩阵,此问题更不需要担忧,因为所有的矩阵都由应用定义和控制。本书大部分篇幅将涉及ACI矩阵。
采用ToR方法,叶节点、主干或汇聚交换机可在EoR(如图1-15所示)或MoR(如图1-16所示)上连接,同时显著减少了电缆数量,在机架级别上提供了可扩展的按需付费模式。
https://yqfile.alicdn.com/d2f0a85663f7bba908dfb1a594bddbb88827273b.png" >
在 ToR 上,服务器与上行链路带宽之间典型的超载比为 5:1。这就是最初为 ToR 配置基于48 个端口的非阻塞交换机的原因,其中40个端口是面向服务器的,8个端口用于上行链路。根据部署需求,可实现非阻塞ToR设计或较高的超载比设计。例如,HFT环境需要非阻塞且无超载比的网络,而高度密集的虚拟化环境或虚拟桌面需要更高的比率。根据是否是虚拟化环境,双宿主或单宿主服务器可通过1-GE、10-GE或40-GE NIC卡来部署。在100-GE或更高速率的NIC变得可用时,同样的原则也将适用。
机架大小正从标准的42个机架单元(RU)和19英寸宽的插槽演变为更密集和更高的模型。机架大小有许多选择,目前最宽为23英寸,高度选项涵盖从44个RU到包含57个RU的超高的自定义机架设计。一个RU表示1.75英寸的高度。在当前的设计中,48个RU的大小变得更常见,因为它将42个RU的大小拉伸到更密集的形式,而且仍符合货运卡车、入户门大小等的实际情况。
通常需要2至4个RU用于管理带外网络、接线板、配置电缆等。因为能够容纳40个RU的服务器密度是常见的需求,这就为ToR交换机留出了4至6个RU。ToR交换机的通风气流是从前往后的,而且不需要在交换机之间增加空间。它们应堆叠在服务器上。可以通过更换思科Nexus交换机中的风扇盘和电源,将气流方向更改为从后往前。在列端式设计中可以看到这种从后往前的气流设计。
单宿主服务器设计
对于单宿主服务器,通常在机架中部署单个ToR交换机。ToR交换机为服务器提供了交换端口,还提供了连接到汇聚层的上行链路端口,汇聚层可能是 MoR、EoR 等。通常,ToR 交换机的所有端口都拥有相同的功能。没有特定的专用上行链路端口,除了思科 Nexus 2000产品系列之外,其上行链路端口是特定的,而且它们只能连接到上游的 Nexus 5000、5500、6000、7000、7700或9000产品。通过采用网络vPC、VXLAN、IP或最新的端到端以应用为中心的ACI基础架构来支持上行流量,矩阵技术或连接技术可以在2层或3层中使用。
对于双宿主服务器,会在机架中部署一对ToR交换机。在此场景中,给定服务器上的每张NIC连接到一台不同的ToR交换机。
服务器可以在以下场景中运行。
- 双活第2层
- 双活第3层
- 主备模式
矩阵或连接技术可拥有与具有ToR的矩阵的第2层和第3层冗余连接,或者具有采用vPC技术的第2层的冗余性。在ToR上游,可使用与单宿主服务器设计类似的技术。
1.3.2 采用主干-叶节点ACI基础架构的逻辑数据中心设计
传统的网络是基于生成树协议的冗余模型搭建的。后来,vPC的使用带来了双活连接方式,与STP主备拓扑结构相比,该双活连接获得了两倍带宽的增强。过去5年来在数据中心最常用的就是vPC设计和拓扑结构,但本节并不介绍它们。数据中心设计的新趋势是,使用主干-叶节点两层设计,ACI矩阵所采用的也是这种设计。本节介绍主干-叶节点架构和设计,然后介绍ACI主干-叶节点的优势。
数据中心网络通常是在物理上配置于单个管理域内。不同于传统的企业网络,数据中心的大部分流量都是东西向传输(在数据中心内的服务器之间)而不是南北向(在数据中心内的服务器与外部之间)。数据中心内的设备倾向于均匀分布(服务器、网络工具、NIC、存储和连接)。在服务器端口方面,数据中心网络可涵盖3000个到100000个端口。它们对成本也更加敏感,但没有传统企业网络那么丰富的功能。最后,数据中心内的大多数应用都会被量身调整来使用这些常规特征。
主干-叶节点数据中心架构旨在满足这些需求,它由一个拓扑结构、一组开放协议和每个网络节点中最少的功能组成。它的物理拓扑结构的最简单形式是基于两层、“胖树”拓扑结构,也称为Clos或非阻塞拓扑结构。此拓扑结构包含一组叶节点设备,它们连接到一个完整的二分图中的一组主干设备。也就是说,每个叶边界设备连接到每个主干,反之亦然,如图1-17所示。
https://yqfile.alicdn.com/121d8b69aa091484928b396c482bbd7dc0ede0eb.png" >
此架构拥有以下4个基本特征。
- 胖树拓扑结构。
- 通过细粒度的冗余性获得非常高的网络可用性。
- 基于开放、可交互操作、标准的技术。
- 扩展管理具有同质性、定期性和简单性。
- 此架构的优势包括以下几点。
- 可扩展性。
- 灵活性。
- 可靠性。
- 可随时启用。
- 开放、可互操作的组件。
- 低拥有成本和运维成本。
每个节点是一台全功能的交换机。例如,每个节点可接收标准网络数据包并转发它,就像典型的交换机或路由器那样。此外,每个节点有一个关联的控制平面,用于确定该节点的转发状态。
此拓扑结构大量使用了多路径以在节点之间获得所需带宽。用于主干-叶节点架构的转发模式可基于2层转发(网桥)或3层转发(路由),具体可根据特定客户的需求。每种方式都有其实际(且能感觉到)的优势和不足。本节不讨论这些优劣的权衡。例如,ACI架构依赖于路由主机方法或主干-叶节点架构的3层转发。
主干-叶节点架构提供了细粒度冗余性的优势,意味着许多组件会并行工作,因此任何一个组件或少量组件的故障都不会给网络的整体功能带来重大影响。如果交换机失效了,对网络管理员来说这并不是很重要。这会是一个微妙但非常有趣的概念。细粒度冗余性的优势可通过一个比较示例来很好地演示。对于传统的数据中心网络设计,在树的顶部有两台交换机,如果其中一台交换机出于任何原因发生故障,网络将会损失50%的性能。一台交换机发生故障的概率与它的可靠性相关,典型的可靠性目标为5个9,也就是说有0.00001%的几率失去网络性能的50%。尽管这是个很小的几率,但客户显然喜欢更好的。
在基于主干-叶节点的网络中,主干中有20台交换机。要损失同样的带宽量,也就是50%,就要10台交换机同时失效。这显然是非常不可能的,为了得到具体的数字,让我们做一个假设和简单的计算。假设出于某种原因,交换机的可靠性非常差,只有两个9;也即交换机发生故障的几率为 1%。这些交换机中的 10 台同时发生故障的几率为 0.01^10 或0.000000000000000001%。这与高度可用的交换机的0.00001%的几率相比不是很差。这里的基本理念是,在设计网络时会假设一些组件是会发生故障的,而不是尝试让网络组件完美无瑕。没有组件是“大而不倒”的。例如,MSDC客户应采用此方法计算所需资源和基础架构。与说服某人任何单个组件极不可能发生故障,因此他们就可以高枕无忧相比,说服某人其网络的设计能很好地处理故障会更容易。
同样的观点也可应用于网络的运维方面。在交换机的软件必须升级时,甚至在该交换机支持思科在线软件升级(ISSU)时,人们通常非常担忧该升级对网络服务的影响。借助细粒度冗余性,管理员只需让该交换机停止运行,升级它,重新启动它,或者执行其他必要的操作,而无需担心对整体网络设备的影响。在主干-叶节点架构中,高可用性由整个矩阵来处理,无需让单台设备支持ISSU,以预防应用中断。
最后,端口间的延迟会很低,并且延迟是固定的。假设队列延迟为0,许多MSDC客户想要获得稳定的任意端口到任意端口的延迟。
在主干-叶节点架构中,无论网络有多大,数据包从一个端口传输到任何其他端口的最大延迟是相同的。该延迟是边缘设备延迟的两倍加上主干的延迟。随着业界和思科开发了更优化延迟的新交换机,主干-叶节点架构将无缝地采用这些进步。事实上,使用思科目前正在开发的交换机很容易为100000个非阻塞10-GE端口实现最大1.5毫秒的延迟。因此,此网络甚至可满足低延迟网络需求。类似的考虑因素适用于缓存和转发表大小。这些是交换机已实现的功能。如果需要更大的缓冲,则使用具有更大缓存区的交换机。表项大小也是如此。这种依据开发小组可能拥有的具体权衡因素和市场考虑因素而设计每个网络组件的自由,是主干-叶节点架构所提供的灵活性。超大规模、固定的每端口成本以及较低、一致的延迟,都是主干-叶节点架构非常有吸引力的特征。
ACI架构依赖于本节所介绍的主干-叶节点模型。ACI矩阵还采用了中央管理点,同时保留了独立设备分布式控制平面。这允许该矩阵提供单一的交换机操作模式,同时获得主干-叶节点架构的所有好处。
《策略驱动型数据中心——ACI技术详解》——1.3 数据中心设计相关推荐
- 《策略驱动型数据中心——ACI技术详解》一1.3 数据中心设计
本节书摘来自异步社区<策略驱动型数据中心--ACI技术详解>一书中的第1章,第1.3节,作者[美]Lucien Avramov [意]Maurizio Portolani,更多章节内容可以 ...
- 模块化不等于集装箱式数据中心(技术详解)
模块化不等于集装箱式数据中心(技术详解) 发表于2012-07-17 11:55| 491次阅读| 来源施耐德电气数据中心科研| 1 条评论| 作者王逊 服务器模块化数据中心集装箱存储 摘要:集装箱数 ...
- c语言windows驱动编程入门,Windows驱动开发技术详解 PDF扫描版[175MB]
Windows驱动开发技术详解由浅入深.循序渐进地介绍了windows驱动程序的开发方法与调试技巧.本书共分23章,内容涵盖了windows操作系统的基本原理.nt驱动程序与wdm驱动程序的构造.驱动 ...
- 9、Windows驱动开发技术详解笔记(5) 基本语法回顾
5.在驱动中获取系统时间 1)获取启动毫秒数 在ring3 我们可以通过一个GetTickCount 函数来获得自系统启动开始的毫秒数,在ring0也有一个与之对应的KeQueryTickCount ...
- 15、Windows驱动开发技术详解笔记(11) 基本概念
9.Windows驱动程序的入口函数规定为_DriverEntry@8,所以用C++编写时要用extern. 驱动程序中,不能使用编译器运行时函数,甚至C语言中的malloc,C++的new函数都不能 ...
- 嵌入式linux mtd,嵌入式Linux驱动设备之MTD技术详解
原标题:嵌入式Linux驱动设备之MTD技术详解 MTD(memory technology device内存技术设备)是用于访问memory设备(ROM.flash)的Linux的子系统. MTD的 ...
- 《Windows驱动开发技术详解》学习笔记
Abstract 如果推荐 Windows 驱动开发的入门书,我强烈推荐<Windows驱动开发技术详解>.但是由于成书的时间较早,该书中提到的很多工具和环境都已不可用或找不到,而本文 ...
- iOS 7: iPhone/iPad应用开发技术详解
iOS 7: iPhone/iPad应用开发技术详解 作者:刘一道 出版社:机械工业出版社 出版年:2013-11 页数:507 定价:79.00元 ISBN:9787111440512 样章下载:h ...
- 架构设计:远程调用服务架构设计及zookeeper技术详解(上篇)
一.序言 Hadoop是一个技术生态圈,zookeeper是hadoop生态圈里一个非常重要的技术,当我研究学习hadoop的相关技术时候,有两块知识曾经让我十分的困惑,一个是hbase,一个就是zo ...
最新文章
- mapreduce工作流程_详解MapReduce中的五大编程模型
- 卸载Win10+ubuntu14双系统中的ubuntu系统
- DataWorks功能实践速览
- matlab绘制烟花,[原创]利用MATLAB燃放烟花(礼花)
- c++标准库中,含有链表的类list
- Go语言程序记录日志
- (简单) POJ 3984 迷宫问题,BFS。
- oracle中defined,Oracle:专栏定义(Oracle: column ambigously defined)
- 操作系统之进程管理:2、进程的状态以及状态转化
- 一起来玩树莓派--解决This must be accepted explicitly before updates for this repository can be applied问题
- sharepoint2010问卷调查(3)-实现问卷的开始和结束时间(采用自定义字段类型)...
- php date( ymd_PHP DATE()
- 【语音增强】基于matlab iir带阻滤波器语音增强【含Matlab源码 613期】
- Jenkins教程(Windows版)
- 【Navicat】Navicat:Navicat 导出数据库表为 EXCEL 格式、设计优化数据字典 EXCEL 模板
- python自动填表单_用python-webdriver实现自动填表
- python之常用快捷键
- 一张图说明白数据安全管理体系的规划
- 文件服务器s3搭建,搭建基于AWS S3的图片处理服务
- 软电话HTML界面,软电话条(webRTC)对接