Taula de continguts
Introducción a Vagrant
Que es Vagrant
Características
Problema
Solución
Una mejor solución
Limitaciones de Vagrant
Introducción a Vagrant
Que es Vagrant
Es una aplicación para crear escenarios virtuales de forma sencilla y replicable
Orientado al uso por desarrolladores o entornos de producción simples
Puede integrarse con herramientas de gestión de la configuración
Puppet, Ansible, Chef, Salt
Forma parte del conjunto de aplicaciones utilizadas en “infrastructura como código”
Desarrollada inicialmente por Mitchell Hashimoto en 2010
en su tiempo libre, impacto tremendo
A partir de vagrant se creó Hashicorp en 2012
desarrollo buscando los huecos donde puede hacer falta, gran prestigio
Hashicorp:
Packer (imágenes de vagrant)
Consul (descubrimiento de servicios)
Terraform (aprovisionamiento)
Vault (seguridad)
Nomad (despliegue contenedores) ← aka kubernetes
Características
Software libre (Licencia
MIT
)
Escrito en Ruby
Github:
https://github.com/mitchellh/vagrant
Han contribuido cientos de personas
Problema
Configurar escenarios a mano es tedioso y provoca errores
Un desarrollador debe centrarse en el desarrollo
Los escenarios pueden cambiar
Solución
Distribuir una “virtual appliance” completamente configurada
Por ejemplo: OVF o OVA
Muy pesado
Difícil de modificar y redistribuir
Útil para software privativo
Una mejor solución
Distribuir de forma separada imágenes “limpias” de
OS
y la configuración completa
Muy ligero
Fácil de modificar y redistribuir
Fácilmente integrable en el flujo de trabajo “devops”
Muy útil para software libre
Limitaciones de Vagrant
Configuraciones avanzadas dependen del proveedor
proveedor = sistema de virtualización usado
No adecuados para escenarios complejos
Recursos limitados para entornos en producción en cloud computing