PSEFABRIC-网络管理和自动化的新方法。 迈向理想

开始之前


  • 这里讨论的所有内容都与数据中心和办公网络更相关
  • 这将与该项目有关https://github.com/nihole/PSEFABRIC
  • 另请参阅概述PSEFABRIC基本原理的文章。

理想的网络管理系统


我敢说,从管理和自动化的角度来看, PSEFABRIC现在比任何其他解决方案更接近于所谓的“理想网络管理器”。

如果您有一辆好的汽车,那么您就会知道什么是好的控制系统。 作为用户,您只需要知道如何更改运动的速度和方向,而这(仅此一项)为您提供了一个界面。 同时,来自不同制造商,具有不同技术解决方案的汽车可能会有所不同-接口仍然相同:制动器,油门和方向盘(假设您有自动变速箱)。

可以将此方法延续到网络中吗?如果可以,哪种控制系统最适合网络?

要回答这些问题,让我们先回答问题,谁是驾驶员?

网络本身并不是“真空中的球形马”,它们并不是出于自身的原因而存在,而是出于一种单一目的而存在-数据传输。 该服务的用户是应用程序。 所有应用程序需求都是网格及其之间的连通性。 理想情况下,整个网络的配置点应该相同(而不是一百个不同的网络设备),并且接口应该简单统一。

而且……当然,这是不可能完成的任务,因为从网络的角度来看,一切都很复杂:数百种协议,设备类型,厂商,设计-这是各种各样的选择。 如何创建一个具有所有这些多样性的简单统一界面的产品? 显然,这种形式的问题无法解决。

但是,现在我们已经可以说有一个解决方案,PSEFABRIC对此进行了说明。 当然,该任务需要稍作修改,但是幸运的是,此更改并不重要。

问题陈述


有两个好消息。

首先是,在完成网络的构建并将其投入运行之后,从那时起,您在网络上执行的任务范围将大大缩小。
通常,操作任务如下:

  • 创建/删除与用于连接设备(网络,wilan,子接口等)的L2 / L3协议的设置有关的配置。
    我将其称为网络创建/删除。
  • 打开/关闭访问
  • 创建/删除虚拟服务器以平衡流量

这使我们有机会更改初始要求。 我们不会管理网络上的所有操作。 我们区分了几个相互关联的操作,即

  • 访问创建
  • 网络(按上述意义)
  • 创建虚拟服务器以实现平衡
  • ...

第二个好消息是界面。

思科ConfD产品为我们提供了我们所需的一切。 使用YANG语言,我们几乎可以描述(并由此创建)接口的任何必要逻辑。 我们还将拥有我们如此热爱的一切。 以下是其中一些:

  • 配置保存
  • 候选版本和正在运行的配置版本(提交功能)
  • 检查更改的语法和逻辑
  • 回滚
  • AAA级
  • 通过cli,http,rest,netconf,snmp可配置

PSEFABRIC v.010


新版本v.010 PSEFABRIC

  • 使在不同项目上下文之间轻松切换
  • 可以轻松地针对各种设计,设备和要求进行定制 。 下列PSEFABRIC属性可确保这一点:
    • project p000 ,这是其他项目的模板。 创建新项目时,建议的方法是复制此项目的文件及其后续更改
    • 一组用于配置PSEFABRIC的工具 。 无需更改代码
    • 描述实施此解决方案过程中要采取的步骤顺序的方法

一年前写这篇文章时,基本上是对“原则上可行吗?”这个问题的答案。

从一组设备(Cisco路由器,L3交换机,交换机,Cisco ASA,Juniper SRX)的角度来看,然后给出的示例(现在称为项目p001 )很有趣,但仍然有些虚构。

该项目(p001)的最大优势是拥有实验室(UNL),您可以在这里“玩转” PSEFABRIC和所有上述设备的设置,了解操作原理,配置要点,并熟悉诊断工具...

PSEFABRIC(v.010)的当前版本已经是成熟的产品。 您可以将其应用在您的网络或客户的网络上。 为了展示该解决方案的灵活性和强度,创建了另一个项目( p002 )。

