Los ingenieros de La Salle-URL comparten las últimas novedades y proyectos en el campo de las soluciones de red en ingeniería telemática.

14 Mayo 2022 | Publicado por userDataCenter

Automatización de redes open-source

¡Buenos días! Es este post se resumirá la ponencia llevada a cabo en la asignatura “Gestión y planificación de redes” de Christian Adell, hablando sobre la automatización en redes.

El día 5 de mayo, Christian nos explicó que papel tiene la automatización en las redes de hoy en día. Vimos como la mayoría de las empresas utilizan como método principal de configuración de dispositivos una conexión vía SSH e incluso aún existen aquellas personas que configuran los dispositivos conectándose directamente vía consola.

Como es lógico, a medida que el tamaño de la red aumenta, ir programando dispositivos de forma individual (usando SSH/consola) se hace cada vez más tediosos, y lo más importante, aumenta la probabilidad de cometer fallos de configuración. Estos fallos pueden ser indetectables a priori, pero una vez salen a la luz se necesita una gran cantidad de horas para encontrarlo y ponerle fin.

Es por estos problemas que las empresas poco a poco tienden a configurar sus dispositivos mediante la automatización que proporcionan sistemas como NETCONF o RESTCONF. También se utilizan sistemas como gNMI o APIs pero no son tan populares.

La automatización también nos proporciona herramientas de telemetría y análisis, muy útiles para diagnosticar problemas o cualquier tipo de inconveniente. Un ejemplo de esta herramienta seria Zabbix. Esta aplicación nos permite hacer una base de datos con todos los dispositivos de nuestra red interna para, posteriormente, monitorizar cada uno de ellos. Esta monitorización incluye mensajes ICMP, recogida de paquetes SNMP e incluso HTTP GET para aquellas aplicaciones con front-end. La mejor parte de este tipo de aplicaciones es que a menudo son complementarias de otras, es decir, se puede complementar Zabbix con otras aplicaciones, como por ejemplo elasticstack, para visualizar los datos recogidos mediante graficas. Vemos entonces como la unión de las distintas aplicaciones facilitan el control y buen funcionamiento de la red.

La automatización enfocada en la configuración de dispositivos tiene un funcionamiento similar, donde varias aplicaciones se juntan para formar una mejor en la que, por ejemplo, traduzca los comandos para cada uno de los fabricantes. La aplicación de configuración por excelencia es netmiko. De esta aplicación parten el resto, ya que netmiko se basa exclusivamente en enviar comandos y recoger la respuesta. Con este tipo de automatización podemos hablar con múltiples dispositivos al mismo tiempo y de esta forma facilitar la configuración y reducir exponencialmente las probabilidades de cometer errores.

Todas estas automatizaciones son los ejemplos más sencillos. Hoy en día se podrían mezclar aplicaciones de telemetría con las de configuración para solucionar de forma automática problemas que se reflejen en los logs. Sumando todo esto a proyectos a más gran escala, obtenemos sistemas capaces de automatizar cualquier dispositivo, incluyendo servidores e incluso firewalls.

Por desgracia, por muy moderno que sea nuestro sistema de automatización, siempre existirá la configuración mediante consola o SSH para iniciar el dispositivo o reiniciarlo en caso de error, por lo que pese a tenernos que acostumbrar a los nuevos sistemas de trabajo, no podemos olvidar aquello más básico.

Afortunadamente para nosotros, Christian nos ha proporcionado una serie de aplicaciones para crear entornos virtuales y probar todo lo que hemos visto, como puede ser ContainerLab o Kubernetes. Sin duda, estas aplicaciones serán de gran utilidad para testear todo aquello pendiente de implementación, ya que sería prácticamente un crimen desplegar algo nuevo en nuestra red sin haberlo testeado antes.

Arturo Moseguí
 

Share