🥇 CloudFormation.

CloudFormation esun servicio que le permite modelar los recuross de AWS de forma que gaste menos tiempo manejando los recursos. Permite a las organizaciones desplegar, modificar, actualizar los recursos de una forma predecible, y aplicando control de versiones a la infraestructura AWS de la misma forma que se hace con el software.

CloudFormation permite da a los administradores de sistemas y desarrolladores una forma sencilla de crear y manejar una colección de recursos, provisionando y actualizandolos en una forma ordenada y predecible. Cuando se usa CloudFormation, se trabaja con templates y stacks.

Un template define los recursos de AWS y sus propiedades. Un template es un archivo de texto cuyo formato JSON. Estos archivos son utilizados para construir los recursos de AWS.

Cuando se usa CloudFormation es posible reutilizar los templates para montar los recursos de forma consistente y repetitiva. Solo describa los recursos una vez y despues provisiones los mismos recursos sobre multiples regiones.

Cuando se usa CloudFormation, los recursos se manejan en un stack. Se crean, actualizan y borran colecciones de recursos al crear, actualizar y borrar stacks. Todos los recursos en un stack son definidos por el template del stack. Si se crease por ejemplo un template que incluyera un grupo de AutoScaling, y ELB, una base de datos de RDS. Para crear esos recursos se crea un stack enviando el template que defina dichos recursos, y CloudFormation manejará el provisionamiento. Despues de que todos los recursos han sido creados, CloudFormation reporta que su stack ha sido creaod. Entonces puede empezar a utilizar los recursos en el stack. Si la creación del stack falla. CloudFormation revierte los cambios eliminando los recursos que ha creado.

Frecuentemente necesitara lanzar stacks desde el mismo template, pero con variaciones minimas, como un VPC distinto o una AMI de una region distinta. Estas diferencias pueden ser direccionadas utilizando patrones. Se puede utilizar un patrón para personalinzar aspectos del template en tiempo de ejecución cuando el stack es creado. Por ejemplo, puede pasar el tamaño de la base de datos, el tipo de instancias ec2, los puertos del servidor web a CloudFormation cuando cree el stack. Al utilizar parametros en el template, puede utilizar un solo template para el despliegue de muchas infraestructuras con diferentes valores de configuración.

Debido a que los ambientes son de naturaleza dinamica, inevitablemente necesita actualizar los recursos del stack eventualmente. No hay necesidad de crear un nuevo stack y borrar el anterior; solo necesita modificar el stack actual. Para actualizar un stack, cree un change set enviando una version modificada del template original del stack, valores de parametros distintos o una combinación de ambos. CloudFormation compara el template modificado con el original y genera un changeset. El changeset lista los cambios propuestos. Despues de revisar los cambios, usted puede ejecutar el changeset para actualizar el stack.

Si desea borrar un stack pero retener los recursos de este, puede utilizar una politica para mantener los recursos. Si el recurso no tiene una policy para prevenir que el recurso sea borrado. CloudFormation borra el recurso por default.

Despues de que todos los recursos han sido borrados. CloudFormation notifica que su stack ha sido borrado completamente. Si CloudFormation no puede borrar un recurso, el stack no será borrado. Cualquier recurso que no haya sido borrado se mantendrá hasta que pueda borrar de manera satisfactoria el stack.

Casos de Uso:

OpsWorks. Elastic Beanstalk.
comments powered by Disqus