Cisco ACI数据中心的网络工厂-管理员帮助


借助此神奇的Cisco ACI脚本,您可以快速配置网络。

Cisco ACI数据中心的网络工厂已经成立了五年,但是在Habr上却没有任何提及,因此我决定对其进行修复。 我将根据自己的经验告诉您这是什么,它有什么好处以及它在哪里耙。

它是什么?它是从哪里来的?


到2013年宣布ACI(以应用程序为中心的基础架构)时,竞争对手正一次在三个方面对数据中心网络的传统方法发起攻击。

一方面,基于OpenFlow的“第一代” SDN解决方案有望使网络更灵活,更便宜。 想法是在中央控制器上进行决策,而决策通常由交换机的专有软件执行。

该控制器将对正在发生的所有事情具有单一见解,并以此为基础,将在处理特定流的规则级别对所有交换机的硬件进行编程。
另一方面,覆盖网络解决方案可以在不对物理网络进行任何更改的情况下实现必要的连接性和安全性策略,从而在虚拟主机之间建立软件隧道。 这种方法最著名的例子是Nicira的决定,当时该决定已被VMWare以12.6亿美元的价格收购,从而形成了当前的VMWare NSX。 Nicira的共同创始人以前站在OpenFlow起源的那些人(现在说OpenFlow不适合建立数据中心工厂)的事实,这使情况更加令人不安。

最后,公开市场上可用的交换芯片(称为商用芯片)已经达到一定的成熟度,在这些成熟度上,它们已成为传统交换器制造商的真正威胁。 以前,每个供应商自己都为自己的交换机开发芯片,但是随着时间的流逝,第三方制造商(主要是Br®adcom)的芯片开始缩小与供应商芯片的距离,包括功能,价格/性能比。 因此,许多人认为自己设计的芯片上的开关的日子已经过去了。

ACI是思科(或者更名为Insieme,由其前员工创立)对上述所有方面的“不对称响应”。

OpenFlow有什么区别?


在功能分配方面,ACI实际上与OpenFlow相反。
在OpenFlow架构中,控制器负责规定详细的规则(流程)
在所有交换机的硬件(即大型网络)中,它可以负责维护,最重要的是,它可以更改网络中数百个点中的数千万条记录,因此在大规模实施中其性能和可靠性成为瓶颈。

ACI使用相反的方法:当然,也有一个控制器,但是交换机从中接收高级声明性策略,而交换机本身将其呈现为硬件中特定设置的细节。 控制器可以重新启动或完全关闭,除了目前没有控制权之外,网络不会发生任何不良情况。 有趣的是,在ACI中,有些情况下仍使用OpenFlow,但在主机内部本地用于Open vSwitch的编程。

ACI完全基于基于VXLAN的覆盖传输构建,但同时将基础IP传输作为单个解决方案的一部分。 思科将此术语称为“集成覆盖”。 在大多数情况下,使用工厂开关作为ACI中叠加的终止点(它们以通道速度执行此操作)。 主机不需要了解工厂,封装等方面的任何信息,但是在某些情况下(例如,用于连接OpenStack主机),也可以将VXLAN流量带到它们。

覆盖在ACI中不仅用于通过传输网络提供灵活的连接,还用于传输元信息(例如,用于应用安全策略)。

思科以前曾在Nexus 3000系列交换机中使用Broadcom的芯片,而专门为支持ACI而发行的Nexus 9000系列则最初采用了称为Merchant +的混合模型。 交换机同时使用了新的Broadcom Trident 2芯片和补充它的Cisco开发芯片,实现了ACI的所有魔力。 显然,这可以加速产品的生产并将开关的价格降低到接近于Trident 2的型号的水平。这种方法对于ACI供应的前两到三年就足够了。 在此期间,思科在自己的芯片上开发并推出了下一代Nexus 9000,它们具有更高的性能和功能,但价格却保持不变。 完全保留了工厂互动方面的外部规范。 同时,内部填充已完全改变:类似重构,但用于铁。

思科ACI体系结构如何工作


在最简单的情况下,ACI建立在Clos网络或他们经常说的Spine-Leaf拓扑上。 脊椎级交换机可以从两个(如果不关心容错,也可以是一个)到六个。 因此,故障容限越大(在发生事故或维护一个Spine的情况下带宽和可靠性的降低越少)和整体性能越高。 所有外部连接都转到叶子级交换机:它们是服务器,并通过L2或L3连接到外部网络,并连接APIC控制器。 通常,使用ACI,不仅可以进行配置,还可以进行统计信息收集,故障监视等,所有这些操作都是通过控制器的接口完成的,这在标准尺寸的实现中是三个。

您甚至不必通过控制台连接到交换机,甚至无需启动网络:控制器本身会检测到交换机并从中收集工厂信息,包括所有服务协议的设置,因此,顺便说一句,在安装过程中记录已安装设备的序列号非常重要,这样您就不必猜测哪个交换机哪个机架位于。 要进行故障排除,您可以根据需要通过SSH连接到交换机:它们使用常规的Cisco show命令相当谨慎。

在工厂内部,工厂使用IP传输,因此其中没有生成树和其他过去的恐怖:涉及所有链接,并且在发生故障的情况下收敛非常快。 工厂流量通过VXLAN隧道传输。 更准确地说,Cisco本身称为封装iVXLAN,它与通常的VXLAN不同之处在于,网络头中的保留字段用于传输开销信息,主要是有关流量与EPG组之间关系的信息。 这使您可以使用设备编号来实现设备中各组之间的交互规则,其方式与在普通访问列表中使用地址的方式相同。

