PSEFABRIC: un nuevo enfoque para la gestión y automatización de redes. Paso al ideal

Antes de empezar


  • todo lo que se discute aquí es más relevante para centros de datos y redes de oficinas
  • será sobre el proyecto https://github.com/nihole/PSEFABRIC
  • vea también el artículo que describe los principios básicos de PSEFABRIC.

El sistema de gestión de red ideal.


Me atrevo a decir que desde el punto de vista de la gestión y la automatización, PSEFABRIC ahora está más cerca que cualquier otra solución de lo que podría llamarse un "administrador de red ideal".

Si tienes un buen auto, entonces sabes lo que es un buen sistema de control. Usted, como usuario, solo necesita saber cómo cambiar la velocidad y la dirección del movimiento, y esto y solo esto, en general, le proporciona una interfaz. Al mismo tiempo, los automóviles pueden ser diferentes, de diferentes fabricantes, con diferentes soluciones técnicas: la interfaz sigue siendo la misma: freno, gasolina y volante (supongamos que tiene una transmisión automática).

¿Se puede llevar este enfoque a la red y, de ser así, qué sistema de control sería ideal para la red?

Para responder estas preguntas, primero respondamos la pregunta, y ¿quién es el conductor?

Las redes, que no son un "caballo esférico en el vacío", no existen por su propio bien, existen para un solo propósito: la transmisión de datos. Y los usuarios de este servicio son aplicaciones. Todo lo que necesita la aplicación son cuadrículas y la conectividad entre ellas. El punto de configuración idealmente debería ser el mismo para toda la red (y no para un centenar de dispositivos de red diferentes) y la interfaz debería ser simple y unificada.

Y ... por supuesto, esta es una tarea imposible, porque desde el punto de vista de la red todo es complicado: cientos de protocolos, tipos de equipos, proveedores, diseños: este es un océano de todo tipo de opciones. ¿Cómo crear un producto con una interfaz simple y unificada que tenga en cuenta toda esta diversidad? Está claro que el problema en esta forma no se puede resolver.

Y sin embargo, ahora ya podemos decir que hay una solución y PSEFABRIC lo muestra. La tarea, por supuesto, debe modificarse ligeramente, pero, afortunadamente, este cambio no es significativo.

Declaración del problema.


Hay dos buenas noticias.

La primera es que después de completar la construcción de su red y ponerla en funcionamiento, a partir de ese momento, el rango de tareas que realiza en la red se reduce considerablemente.
Por lo general, las tareas operativas son las siguientes:

  • creación / eliminación de una configuración relacionada con la configuración de protocolos L2 / L3 para conectar dispositivos (redes, wilans, subinterfaces, ...).
    Lo llamaré creación / eliminación de red.
  • acceso abierto / cerrado
  • creación / eliminación de servidores virtuales para equilibrar el tráfico

Esto nos da la oportunidad de cambiar el requisito inicial. No vamos a administrar todas las operaciones en la red. Distinguimos varias operaciones interrelacionadas, a saber

  • creación de acceso
  • redes (en el sentido descrito anteriormente)
  • creación de servidores virtuales para equilibrar
  • ...

La segunda buena noticia es la interfaz.

El producto Cisco ConfD nos brinda todo lo que necesitamos. Usando el lenguaje YANG, podemos describir (y así crear) prácticamente cualquier lógica necesaria de nuestra interfaz. También tendremos todo lo que amamos tanto. Aquí hay algunos de estos:

  • configuración guardar
  • Candidato y versiones de configuración en ejecución (capacidad de confirmación)
  • comprobación de sintaxis y lógica de cambios
  • retrocesos
  • AAA
  • configurabilidad a través de cli, http, rest, netconf, snmp

PSEFABRIC v.010


Nueva versión v.010 PSEFABRIC

  • facilita el cambio entre diferentes contextos de proyecto
  • Es fácilmente personalizable para una amplia variedad de diseños, equipos y requisitos. Esto está garantizado por las siguientes propiedades de PSEFABRIC:
    • proyecto p000 , que es una plantilla para otros proyectos. El enfoque recomendado al crear un nuevo proyecto es copiar los archivos de este proyecto con su cambio posterior
    • Un conjunto de herramientas para configurar PSEFABRIC. No se requiere cambio de código
    • Una metodología que describe la secuencia de pasos a seguir en el proceso de implementación de esta solución

Cuando este artículo fue escrito hace un año, en general, fue la respuesta a la pregunta "¿es esto posible en principio?"

El ejemplo dado entonces (ahora se llama proyecto p001 ), siendo interesante desde el punto de vista de un conjunto de equipos (enrutadores Cisco, conmutadores L3, conmutadores, Cisco ASA, Juniper SRX), sigue siendo algo artificial.

La gran ventaja de este proyecto (p001) es la presencia de un laboratorio (UNL), donde puede "jugar" con la configuración de PSEFABRIC y todos los equipos anteriores, comprender los principios de operación, los puntos principales de la configuración, familiarizarse con las herramientas de diagnóstico ...

La versión actual de PSEFABRIC (v.010) ya es un producto completo. Puede tomarlo y aplicarlo en su red o en la red de su cliente. Para demostrar la flexibilidad y la fortaleza de esta solución, se creó otro proyecto ( p002 ).

