Vagrant en tu día a día

¿Sabéis que es Vagrant? Si la respuesta es no… ¿cómo habéis podido vivir hasta ahora? Este mes, Vanesa, nuestra compañera de la Oficina Técnica, ha querido compartir con nosotr@s una nueva herramienta de trabajo: Vagrant. 

¿Quieres saber cómo puede cambiar tu vida? ¡Continúa leyendo!

 

Vagrant es una herramienta de HashiCorp que nos permite definir la creación y configuración de máquinas virtuales desde un fichero de texto. Cabe mencionar que sólo se recomienda para uso en entornos de desarrollo o pruebas y que debemos tener una aplicación de virtualización(VirtualBox o VMware) en el que se levantará la máquina. 

¿Qué significa esto? Pues significa que puedo tener un fichero con el cual puedo levantar una máquina lista para empezar a trabajar y no necesito guardar las imágenes o isos.

A continuación, usando un fichero de ejemplo para un proyecto de PHP con MySQL, podemos ver que nos permite hacer Vagrant.

En el fichero:

  •   Línea 5: especificamos el SO de la máquina.
  •   Líneas 9-12: creamos carpetas compartidas entre la vm y la máquina host.
  •   Líneas 15-17: establecemos características de la máquina, aquí se especifica la RAM
  •   Línea 20: parte de aprovisionamiento. Este apartado se ejecutará la primera vez que se cargue la máquina. En esta sección instalaremos y configuraremos todo lo que necesite nuestro proyecto.
  •   Líneas 22-44: Instalación de aplicaciones

En las siguientes líneas

  •   Líneas 51-68: se modifican y crean ficheros de configuración.
  •   Líneas 70-75: se inician servicios.
  •   Líneas 82-90: se muestra información de salida tras la creación de la máquinas.

Otra característica muy interesante es poder crear entornos con varias máquinas donde es posible ejecutar scripts específicos para alguna de las máquinas. Veamos un ejemplo de creación de un clúster de Kubernetes con un master y 2 nodos.

Para terminar, me gustaría mencionar los comandos básicos para la gestión de máquinas:

> vagrant up → para crear/levantar la máquina

> vagrant halt → para apagar la máquinas

> vagrant ssh → para acceder a la máquina

> vagrant destroy → para destruir la máquina

 

Referencias:

https://www.vagrantup.com/

https://github.com/rancher/quickstart