Vamos a ver como automatizar la implementación, junto con los enfoques más destacados para implementarla. Es una tarea crítica: pues pone la aplicación a disposición del usuario final. Al adoptar DevOps y CloudOps, tendremos múltiples destinos donde implementar la aplicación. Necesitamos pues también automatizar la implementación porque las implementaciones manuales no siempre son consistentes en todos los entornos. Son lentas, no repetibles ni confiables. La implementación manual requiere un uso intensivo de recursos humanos, así como de infraestructura. Finalmente, las implementaciones manuales dificultan la colaboración, ya que solo la realizan unos pocos expertos.
Por esta razón, necesitamos adoptar la implementación automatizada para lograr consistencia en todos los entornos, ser rápidos, minimizar el uso de recursos humanos repetidamente y, además, construir la colaboración adecuada mediante la implementación en un flujo de trabajo automatizado de CI/CD. Vamos a ver el proceso de automatización de la implementación, para lo cual necesitamos veremos varios componentes diferentes. Para empezar, necesitamos saber qué se debe automatizar. Es necesario automatizar el flujo de trabajo de implementación, las pruebas de integración, la configuración, la gestión y las implementaciones. También es necesario realizar un seguimiento de dónde y en qué objetivos se implementará, ya sea físico o virtual, local o en la nube.
Es necesario realizar un seguimiento de la práctica de implementación. Esto se puede lograr mediante la adopción de implementaciones automatizadas rápidas y sin errores. Se puede utilizar un solo clic o herramientas que proporcionen una implementación continua con un solo clic. También se pueden seleccionar herramientas que proporcionen una implementación con una sola herramienta en todos los entornos. Por lo tanto, se puede tener una sola herramienta, un solo clic, y también se deben identificar varias métricas de implementación. Existen varios entornos diferentes donde se pueden utilizar las capacidades de implementación automatizada. Para empezar, se tienen los entornos SIT, QA, staging y producción. Debemos adoptar la herramienta adecuada de implementación continua, con un solo clic, para automatizar implementaciones sin errores, realizar un seguimiento de las métricas de implementación, identificar qué se debe automatizar y cuál es el objetivo de la implementación.
A continuación veremos la práctica de la implementación continua mediante un pipeline. Tendremos desarrolladores que enviarán el código a VCS (Sistema de Control de Versiones). Tendremos un servidor de automatización de compilación que buscará cambios tan pronto como se identifiquen. Este servidor se encargará de compilar los cambios, realizar pruebas unitarias y finalizar la implementación. Esta implementación puede realizarse en un entorno de producción, un entorno de UAT o cualquier otro entorno de prueba. Sin embargo, debemos asegurarnos de crear un entorno de implementación independiente para las pruebas de aceptación, las pruebas de capacidad, las pruebas de aceptación del usuario y el entorno de producción. Finalmente, debemos identificar la automatización de la implementación y la estrategia que podemos adoptar para integrarla en DevOps. Comenzaremos con la planificación para definir el tipo de desarrollo, la estrategia y el objetivo de desarrollo. El siguiente paso siempre es implementar, probar y, finalmente, verificar. Por lo tanto, debemos seguir tres pasos importantes antes de definir el enfoque de automatización de la implementación. Se trata de planificar, implementar y probar adecuadamente las herramientas que utilizamos, ya sea desde una perspectiva de desarrollo o de operaciones. Finalmente, verificaremos el resultado de la automatización.
Con este post terminamos la automatización de DevOps, en el próximo comenzaremos con CICD.


No hay comentarios:
Publicar un comentario