
Los administradores de TI no lo tienen fácil hoy día. La creciente complejidad de las aplicaciones y el aumento del volumen de los datos demandan infraestructuras informáticas cada vez más grandes. Además, la era de la nube también está pasando factura. Casi de un día para otro, los administradores de TI se han visto obligados a lidiar con escenarios híbridos y multicloud que han colocado en la estratosfera la ya de por sí alta complejidad.
Por si esto no fuera suficiente, la demanda de trabajadores cualificados es mayor que nunca y el mercado no puede satisfacer la actual necesidad de talento. Esta escasez constante de personal especializado provoca una sobrecarga en los departamentos de operaciones de TI de muchas empresas.
A esta realidad se le suma la cada vez mayor urgencia a la hora de resolver cualquier situación. Ninguna empresa puede permitirse esperar meses para conectar nuevos servidores y clientes, o para instalar un determinado software. La falta de personal o la complejidad de las infraestructuras no pueden ser una excusa para no instalar un parche o una actualización.
En estos casos, el factor tiempo se convierte en una cuestión de seguridad: cuanto más tiempo estén abiertas las brechas de seguridad, mayor será el riesgo.
El valor añadido de la automatización
La solución a estos y otros problemas es la automatización estratégica de las TI. Esto significa automatizar no solo unos pocos procesos selectivos, sino aplicar la automatización de la forma más amplia posible y en toda la empresa. Desde el punto de vista técnico, las plataformas de automatización son el medio: automatizan los pasos administrativos redundantes y los procesos de control de hardware y software. Al hacerlo, descargan de ese trabajo a los administradores de TI y les proporcionan libertad para que se puedan ocupar de tareas de mayor valor añadido.
La experiencia demuestra que los mejores resultados en términos de automatización los obtienen las plataformas que poseen una arquitectura modularizada y se comunican mediante interfaces de programación (API). Las plataformas que están disponibles como software de código abierto (open source) cuentan aquí con una clara ventaja, ya que los módulos para muchas aplicaciones y dispositivos proceden de la comunidad.
Un buen ejemplo de herramienta de automatización que combina modularización y disponibilidad de código abierto, y cuyo proveedor también ofrece soporte profesional si es necesario, es Red Hat Ansible Automation Platform. La automatización se ejecuta a través de los llamados playbooks, que los administradores escriben en YAML, un lenguaje de serialización de datos.
En estos playbooks, por ejemplo, se definen todos los pasos necesarios para instalar un parche en cualquier sistema Linux. Una vez creado el playbook, los usuarios pueden repetir el proceso una y otra vez con solo pulsar un botón cuando esté disponible el siguiente parche.
La principal ventaja de las plataformas de automatización es que su manejo no está reservado únicamente a informáticos: una interfaz gráfica de usuario, que forma parte del repertorio estándar, permite que lo hagan incluso los no especialistas en tecnología.
Además, las plataformas de automatización están dirigidas no solo a los administradores de TI, sino también a los desarrolladores: estos a menudo prueban nuevas versiones de software, para lo que necesitan servidores aislados o instalaciones en la nube que tienen que configurar y desplegar. Luego tienen que instalar el software en el sistema. Con una plataforma de automatización podrían realizar todos estos pasos con un solo clic a través de la interfaz de usuario de la plataforma de automatización, siempre que se disponga del playbook adecuado.
Además, es importante tener en cuenta que estas instancias de prueba también se pueden volver a cerrar con un solo clic, algo que resulta especialmente importante en el contexto de la nube, pues evita incurrir en costes innecesarios.
Automatización basada en eventos
La automatización mediante módulos o playbooks ya es un primer paso importante, pero es proactiva. Esto significa que la ejecución de los procesos automatizados debe desencadenarla el propio usuario. En la administración de TI, sin embargo, siempre hay una serie de sucesos, los llamados eventos, ante los que los administradores de TI deben reaccionar con rapidez.
A menudo, la reacción (o “acción”) necesaria no es más que la ejecución de una serie de procesos que también podrían funcionar automáticamente. Aquí es donde entra en juego la automatización basada en eventos.
Lo ideal es que los administradores de TI puedan definir cómo se debe reaccionar ante un evento
Para permitir la automatización basada en eventos, las plataformas de automatización necesitan primero un receptor de eventos. Este componente es capaz de procesar eventos generados por herramientas de terceros. En Ansible, estas aplicaciones se llaman fuentes y la plataforma ya soporta de forma nativa herramientas como Prometheus, Sensu, Apache Kafka, y varias soluciones de software de Red Hat, con la lista creciendo constantemente.
Los webhooks, funciones de comunicación basadas en HTTP para servidores (web), también se pueden utilizar como fuentes. Además, teniendo en cuenta que Ansible es un software de código abierto, los desarrolladores pueden implementar otras herramientas.
Desencadenar la ejecución
Para un óptimo resultado, lo ideal es que la plataforma de automatización permita a los administradores de TI definir cómo se debe reaccionar ante un evento, y esto se hace a través de los rulebooks. En términos generales, estos rulebooks son muy similares a los playbooks y también contienen instrucciones escritas en YAML, pero siguen un modelo estricto de “si-esto-entonces-eso”.
Las posibles reacciones a un evento se llaman acciones. Por ejemplo, se podría activar un playbook determinado y desencadenar automáticamente la ejecución de los procesos que contiene.
Para ordenar la finalización de una prueba se puede crear un playbook que se active cuando la herramienta de monitorización detecte que no hay más procesos en ejecución en la instancia de prueba. Si se define en el playbook que, en este caso (“si esto”) AWS debe apagar la instancia (“entonces que”), el desarrollador ni siquiera tendría que activar este proceso por sí mismo.
En este ejemplo, un solo clic sería suficiente para crear todo el entorno de prueba requerido temporalmente y apagarlo de nuevo una vez finalizada la prueba.
Por supuesto, los administradores de TI tienen que crear los rulebooks y playbooks inicialmente, pero después se ahorran mucho trabajo. Las posibilidades que abre esta funcionalidad en las plataformas de automatización son prácticamente ilimitadas.