Una de las frases que siempre se toman a broma es “esto en mi PC funciona”, muchas veces necesitamos tener entornos (Sistema operativo, librerías, frameworks, versiones, variables de entorno…) idénticos al que utiliza un sistema en producción y esto a veces es complicado y aparece la dichosa frase “esto en mi PC funciona”.
Otra de las razones es que muchas veces pruebo herramientas software, tecnologías, framework, … y hay veces que termino
instalando muchos programas, configurando variables de entorno y cosas así para que todo funcione para poder solucionar el problema que estaba intentando.
Por ello buscando un poco sobre como disponer de entornos “idénticos” a producción, que puedan crearse y borrase según las necesidades que vayamos teniendo he leído algo sobre Vagrant. Así puedo disponer de máquinas virtuales de “usar y tirar” con las que poder trabajar.
Vagrant es una herramienta para la creación y configuración de entornos de desarrollo virtualizados, básicamente Vagrant es una interfaz de VirtualBox, que facilita la creación de máquinas virtuales.
Instalando Vagrant en Windows
Antes de instalar Vagrant, debemos tener instalado Virtualbox https://www.virtualbox.org/wiki/Downloads
Instalar Vagrant es sencillo solo tenemos que descargar el instalador http://www.vagrantup.com/downloads.html e instalarlo.
Vagrant está desarrollado en Ruby, por ello el instalador incluye la versión Ruby2.0, así que no tenemos que preocuparnos.
Como utilizar Vagrant
Utilizar Vagrant es tremendamente sencillo, solo tenemos que abrir un consola de Windows y teclear “vagrant” nos aparecerán todas las opciones disponibles.
Vagrant paso a paso
Como ya hemos comentado utilizar Vagrant en Windows es sencillo, por ello solo tenemos que indicarle que queremos iniciar (init) una máquina (Vagrant boxes), “levantar” (up) la máquina y listo.
1º paso: vagrant init [nombreDeLaMaquina] [URLDelaBox]
vagrant init precise32 http://files.vagrantup.com/precise32.box
Vagrant boxes: Son máquinas virtuales ya creadas con la estructura de Vagrant, en esta página http://www.vagrantbox.es/ encontraras muchas máquinas listas para utilizar.
Al crear la máquina Vagrant crear un archivo llamado Vagrantfile, en podemos indicarle toda la configuración que queramos de la máquina, incluso podemos indicarle que queremos instalar en la máquina utilizando puppet, chef o scripts (de todo esto hablaremos más adelante };-)
En este archivo podemos indicar la IP de la máquina, si queremos que utilizar GUI, la ruta de la vagrant box, los puertos que queremos abrir (por defecto solo puerto ssh)etc.
2º paso vagrant up
vagrant up
Es necesario estar en el mismo directorio donde se encuentra Vagrantfile, con esto estaremos descargando y arrancando una máquina con la configuración del Vagrantfile.
3ºpaso vagrant ssh
Por defecto windows no trae un cliente ssh, así que lo mejor será instalar uno como Putty (http://www.putty.org/) tan solo tenemos que descargarlo(http://the.earth.li/~sgtatham/putty/latest/x86/putty-0.63-installer.exe) , instalarlo y listo.
Al hacer un vagrant ssh nos dirá que cual es la configuración que necesitamos en putty.
Para acceder a la máquina el usuario y la password de Vagrant es: vagrant / vagrant
Listo.
Si abrimos virtualbox veremos una máquina corriendo
4ºpaso vagrant destroy
Cuando ya hallamos utilizado la máuqina y no vayamos a volver a utilizarla podemos destruirla, del mismo modo si hemos hecho una onfiguración incorrecta podermos tirar la maquina y volver a levantar una nueva
Comandos útiles
vagrant init [nombreDeLaMaquina] [URLDelaBox]: Creal el fichero Vagrantfile
vagrant up: Levanta la máquina con la configuración indicada en el Vagrantfile
vagrant ssh: Conecta por SSH con la máquina creada en el vagrant up
vagrant halt: Detiene la maquina pero mantiene los cambios que hemos hecho
vagrant reload: Reinicia la maquina (no hace ningún cambio)
vagrant suspend: Suspende la ejecución y guarda el estado de la maquina
vagrant status: Muestra el estado de las maquinas
vagrant destroy: Detiene la máquina y destruye todos los cambios que hemos hecho e la máquina.
Un comentario en “Poco a poco con Vagrant”