Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Vagrant. Primeros Pasos

Vagrant. Primeros Pasos

Primeros pasos con Vagrant.
Vagrant es una herramienta de software libre multiplataforma cuyo principal objetivos es la creación y
configuración de entornos de desarrollo virtualizados de manera muy ligera, portable y reproducible.

CETA-Ciemat

June 12, 2014
Tweet

More Decks by CETA-Ciemat

Other Decks in Technology

Transcript

  1. QUÉ ES VAGRANT BENEFICIOS TERMINOLOGÍA INSTALACIÓN CONFIGURANDO MI BOX CONFIGURANDO

    MI VAGRANTFILE ARRANQUE Y GESTIÓN DE MI INSTANCIA REFERENCIAS ÍNDICE
  2. • Herramienta para la creación y configuración de entornos de

    desarrollo virtualizados QUÉ ES VAGRANT • Entornos virtuales • Multiplataforma Ligeros Reprodu- cibles Portables • Software Libre
  3. BENEFICIOS NO PORTABLE: “EN MI ORDENADOR FUNCIONA” PROBLEMAS AL PROBAR

    EN OTRAS PLATAFORMAS NO REPRODUCIBLE LA VIDA SIN VAGRANT DESGASTE DE TIEMPO EN PREPARAR MÁQUINA
  4. BENEFICIOS UTILIZANDO VAGRANT DESARROLLO DE UN PROYECTO PERMITE QUE TODOS

    TRABAJEN BAJO UNA COPIA EXACTA DEL AMBIENTE ADMINISTRACIÓN ENTORNOS DESECHABLES Y CONSISTENTES PARA DESARROLLO Y PRUEBAS DE SCRIPTS DE ADMINISTRACIÓN DISEÑADOR ENTORNO LISTO AUTOMÁTICAMENTE PARA UNA DETERMINADA APLICACIÓN WEB PERMITE DEDICARTE A TUS TAREAS
  5. TERMINOLOGÍA BOX FORMATO DE PAQUETES PARA LOS ENTORNOS EN VAGRANT

    HOST & GUEST LA MÁQUINA HOST INICIA VAGRANT LA MÁQUINA GUEST ES INICIADA POR EL HOST PROVIDER SE ENCARGA DE GESTIONAR EL PROCESO DE VIRTUALIZACIÓN VAGRANT TRABAJA CON:
  6. TERMINOLOGÍA PROVISIONER AUTOMATIZA LA CONFIGURACIÓN DE LA MÁQUINA Y LA

    INSTALACIÓN DE PAQUETES VAGRANT TRABAJA CON: VAGRANTFILE CONTIENE LA DEFINICIÓN DE NUESTRA MÁQUINA (O MÁQUINAS) ESCRITO EN RUBY
  7. CONFIGURANDO MI BOX OBTENER LA BOX $ vagrant box add

    mi_caja_ubuntu_precise_32 http://files.vagrantup.com/precise32.box LISTAR LA LISTA DE BOX QUE TENEMOS $ vagrant box list VAGRANT CLOUD VAGRANT BOX REPOSITORIOS DE BOX
  8. CONFIGURANDO MI BOX BORRAR LA BOX $ vagrant box remove

    mi_caja_ubuntu_precise_32 ACTUALIZAR LA BOX $ vagrant box update
  9. CONFIGURANDO MI VAGRANTFILE CONFIGURANDO LA RED config.vm.network “private_network”, ip: "192.168.33.101"

    config.vm.network “public_network” config.vm.network "forwarded_port", guest: 8000, host: 8000 NAT BRIDGE
  10. CONFIGURANDO MI VAGRANTFILE config.vm.provision :file do |file| file.source = "Install.sh"

    file.destination = "/home/vagrant/Install.sh" end DEFINIENDO PROVISIONER config.vm.provision "shell", inline: "echo hello" config.vm.provision "shell", path: “scriptInstallation.sh" SHELL PROVISIONER
  11. CONFIGURANDO MI VAGRANTFILE DEFINIENDO PROVISIONER CHEF PROVISIONER config.vm.provision "chef_solo" do

    |chef| chef.add_recipe "apache" end RUN LIST CONFIGURACIÓN APACHE
  12. CONFIGURANDO MI VAGRANTFILE config.vm.provision "ansible" do |ansible| ansible.playbook = “provisioning/playbook.yml"

    end DEFINIENDO PROVISIONER ANSIBLE PROVISIONER $ tree . |-- Vagrantfile |-- provisioning | |-- group_vars | |-- all | |-- playbook.yml
  13. CONFIGURANDO MI VAGRANTFILE config.vm.provision "puppet" do |puppet| puppet.manifests_path = "manifests"

    puppet.manifest_file = "site.pp" end DEFINIENDO PROVISIONER PUPPET PROVISIONER
  14. ARRANQUE Y GESTIÓN DE MI INSTANCIA $ vagrant up ACCEDER

    A LA INSTANCIA LEVANTAR INSTANCIA $ vagrant ssh SUSPENDER EL AMBIENTE $ vagrant suspend
  15. ARRANQUE Y GESTIÓN DE MI INSTANCIA $ vagrant resume APAGADO

    DE LA INSTANCIA LEVANTAR INSTANCIA TRAS SUSPENDERLA $ vagrant halt DESTRUIR EL AMBIENTE $ vagrant destroy
  16. CREAMOS UN ENTORNO VIRTUAL PARA TAREAS DE DESARROLLO O DESPLIEGUE

    POSIBILIDAD DE PRE-CONFIGURACIÓN DEL ENTORNO PORTABLE LIGEROS REPRODUCIBLES CONCLUSIÓN