这已经是一个“战斗”设计,您可以在自己的位置或在客户端使用。 这是一种基于长期想法的流行而现代的数据中心构建方法:

  • 嵌套逻辑细分
    • 逻辑设备(ACI租户,Palo-Alto VSYS,N7k VDC,...)
    • 路由分段(VRF)
  • 防火墙逻辑段之间的流量控制
  • 用于连接数据中心的MPLS云

设备:Palo-Alto,思科ACI。

在这个半小时的视频中,我们详细分析了示例0 。 在此示例中,使用PSEFABRIC我们配置项目p002的不同网段之间的访问,分别调整ACI和PA设备。

关于奇迹


为了了解PSEFABRIC如何改变网络管理的概念,这里有一些示例。

让我们从概念性事物开始。

  • 柔韧性 回答完问卷中的所有问题后,为新项目设置PSEFABRIC需要几天到几周的时间。 在很大程度上取决于创建所有必需模板的速度。 但是无论如何,对于该系统的实施(以及测试),三个月看起来是很现实的。 例如,为项目p002设置PSEFABRIC花费了1周的时间。 拥有创建ACI访问控制系统的经验,我可以说,即使我们将一个复杂项目的时间增加到6个月,它仍然是一个非常非常好的指标。
  • 灾难恢复。 实际上,您在单个文件中具有“整个网络”的“操作”配置。 您可以轻松地将其应用于新设备。 但是有趣的是,您甚至可以替换设备类型(例如,它是Juniper SRX,但后来变成了Palo-Alto FW),更改PSEFABRIC设置(或使用新设置创建新项目)并应用相同的配置,但是应用于新的设备类型。 确实看起来像是奇迹,对吧?
  • 访问日志。 通常的问题。 如果您不登录,那么很快您将不再了解仍然需要在何处访问什么,哪些访问以及哪些访问已经过时,并且通常已经失去对网络的控制。 如果您正在记录日志,则将花费大量时间,并且您永远无法确保记录的那些访问确实与实际配置相对应,最后您将停止这样做。 在这里,您可以同时进行配置和登录。
  • DevOps。 设置网络现在是一个简单易读的文本文件。 因此,您可以将最佳实践开发应用于网络更改。
  • NaaS。 您是否考虑过如何实施“网络即服务”解决方案? 现在,您可以使用cli,netconf,REST,HTTP,SNMP接口使用此解决方案。

以及一些技术示例:

  • 您是否曾尝试回答“从这样/这样的网络打开/从何处/何处进行访问?”之类的问题? 如果您有多个数据中心,并且访问是在许多不同的设备上进行控制的,那么很难回答这个问题。 对于PSEFABRIC,这是基本的。
  • 一些供应商提供便捷的访问管理解决方案,例如Palo-Alto中的标签或Cisco中的TrustSec。 底线是使用标签自动提供对网络的访问。 在PSEFABRIC,无论供应商如何,都可以在整个网络中实施。 听起来像奇迹吗? 我认为是的。
  • 您要打开从管理资源所在的几个网络(监视系统,备份系统等)到所有网络设备和Linux服务器的访问。 通常,这导致您必须在许多设备上打开许多访问权限的事实。 一个可执行的但不是很愉快的过程,当然可以有很多这样的例子。 对于PSEFABRIC,这可以是一种策略,然后PSEFABRIC将确定应在何处应用哪些配置命令。

常见问题


但是,这与常规编排(例如,使用Cisco UCSD)有何不同?
这种方法有什么新功能?

新的事情是,业务流程通常不了解网络配置,如果需要信息,那么业务流程应提出对真实设备的请求。
例如,如果删除ACI上的合同,则业务流程系统必须遍历ACI上的所有EPG,以查找该合同的所有提供者和使用者。 它可能是数以万计的EPG。 这不仅与性能有关(尽管也与性能有关),而且使逻辑大大复杂化。

好吧,只要看一下前一章并回答问题,在编排的情况下,您是否具有所有这些优点?

有意思吗


PSEFABRIC是带有Apache许可证版本2.0的开源。

https://github.com/nihole/PSEFABRIC
https://github.com/nihole/PSEFABRIC/wiki
https://github.com/nihole/PSEFABRIC/wiki/安装

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


All Articles