Regresa

CLI Parsers: La Unidad Básica de Automatización

by Nov 8, 2018

CLI parserLos s son archivos especializados que esencialmente le dicen a su sistema lo siguiente:

“para la salida CLI [X], aquí se explica cómo distinguir las variables importantes [Y] y [Z] del resto de la información y generar respuestas estructuradas para el usuario”.

Estos son indispensables cuando se trata de la automatización de la red y, como explicaré un poco más adelante, el bloque de construcción de NetBrainQapps personalizables.

La interfaz de línea de comandos es una herramienta poderosa, compleja y bastante desalentadora que todo ingeniero de redes debe aprender para sobresalir en su trabajo. El dominio de CLI ha sido un marcador de éxito durante mucho tiempo y seguirá siéndolo en el futuro. Sin embargo, a medida que aumenta el tamaño de la red, la eficacia de la CLI disminuye: Imagínese si le preguntara cómo verificaría configuraciones de interfaz idénticas en mil interfaces FastEthernet0/1 en mil dispositivos.

Si tu respuesta es 'abrir mil sesiones SSH', entonces puede estar en esto por un tiempo.

La CLI nos brinda información valiosa sobre nuestros dispositivos de red y nos permite un control granular sobre un dispositivo. Sin embargo, al igual que confiar demasiado en la GUI puede impedirme ser más competente con la CLI, la CLI en sí misma se convierte en un cuello de botella cuando se trata de automatización de procesos.

Si necesita tocar cien dispositivos para resolver un problema, necesitará crear un script. Un gran problema para los ingenieros es que sus conjuntos de habilidades requeridas realmente no imponen el aprendizaje de un lenguaje de secuencias de comandos como Python o Javascript. Un problema mayor es que la CLI presenta al usuario una gran cantidad de datos no estructurados, lo que históricamente no es tan bueno para la programación y crea un obstáculo adicional que el ingeniero tiene que superar.

Cuando digo datos no estructurados, permítanme desglosarlo un poco:

Imagina que quieres saber el nombre de alguien. Los datos no estructurados son el equivalente a pedir su licencia: aún necesitaría leerlos para encontrar lo que está buscando. A parser es algo que leería su licencia e identificaría qué área contiene su nombre para usted y lo presentaría de una manera visualmente atractiva

Datos estructurados vs no estructurados 1

NetBrain reconoce el fuerte pico de dificultad que aparece cada vez que las personas necesitan comenzar a crear secuencias de comandos: es aterrador, confuso y requiere mucho tiempo en todas las formas en que puede ser aprender un nuevo idioma. Cuando presentamos nuestros Qapps y Runbooks como automatización sin secuencias de comandos, esencialmente estamos aplicando nuestra CLI parsers en formas avanzadas. Nuestro CLI parsers

Por ejemplo, echemos un vistazo a una Qapp integrada simple que recopila configuración básica de la interfaz.

Capture interfaces básicas Runbook Flujo de ejecución

Como puede ver aquí, toda la Q-app es solo una ejecución de un programa llamado GetIntfIntfSetting

ObtenerConfiguraciónIntfIntf

La secuencia de este Qapp es la siguiente:

  1. Para cada dispositivo en la cola
  2. Ejecute un comando show interface
  3. Recopilar datos del dispositivo en una tabla
  4. Convierta la tabla de datos del dispositivo en una tabla de datos global
  5. Ejecute la conversión por filas en un archivo de Excel.

La CLI Parser entra en vigor durante los pasos 3 y 4. Tomaría bastante tiempo entrar en las minucias de cada aspecto lógico del parser, así que solo explicaré los conceptos básicos en este resultado de muestra aquí:

Salida de muestra 1

Aquí, NetBrainCLI integrado parsers permiten que el sistema identifique fácilmente variables como Nombre de interfaz [$intf], Estado [$status], Paquetes entrantes [$pkts_input], etc. porque nos hemos tomado el tiempo para examinar cómo se ve esta salida desde la CLI de este proveedor e identificó manualmente la información que necesitaríamos examinar.

Variables de salida

Usted, como ingeniero, solo necesita ejecutar Qapp y NetBrain iniciará sesión procedimentalmente en esos miles de dispositivos y le dirá cuáles son los estados de la interfaz.

Salida estructurada de muestra

Así que te estarás preguntando, ¿Qué pasa cuando tienes que hacer lo mismo pero con otro proveedor? La respuesta es simple. Aquí en NetBrain, ya hemos creado parsers para los comandos más comunes ejecutados en un dispositivo. Ya sea…

Cisco Interfaz Cisco

 

Enebro

Enebro de interfaz

 

Control

Punto de control de la interfaz

 

F5

Interfaz F5

O realmente, cualquiera de la larga lista de proveedores que admitimos, nos hemos asegurado de que pueda identificar conjuntos de datos idénticos en cada una de estas plataformas.

En el caso de que necesites una más compleja parser, ¡también tenemos un sistema completo para construir el suyo propio!

Ese es, sin embargo, un tema para otro día.

Conclusión: por qué CLI Parsers?

CLI Parsers tratar con la lógica del cambio de estado. CLI parsers lo ayuda a secuenciar correctamente sus datos para crear información procesable a medida que convierte datos no estructurados en un formato estructurado. Como se dijo anteriormente, cada Qapp en NetBrain es una expresión mejorada de una CLI integrada o personalizada Parser.

La línea de comandos no va a ninguna parte. Siempre será la forma más eficiente de acceder a los datos en un solo dispositivo y controlarlos con precisión y granularidad. Sin embargo, cuando se trata de redes grandes, debe automatizar las tareas básicas para que aún quede parte de su día para hacer un trabajo significativo.

Si está interesado en CLI parsers, asegúrese de revisar NetBrain Cursos gratuitos de la universidad sobre cómo crear los tuyos.

 

Relacionado: