A medida que la industria de las redes se mueve para adoptar NetDevOps, a menudo se utilizan muchos términos con los que los profesionales de redes no están familiarizados. Esto puede hacer que muchas personas se sientan inseguras sobre el papel que podría desempeñar una nueva tecnología en su organización, o incluso tengan miedo de pedir claridad sobre un concepto discutido. De hecho, hay algunas preguntas que vemos formuladas una y otra vez:
“¿Qué es CI/CD, por qué tendría un pipeline y qué tiene que ver eso con mi red?”, “¿qué significa IaC o SoT?” o incluso "¿qué es NetDevOps y por qué debería importarme?"
En esta serie de publicaciones, profundizaremos sobre NetDevOps de manera tal que se tenga familiaridad y una comprensión básica de lo que es, así como algunos de los componentes clave. También describiremos brevemente cómo y por qué puede aplicar algunos de estos conceptos para operar su red.
¿Qué es NetDevOps?
Existen muchas buenas publicaciones y presentaciones que discuten qué es NetDevOps como filosofía o metodología, y a través de ellos se puede profundizar, pero para esto es necesario comprender las bases de esta filosofía. Basta decir que NetDevOps hereda de DevOps, algo también sobre lo que existe mucha información. Nuestro desafío es poder explicar cómo aplicar estos conceptos en el contexto de las redes.
Con la aplicación adecuada de los conceptos de NetDevOps, ya no hay que pensar en una red como estática, rígida y frágil. En cambio, hay que comenzar a tratar una red como algo flexible y sensible a los deseos o necesidades comerciales (intent-based). Algunos ejemplos de estos conceptos incluyen:
• Integración continua / Implementación continua (CI / CD)
• Infraestructura como Código (IaC)
• Fuente de la verdad (SoT)
• Producto mínimo viable (MVP)
• ChatOps
Para ver estos conceptos en acción, digamos que se necesita implementar un nuevo sitio en su VPN corporativa. Sin un enfoque de NetDevOps para administrar su red, podría pasar una semana luchando para construir manualmente la configuración IKE / ISAKMP adecuada para el túnel y documentar el sitio en sus sistemas, aplicar cambios y luego realizar pruebas para garantizar que todo funcione.
Sin embargo, si está utilizando algunos conceptos clave de NetDevOps para administrar su red, su proceso podría verse más dinámico y parecido a:
• Enviar vpn a @my_netdevops_bot en su aplicación de chat (Slack / MS Teams / Webex Teams)
• Completar el nombre del sitio, el tipo de equipo y otros metadatos según lo solicite el bot.
• @my_netdevops_bot usa esa información para:
o Crear el sitio en su Fuente de la verdad (SoT)
o Combinar una plantilla Jinja con los datos relevantes de su SoT
o Presentarle la configuración representada en la aplicación de chat
• Tras la aprobación del cambio, @my_netdevops_bot se conectará a los dispositivos e implementará estos cambios de configuración
• @my_netdevops_bot luego consulta la red (u otros sistemas como los sistemas de monitoreo) para determinar si el cambio fue exitoso y presentarle una confirmación en el chat.
• Si el cambio falla por alguna razón, @my_netdevops_bot puede comenzar a solucionar algunos problemas básicos en su nombre y presentarle esa información también.
Este no es un ejemplo exagerado, esta es solo una de las muchas formas en que vemos la aplicación de los conceptos de NetDevOps a diario en todo tipo de organizaciones.
Pero, por lo general, siempre hay un "Pero..." acechando. Algunos de los éxitos más importantes incluyen: "Pero mi red es demasiado antigua" o "Pero mi red es demasiado única". Uno de los más comunes es: "¡Pero mi red es demasiado grande o pequeña para hacer eso!" como si hubiera una bien delimitada a partir de cuándo comenzar a aplicar estos conceptos. La lista continúa, pero para casi todas las excepciones planteadas hay una respuesta.
Primero, no se sugiere que vaya directamente de cero al escenario descrito anteriormente. Adoptar una mentalidad y enfoque de NetDevOps para las operaciones de su red es un proceso iterativo y paulatino. Aplicar solo algunos de estos conceptos (y no todos) a un único elemento pequeño de su red es la mejor manera de comenzar su viaje de NetDevOps. Incluso los pasos pequeños y simples pueden ser muy importantes para comenzar a adoptar la metodología descripta.
Si está generando manualmente configuraciones de dispositivos, comience a considerar la creación de un sistema de templates para las configuraciones de sus dispositivos y mantenerlo como código en un repositorio de Git. La generación de configuraciones simple a partir de un template puede proporcionar ahorros de tiempo y ganancias operativas al eliminar el error humano y garantizar que haya una única configuración estándar.
En segundo lugar, ninguna red es demasiado especial para aprovechar estos conceptos. ¿Su red es muy grande y complicada? ¿Es literalmente cada componente único? Elija un solo lugar en su red para comenzar a implementar una Fuente de la Verdad o SoT (como NetBox). Tener los datos en una API y/o GUI de fácil acceso, y en un formato estándar conocido, mostrará valor inmediatamente para cualquier otro concepto que desee aplicar.
¿Su red carece de estándares coherentes? Comience a aplicarlos en un solo elemento de configuración, por ejemplo, como la configuración AAA. Asegurar que la configuración AAA en todos los dispositivos se hará de acuerdo a lo esperado es extremadamente valioso desde una perspectiva operativa y de seguridad. ¡Sus auditores se lo agradecerán!
Cada una de las estrategias anteriores se basa en el concepto de un producto mínimo viable. Cuando comience a adoptar los conceptos de NetDevOps para operar su red, no espere resolver todos sus problemas en el primer intento. Elija un problema sencillo para resolver. Desarrolle sus soluciones y herramientas para resolver ese problema, luego comience a usarlo de manera diaria. Si tiene éxito, busque adaptar sus herramientas para resolver problemas adicionales.
Como se describió anteriormente, quizás aborde primero solo la configuración AAA. Cuando lo anterior se convierte en SoT, entonces el siguiente paso puede ser expandirse para administrar la configuración SNMP en todos sus dispositivos. Luego, puede abordar la gestión de las ACL o las configuraciones de NTP y DNS, o lo que tenga sentido en su red. De esta manera, expandirá rápidamente las partes de su red que se administran a través de NetDevOps.
Cuando describimos NEP@L, nuestro framework de automatización, siempre decimos que la adopción de una cultura es vital para asegurar el éxito en la automatización de procesos en el contextos de las redes. Trabajamos permanentemente en la creación y mejora de dicha cultura y NetDevOps es parte central de la misma.
¡Gracias Brett Lykins por tu contribución!