隧道使您可以扩展内部IP传输,L2段和L3(即VRF)。 在这种情况下,将分发默认网关。 这意味着每个交换机都参与路由进入工厂的流量。 在流量传输逻辑方面,ACI类似于基于VXLAN / EVPN的工厂。

如果是这样,有什么区别? 剩下的!


在ACI中遇到的第一大区别是服务器如何连接到网络。 在传统网络中,物理服务器和虚拟机都包含在VLAN中,而其他所有内容都在它们之间起舞:连接性,安全性等。ACI使用Cisco称为EPG(端点组)的设计,这种设计无处不在逃脱。 是否可以将其等同于VLAN? 是的,但是在这种情况下,有机会失去ACI提供的大部分服务。

关于EPG,默认制定所有访问规则,并且ACI默认使用“白名单”原则,即仅允许流量,明确允许其传输。 也就是说,我们可以创建EPG组“ Web”和“ MySQL”,并定义一个规则,允许它们仅在端口3306上进行交互。这将在不引用网络地址的情况下甚至在同一子网内运行!

我们有一些客户正是由于此功能而选择了ACI,因为它允许您限制服务器之间的访问(虚拟或物理-没关系),而无需在子网之间拖动它们,因此也无需接触地址。 是的,是的,我们知道没有人用手指定应用程序配置中的IP地址,对吗?

ACI流量规则称为合同。 在这样的合同中,多层应用程序中的一个或多个组或级别成为服务提供者(例如,数据库服务),其他的则成为消费者。 合同可以简单地跳过流量,也可以做一些更棘手的事情,例如,将其定向到防火墙或平衡器,还可以更改QoS值。

服务器如何进入这些组? 如果这些是物理服务器或连接到我们创建了VLAN中继的现有网络的设备,则要将它们放置在EPG中,您将需要指向交换机端口和其上使用的VLAN。 如您所见,VLAN出现在没有VLAN的情况下。

如果服务器是虚拟机,那么只要引用连接的虚拟化环境就足够了,然后一切都会自行发生:将创建一个端口组(就VMWare而言)以连接VM,将分配必要的VLAN或VXLAN,将它们注册在必要的交换机端口等上。 e。因此,尽管ACI是围绕物理网络构建的,但虚拟服务器的连接看起来比物理服务器的连接简单得多。 ACI已经与VMWare和MS Hyper-V捆绑在一起,并支持OpenStack和RedHat虚拟化。 在某个时候,出现了对容器平台的内置支持:Kubernetes,OpenShift,Cloud Foundry,它适用于策略实施和监视,也就是说,网络管理员可以立即查看哪些主机在哪些主机上工作以及它们属于哪些组。

虚拟服务器除了包含在特定的端口组中之外,还具有其他属性:名称,属性等,这些属性可以用作将它们传输到另一个组的条件,例如,重命名VM或具有附加标签时。 思科将其称为微细分组,尽管总的来说,能够在同一子网中创建许多安全段作为EPG的设计本身也是微细分。 很好,供应商知道得更多。

EPG本身是纯粹的逻辑结构,不依赖于特定的交换机,服务器等,因此使用它们以及基于它们的结构(应用程序和租户),您可以执行常规网络上难以完成的事情,例如克隆。 结果,我们可以说很容易创建生产环境的克隆,以确保获得与生产环境相同的测试环境。 可以通过API手动完成,但更好(更轻松)。

通常,ACI中的控制逻辑与您通常遇到的完全不同
在同一Cisco的传统网络中:软件界面是主要的,而GUI或CLI是次要的,因为它们通过相同的API工作。 因此,过了一段时间,几乎所有与ACI打交道的人都开始浏览用于控制的对象模型,并根据他们的需要使某些东西自动化。 最简单的方法是使用Python:有方便的现成工具。

应许的耙子


主要问题是ACI中的许多事情都以不同的方式完成。 要正常开始与她合作,您需要重新学习。 对于大型客户的网络运营团队来说尤其如此,因为工程师们从事应用的“处方VLAN”已有多年历史了。 现在的VLAN已不再是VLAN,并且无需将新网络放置到虚拟化主机中,您完全无需动手创建VLAN,完全“吹走”了传统网络人员,使您可以坚持使用通常的方法。 应该注意的是,思科试图对这种药稍加甜味,并向控制器添加了“类似于NXOS”的CLI,该CLI允许您从类似于传统交换机的接口进行配置。 但是,为了正常开始使用ACI,您必须了解它的工作原理。

从大中型ACI网络上的价格来看,它实际上与Cisco设备上的传统网络没有什么不同,因为使用相同的交换机来构建它们(Nexus 9000既可以在ACI中也可以在传统模式下工作,现在新数据中心项目的主要“主力”)。 但是对于两个交换机的数据中心而言,控制器的可用性和Spine-Leaf体系结构自然让人感到不可思议。 最近出现了一个Mini ACI工厂,其中三个控制器中的两个被虚拟机取代。 这样可以减少成本差异,但仍然存在。 因此,对于客户而言,选择取决于他对安全功能,与虚拟化的集成,单点管理等等的兴趣。

Source: https://habr.com/ru/post/zh-CN455882/


All Articles