Bouw eenvoudig virtuele machines met Vagrant

virtuele desktop

Artikelgereedschap

  • Tip ons
  • Printen
  • Reacties (2)
1x Aanbevolen

Gepubliceerd: Dinsdag 1 maart 2011
Auteur: Koen Vervloesem

Moet je vaak een virtuele machine opzetten, dan kan Vagrant je daarbij helpen. Deze tool bouwt eenvoudig een virtuele machine in VirtualBox met de door jou ingegeven configuratie.

Vagrant is een Ruby-programma dat je installeert met het commando gem install vagrant. Daarna download je een basismachine, een Ubuntu 10.04-gebaseerde server:


$ vagrant box add lucid32 http://files.vagrantup.com/lucid32.box


Eerst maken we een directory aan voor onze virtuele machine. Voer je hierin nu het commando vagrant init uit, dan creëert Vagrant een zogenaamde Vagrant-file in de directory (te vergelijken met een Makefile voor code). Als je nu voor deze virtuele machine de juist gedownloade template wilt gebruiken, dan plaats je het volgende in de Vagrant-file:


Vagrant::Config.run do |config|
config.vm.box = "lucid32"
end

Voer je nu het commando vagrant up uit, dan start je virtuele machine op in VirtualBox. Vagrant vereist wel VirtualBox 4.0. Je kunt op elk moment een virtuele machine weer verwijderen met het commando vagrant destroy, en met vagrant ssh log je via ssh in op je virtuele machine. Met vagrant suspend respectievelijk vagrant resume zet je de virtuele machine in slaap en wek je hem weer, waardoor je snel weer kunt verderwerken.

Je kunt ook je virtuele machines als Vagrant-boxes packagen en verspreiden, zodat anderen ze met het commando vagrant box add aan hun eigen Vagrant-installatie kunnen toevoegen. En als je bijvoorbeeld een ander besturingssysteem dan Ubuntu 10.04 voor de Vagrant-boxes wilt gebruiken, kan de tool VeeWee je helpen bij het aanmaken van je eigen basismachines.

Configuratie

Als slagroom op de taart ondersteunt Vagrant een automatische verdere configuratie van je virtuele machines, naar keuze met Chef of Puppet. Definieer de configuratie bijvoorbeeld in een Puppet-manifest en plaats dit in het bestand manifests/naamvanbox.pp in de directory van de machine. In de Vagrant-file voeg je dan de volgende regel toe:


config.vm.provision :puppet

En verder kun je port forwarding instellen om een poort van je host naar je virtuele machine te forwarden. De volgende regel in je Vagrant-file toont een voorbeeld voor als je een webserver in je virtuele machine wil testen:


config.vm.forward_port("web", 80, 8080)

De rubriek Tips & Tools biedt praktische informatie die IT-professionals in hun dagelijkse werk kunnen toepassen.

Relevante whitepapers

Alle whitepapers >>

Nieuwsbrief

Ontvang dagelijks een overzicht van het laatste ICT-Nieuws in uw mailbox

Whitepapers

  • Maximaliseer het voordeel van SaaS

    Cloud-applicaties hebben grote invloed op het gebruik van de IT-architectuur en niet ieder project levert de verwachte voordelen op.

    Downloaden
  • Flexibele IT noodzaak voor bankenOnderzoeksrapport over de beperkte flexibiliteit van veel IT-systemen in de bancaire wereld. Lees meer!
  • Kostenbesparing voor long tail appsOplossing voor kostenkwesties in VDI. Technologie geschikt voor long tail apps.
» Meer whitepapers

Peiling

Loading Poll

Video: Review: HTC One X-smartphone met vijf...

Review: HTC One X-smartphone met vijf cores (video)