A la hora de desarrollar, uno debe buscar la mayor comodidad y orden posible. A nivel de entorno de desarrollo muchos utilizan un sistema aislado, por ejemplo Virtualenv en el caso de Python para así evitar crear conflictos con el sistema u otros proyectos. El detalle está en que no todos los proyectos funcionan solo con el código del programa y algunas librerías, muchos proyectos funcionan con sistemas de bases de datos, servidores web, un sistema operativo específico y más... Así que una buena solución a todo eso es, usar entornos virtualizados con algún hipervisor como KVM, XEN. VirtualBox o VMWare, el punto negativo de usar directamente un hipervisor, es el tiempo que lleva la configuración y puesta en marcha de cada una de las máquinas virtuales para adaptarlas a lo que deseamos. Vagrant llega como una solución de código abierto y multiplataforma que permite tener distintos entornos en múltiples máquinas virtuales de una manera muy fácil usando Virtualbox (En la mayoría de los casos).
Vagrant
:
Para descargar Vagrant, se debe acceder a su sitio web: http://www.vagrantup.com/, y descargar el instalador para tu sistema operativo.
Al usar un hipervisor para trabajar, debemos tener una computadora que soporte virtualización por hardware si se desea trabajar con mayor velocidad (En la actualidad la mayoría de los procesadores tanto Intel como AMD, soportan tecnología para virtualización asistida por hardware).
¿Por qué usar Vagrant?
Si eres desarrollador podrás crear un entorno aislado, que puede ser reutilizado por todo el equipo de trabajo en cualquier sistema operativo, gracias a que Vagrant trabaja con "Vagrantfile", un archivo donde se encuentra la configuración del entorno para una máquina virtual.
Para administradores de sistema, puede servir como entorno de prueba para scripts shell y de automatización con Puppet, Salt o Fabric.
Boxes
Son "estructuras" usadas en Vagrant para construir las máquinas virtuales, la mayoría de los boxes están ya configurados para trabajar con Vagrant y con algunos software extras.Uno puede construir un box, pero en http://www.vagrantbox.es/ hay una lista de decenas de boxes con diferentes sistemas operativos para descargar y utilizar.
Iniciando una máquina virtual
Para iniciar una máquina virtual con Vagrant debemos crear/situarse en una carpeta donde tendremos un archivo Vagrantfile, en ese archivo se encuentra toda la configuración para un entorno virtual en específico (podemos ver los Vagrantfile como proyectos), ese archivo se crea luego de haber agregado un box a Vagrant, para agregar un box e iniciar Vagrant se utilizan los siguientes comandos:
Código :
$ vagrant box add <nombre_box> <url o ruta del archivo .box> $ vagrant init <nombre_box> $ vagrant up
Ejemplo
Código :
$ vagrant box add CentOS ~/vagrant/CentOS-6.4-x86_64-v20130309.box $ vagrant init CentOS $ vagrant up
Así de fácil y sencillo tendremos una máquina virtual en ejecución, aun así, si no se tiene acceso a dicha máquina, no nos sirve para nada. Gracias a la opción ssh de Vagrant, podremos acceder a través de SSH.
Código :
$ vagrant ssh
Al acceder por SSH, nos dará acceso a un usuario llamado "vagrant", este usuario tiene privilegios con SUDO, así que no necesitamos usar el usuario root del sistema.
Opciones de Vagrant
- vagrant box: Permite agregar, listar, eliminar y re-empacar un box.
Código :
vagrant box <add | list | remove | repackage>
- vagrant halt: Este comando apaga la máquna virtual.
- vagrant package: Este comando permite empacar nuestro entorno actual en un archivo .box reutilizable.
- vagrant reload: Apaga y enciende la máquian virtual. Se utiliza para recargar la configuración si se cambió el archivo Vagrantfile.
- vagrant suspend: Suspende la máquina virtual que se esté utilizando.
- vagrant resume: Reactiva la máquina virtual luego de haberse suspendido.
Eliminando una máquina virtual
Al terminar de trabajar podemos eliminar la máquina virtual y todos los recursos creados con el comando.
Código :
$ vagrant destroy -f
Si desean saber un poco más de Vagrant pueden visitar la documentación oficial: http://docs.vagrantup.com/v2/
¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.
Por Daniel Rodriguez el 20 de Enero de 2014
Personalmente uso salt como configuration management.
Por yograterol el 20 de Enero de 2014
Daniel Rodriguez-blog :
Personalmente uso salt como configuration management.
Con qué imágenes lo usas? si tienes alguna imagen que no aparezca en www.vagrantbox.es, por favor publica el link para que así los lectores tengan más recursos a la hora de utilizar este software.
Por david d el 21 de Marzo de 2014
Por david d. el 21 de Marzo de 2014
Por Claudia el 07 de Mayo de 2016
barbie movies
Por el 17 de Agosto de 2016