Automatización en la nube: tres claves para optimizar la infraestructura

  • Opinión

Syntax Quim Alfaro

En el seno de la transformación digital, la nube se ha impuesto como modelo preferente de operación de las TI y, en este contexto, los equipos de tecnología necesitan tener una elevada flexibilidad para desplegar y gestionar los entornos cloud. La solución es la automatización en la nube o cloud automation, que permite reducir las tareas manuales en la provisión y la gestión mediante el uso de herramientas y procesos repetibles.

La automatización en la nube es un proceso esencial para la optimización del escenario tecnológico de una empresa, ya que permite alinear la estrategia cloud con los planes de transformación digital de las organizaciones. Básicamente consiste en crear instrucciones, reglas y procesos repetibles que permitan implementar entornos cloud a la escala necesaria, así como gestionarlos y mantenerlos, de forma que se consiga mayor eficiencia en la operación de las TI y se minimicen los errores humanos tanto a nivel de infraestructura para la provisión de servicios, como de configuración de los mismos.

Definir un método de trabajo coherente 
Poner en marcha un proyecto de automatización en la nube conducirá a los equipos de TI a trabajar de forma homogénea y –siempre que se haga bien– facilitará su labor. Por eso, antes de abordar una iniciativa de cloud automation, es necesario, por un lado, identificar los objetivos y, por otro, localizar las tareas recurrentes que consumen mayor tiempo, de tal manera que los primeros cambios implementados aporten el mayor valor posible al mayor número de personas.

Una de las primeras decisiones a las que debe enfrentarse el equipo de TI es elegir entre una infraestructura estática (inmutable) o una flexible (mutable). Se debe optar por una infraestructura inmutable –aquella en la que una vez se crea o instancia algo, no hay posibilidad de modificación– asumiendo que es más fácil sustituir un entorno recreándolo de cero que buscar el motivo del error y actualizarlo. Por el contrario, la estructura mutable permite hacer cambios siempre que sea necesario. Se ha de tener en cuenta que esta decisión impactará en los costes de mantenimiento y en los automatismos que se generen. También habrá casos en los que el modelo inmutable no se podrá emplear, como sucede con las aplicaciones legacy, en las que hay bases de datos implicadas. 

En todo caso, antes de iniciar el proceso de automatización, es necesario definir un método de trabajo –independientemente de cuál sea la infraestructura o el código– junto con la ruta para desplegar las actualizaciones. Además, hay que identificar a las personas que validarán los despliegues estableciendo, así, un gobierno de la automatización, para asegurar el control y garantizar que el equipo trabaje de una manera homogénea.

Identificar las herramientas que se van a emplear  
Elegir la tecnología que se va a utilizar en el proyecto de optimización de la nube es una decisión importante. Tanto Amazon Web Services (AWS) como Microsoft Azure y Google Cloud disponen de herramientas para automatizar tanto la infraestructura como la tarea de configuración.  

También existen herramientas más transversales, agnósticas de la plataforma cloud, que permiten desarrollar código y cuyos módulos están preparados para ser consumidos en cualquier hiperescalador, lo que facilita el lanzamiento de una nueva configuración en todos los servidores. Ejemplos de ello son Terraform, Salt, Chef, Puppet o Ansible, que requieren unas competencias diferentes y unos perfiles mucho más DevOps. 

Tanto las herramientas proporcionadas por los hiperescaladores como por otros proveedores son muy potentes, necesitan una curva de aprendizaje y tienen diferentes funcionalidades, por lo que la elección dependerá de la estrategia cloud de la organización, es decir: si ha optado por trabajar con una o varias plataformas de infraestructura. A la hora de decidir, conviene también considerar los planes futuros para poder anticiparse a la puesta en marcha de cambios estratégicos que puedan impactar en el proyecto de optimización de la nube.

Preparar la infraestructura para el mantenimiento 
Sin duda, las ventajas de un proyecto de automatización en la nube son muy visibles en los despliegues masivos de entornos en cientos de servidores en paralelo, pero no se deben obviar las que se obtienen de mantener y actualizar la infraestructura. Los administradores cloud ven reducidas las ventanas de mantenimiento y se simplifica su trabajo en ámbitos como la gestión de parches, actualizaciones y monitorización, al mismo tiempo que se gana rapidez. Todo ello redunda en una gestión más ágil y la liberación de personal humano, que puede dedicarse a otras tareas.  

Por tanto, el objetivo de la automatización será también facilitar la operativa y el mantenimiento posterior del sistema cloud –lo cual debe tenerse en cuenta desde el inicio del proyecto– con procesos definidos para poder aprovechar las amplias capacidades y funcionalidades que ofrecen las plataformas hiperescalares. 

Una vez se genera el sistema de automatización, el mantenimiento tiene que incluir esas automatizaciones para evitar modificaciones manuales de código desde la consola del hiperescalador, cuyo resultado sería una pérdida de consistencia y una devaluación de las eficiencias que se pretenden alcanzar. 

Por qué automatizar en la nube
Los beneficios de llevar a cabo un proyecto de automatización en la nube son numerosos. Entre ellos destacan la reducción de los tiempos de despliegue de nuevos entornos de una semana a horas y la disminución de errores humanos, tanto a nivel de infraestructura y de configuración, como a la hora de mantener los entornos.

Y es que, al asegurar que el entorno cloud se asienta sobre una base homogénea y estandarizada, también se agilizan los nuevos desarrollos de aplicaciones para dar respuesta a las necesidades de las unidades de negocio e impulsar la innovación dentro de la compañía.

Joaquim Alfaro Camps, Global Director Cloud Advisory Services en Syntax