Este ya es un diseño de "combate" que puede aplicar en su lugar o en el cliente. Este es un enfoque popular y moderno para construir un centro de datos basado en ideas antiguas:

  • Segmentación Lógica Anidada
    • dispositivos lógicos (inquilinos ACI, Palo-Alto VSYS, N7k VDC, ...)
    • Segmentación de enrutamiento (VRF)
  • control de tráfico entre segmentos lógicos en firewalls
  • Nube MPLS para conectar centros de datos

Equipo: Palo-Alto, Cisco ACI.

En este video de media hora , analizamos el ejemplo 0 en detalle. En este ejemplo, usando PSEFABRIC configuramos el acceso entre los diferentes segmentos de red del proyecto p002, ajustando respectivamente los equipos ACI y PA.

Un poco sobre milagros


Para comprender cómo PSEFABRIC está cambiando el concepto de gestión de red, aquí hay algunos ejemplos.

Comencemos con las cosas conceptuales.

  • Flexibilidad Después de responder todas las preguntas en el cuestionario, configurar PSEFABRIC para un nuevo proyecto lleva de varios días a varias semanas. Mucho depende de qué tan rápido pueda crear todas las plantillas necesarias. Pero en cualquier caso, 3 meses parece bastante realista para la implementación (junto con las pruebas) de este sistema. Por ejemplo, configurar PSEFABRIC para el proyecto p002 tomó 1 semana. Con experiencia en la creación de un sistema de control de acceso para ACI, puedo decir que incluso si aumentamos este tiempo a 6 meses para un proyecto complejo, sigue siendo un muy, muy buen indicador.
  • Recuperación ante desastres. En realidad, tiene una configuración "operativa" de la "red completa" en un solo archivo. Puede aplicarlo fácilmente a nuevos equipos. Pero curiosamente, incluso puede reemplazar el tipo de equipo (por ejemplo, era Juniper SRX, pero se convirtió en Palo-Alto FW), cambiar la configuración de PSEFABRIC (o crear un nuevo proyecto con una nueva configuración) y aplicar la misma configuración, pero a un nuevo tipo de equipo. Y realmente parece un milagro, ¿verdad?
  • Registro de acceso. El problema habitual Si no inicia sesión, muy pronto ya no comprenderá dónde y qué y qué accesos aún se necesitan y cuáles están desactualizados, y en general pierde el control de su red. Si está iniciando sesión, entonces lleva mucho tiempo, y nunca está seguro de que esos accesos que se registran realmente corresponden a la configuración real y, al final, deja de hacerlo. Aquí tiene tanto la configuración como el inicio de sesión en una botella.
  • DevOps. Configurar su red ahora es un archivo de texto simple y fácil de leer. En consecuencia, puede aplicar el desarrollo de mejores prácticas a los cambios en su red.
  • NaaS. ¿Has pensado en cómo implementar la solución "Red como servicio"? Ahora tiene esta solución con interfaces cli, netconf, REST, HTTP, SNMP.

Y algunos ejemplos técnicos:

  • ¿Ha intentado responder preguntas como "dónde / desde dónde están abiertos los accesos / a tal y tal red?" Si tiene varios centros de datos y los accesos se controlan en una docena de dispositivos diferentes, la respuesta a esta pregunta puede ser bastante difícil. En el caso de PSEFABRIC, esto es elemental.
  • Algunos proveedores ofrecen soluciones de administración de acceso convenientes, como la etiqueta en Palo-Alto o TrustSec en Cisco. La conclusión es proporcionar acceso automáticamente a las redes mediante etiquetas. En PSEFABRIC, puede implementar esto para toda su red, independientemente del proveedor. ¿Suena como un milagro? En mi opinión, si.
  • Desea abrir el acceso desde varias redes donde se encuentran los recursos administrativos (sistema de monitoreo, sistemas de respaldo, ...) a todos los dispositivos de red y servidores Linux. Por lo general, esto lleva al hecho de que tiene que abrir muchos accesos en muchos dispositivos. Un procedimiento ejecutable, pero no muy agradable, y por supuesto puede haber muchos ejemplos de este tipo. En el caso de PSEFABRIC, esta puede ser una política y luego PSEFABRIC determinará dónde y qué comandos de configuración deben aplicarse.

Pregunta frecuente


Pero, ¿cómo difiere esto de la orquestación regular, por ejemplo, usando Cisco UCSD?
¿Qué hay de nuevo en este enfoque?

Lo nuevo es que la orquestación generalmente no conoce la configuración de la red, y si se requiere información, entonces la orquestación debe realizar solicitudes de equipo real.
Por ejemplo, si elimina un Contrato en un ACI, entonces el sistema de orquestación tiene que pasar por todas las EPG en el ACI para encontrar todos los proveedores y consumidores para este contrato. Y puede ser decenas de miles de EPG. Y no se trata solo de rendimiento (aunque esto también), sino que complica enormemente la lógica.

Bueno, solo mire el capítulo anterior y responda la pregunta, ¿tiene todas estas ventajas en caso de orquestación?

Interesante?


PSEFABRIC es de código abierto con la licencia Apache, versión 2.0.

https://github.com/nihole/PSEFABRIC
https://github.com/nihole/PSEFABRIC/wiki
https://github.com/nihole/PSEFABRIC/wiki/Installation

Source: https://habr.com/ru/post/es431910/


All Articles