Vagrant: Sind Sie bereit Ihren Umgang mit IT Infrastruktur zu revolutionieren?
Erstellt um 16:42 von DI Edmund HaselwanterVargant ist ein Tool für das Erstellen und Verbreiten von virtualisierten Entwicklungsumgebungen.
Vagrant baut hier auf Ruby auf und ermöglicht es, ausgehend von einer Basis Installation, automatisiert spezielle Entwicklungsumgebungen aufzubauen. Die Beschreibung der aktuellen Infrastruktur wird mit dem ausgezeichneten Provisionierungs Tool Chef von Opscode gemacht. Damit hat man nun die Möglichkeit jedem Entwickler eine reproduzierbare und portable Entwicklungsumgebung zur Verfügung zu stellen.
Virtualbox
Vagrant benötigt Oracles VirtualBox, um die virtuellen Umgebungen herzustellen. VirtualBox ist eine Virtualiserungssoftware für x86 Systeme. Virtualbox eignet sich für Server als auch für Desktop Virtualisierungen, und ist im Moment die einzige Virtualisierungslösung in professioneller Qualität, die auch Open Source Software ist. VirtualBox ist für Windows, Mac OS X, Linux, und Solaris erältlich.
Hier ist ein Link zur Download Seite von Virtualbox .
Vagrant installieren
Oracles Virtualbox setzt eine Ruby und Rubygems Umgebung voraus.
Nach der Installation von Ruby , Rubygems und Virtualbox (in einer Version grösser 3.2) kann man Vagrant installieren:
1 $ gem install vagrant
2 $ vagrant box add base http://files.vagrantup.com/lucid32.box
3 $ vagrant init
4 $ vagrant up
5 end
Die Vagrant virtuelle Maschine erreicht man nun mit ssh auf localhost, Port 2222
Eine Liste von verschiedenen Basis Boxen kann man hier finden [klick]
Ein einfaches Beispiel ist nun mit chef-solo Apache2 zu installieren. Dazu brauchen wir ein $Vagrantfile$ im aktuellen Projektverzeichnis (da wo wir vagrant init gemacht haben) das folgendermassen aussieht:
1 Vagrant::Config.run do |config|
2 # All Vagrant configuration is done here. For a detailed explanation
3 # and listing of configuration options, please view the documentation
4 # online.
5
6 # Every Vagrant virtual environment requires a box to build off of.
7 config.vm.box = "base"
8
9 # Forward guest port 80 to host port 4567 and name the mapping "web"
10 config.vm.forward_port("web", 80, 4567)
11
12 # This path will be expanded relative to the project directory
13 config.chef.cookbooks_path = "cookbooks"
14
15 #this recipe we want to run
16 config.chef.add_recipe("apache_demo")
17
18 # we use chef-solo to provision stuff
19 config.vm.provisioner = :chef_solo
20 end
Der Einfachheit halber verwenden wir das Standard Apache2 Cookbook von Opscode.
Sie können das Vagrant Projekt auch hier auf Github abholen [klick] und in das Verzeichnis $vagrant-apache$ wechseln.
Nach einem einfach $vagrant up$ sollte der Apache auch schon in Ihrer Virtuellen Maschine verwendbar sein:

Gratuliere!
Weitere Artikel die Sie interessieren könnten:
Deployment von Java Web Applikationen mit Chef von OpscodeThere is a rework of the data driven deployment of java web applications. This Vagrant project on github ( https://github.com/iteh/vagrant-demos/ ) showcases the application cookbook for chef with a reworked application definition and LWRP for...
Links der Woche vom 2011-05-23 bis 2011-05-29Diese Woche Links zu den Themen Windows, Ruby, opscode, JavaScript, maps, Leaflet, WordPress, Chef, windows, powershell, opschef, ios, ruby, devops, sysadmin, monitoringsucks
Links der Woche vom 2011-05-16 bis 2011-05-22Diese Woche Links zu den Themen coffeebeans, Rails, CoffeeScript, Array, Ruby, Chef, Django, zo, devops, sysadmin, git, chef, CSS3, HTML5, WordPress, nipplegate, MongoDB, rails, rails3, asciicast, test, Android, opschef, Gem, aws, slim, Haml, ruby
Links der Woche vom 2011-05-09 bis 2011-05-15Diese Woche Links zu den Themen wi, opschef, ActiveAdmin, rails, ror, ruby, HTML5, Chef, cnet, MongoDB, Sinatra, Rack, apple, git, aws, chef, opscode, sysadmin, Ksplice, noSQL, RubyTutorials, CSS3, EC2, AWS, MacRuby, iOS, m
Links der Woche vom 2011-04-11 bis 2011-04-17Diese Woche Links zu den Themen ipad, iphone, opschef, ruby, OpenCV, detection, image, Weinberg, Ohai, automation, pr, test, gem, cloudfoundry, devops, cfoundry
Data Driven Deployment einer Java Web Application mit Chef SoloChef Application Cookbook Showcase Dieses Vagrant Projekt auf unserem Github Repository ( https://github.com/iteh/vagrant-demos/ ) zeigt die Verwendung des Application Cookbooks für Chef
Links der Woche vom 2011-04-04 bis 2011-04-10Diese Woche Links zu den Themen Pow, Rack, ActiveRecord, Rails, Algorithms, Ruby, rails, optimize, CSS3, railscasts, chat, macbook, opschef, ruby
Links der Woche vom 2011-03-28 bis 2011-04-03Diese Woche Links zu den Themen design, utilities, rails, asciicast, gem, ux, Awesome, jQuery, devops, Git, radiantcms, rvm, opschef, osx, MacRuby, chef, opscode, Rails, i18n, java, Vagrant, automation, Typography, Type
Links der Woche vom 2011-03-21 bis 2011-03-27Diese Woche Links zu den Themen MacRuby, Java, Ruby, Mirah, CSS, refreshtoplayagain, gainsboro, photo, Design, mechanize, capybara, PHP, Rails, html5, webdesign, XCode, iPads, WordPress, Vagrant, Opscode, RUBY, Selenium, php, opschef, osx, devops,...
Links der Woche vom 2011-03-14 bis 2011-03-20Diese Woche Links zu den Themen opschef, chef, mwrc, saas, Subscription, Billing, git, ruby, HTTP, Rails, Caching, devops, vagrant, opscode, Wordpress


