Creación de Imágenes (Snapshots en DigitalOcean)

Clase 20 de 29Curso Profesional de DevOps 2017

Resumen

Cuando compras 2 computadoras esperas que ambas se comporten igual en el momento que las prendes, básicamente idénticas en software. En términos de development environment también es muy común tratar de mantener un ambiente de desarrollo muy similar a ese de producción. Previamente mostramos cómo usar Docker para resolver esto a nivel de development y de servicios.

Podemos llevar este concepto de “igualdad” a nuestras máquinas de producción. Podemos garantizar que nuestros software correrá en el mismo OS, paquetes de seguridad, y nuestro propio software. Esto es comúnmente llamado “images”.

Estaremos usando DigitalOcean para jugar con su versión de “images” llamadas “snapshots”.

Podemos visitar una de las VMs que lanzamos en el vídeo anterior en la consola de DO. En el menú de la izquierda podemos ver “snapshots”. Aquí podemos tomar un “Live Snapshot”. Cuando esté listo el mismo aparecerá en el menú de lanzar Droplets.

Protip:

Un snapshot podría causar un reboot, asegúrate que tus máquinas no estén en el LB en el momento que lo hagas.

Gracias a las “images”, podemos tener el concepto de “forking” donde podemos crear una “image” usando otra como base. Muchas compañías generan una “base-image” la cual es “forked” para ser modificada con servicios específicos. Pero la “base image” contiene las cosas comunes como paquetes de seguridad, llaves de SSH de otros compañeros etc.

Para automatizar el proceso existen herramientas como Packer y Aminator entre otras, que su propósito es simplificar la creación de dichas imágenes.