Open Source im professionellen Einsatz
Linux-Magazin 09/2014
© Jaromir-Urbanek, 123RF

© Jaromir-Urbanek, 123RF

Vagrant, Serf, Packer und Consul

Starker Vierer

Bereits seit 2010 arbeitet der Kalifornier Mitchell Hashimoto mit seiner Firma Hashicorp emsig an vier Open-Source-Tools. Vagrant & Co. erleichtern nicht nur die Arbeit von Devops, sondern helfen auch herkömmlichen Administratoren. Jedes Werkzeug löst dabei elegant eine ganz spezielle Aufgabe

534

Programmierer richten sich gerne selbst eine passende Umgebung für ihr Projekt ein. Das führt bei der Inbetriebnahme der fertigen Software allerdings häufig zu Problemen. So fehlen in der Produktivumgebung etwa benötigte Bibliotheken oder eine leicht veränderte Konfiguration führt zu unerwarteten Nebenwirkungen. Solchen Situationen beugt Vagrant vor [1]. Das Tool erstellt auf Knopfdruck eine virtuelle Maschine mit einer passenden Entwicklungsumgebung. Die erzeugten Maschinen sind nicht nur portabel, Vagrant kann sie auch immer wieder exakt reproduzieren. Fertige Maschinen lassen sich zudem an andere Teammitglieder weitergeben und bei Bedarf in die Produktionsumgebung umsiedeln.

Vagrant

Mitchell Hashimoto begann mit der Entwicklung an Vagrant zunächst in seiner Freizeit. Aufgrund der schnell wachsenden Nutzerzahlen gründete er im Herbst 2012 die Einmannfirma Hashicorp. Sie erlaubte es ihm, in Vollzeit an Vagrant weiterzuarbeiten. Geld verdient das Unternehmen heute vor allem durch Supportverträge, Schulungen und mit der Entwicklung kommerzieller Addons. Nutzer von Vagrant sind laut Hashicorp derzeit neben Mozilla und Disqus auch die BBC, O'Reilly und Expedia.

Um mit Vagrant eine Entwicklungsumgebung aufzusetzen, legt der Programmierer zunächst in seinem Projektverzeichnis eine kleine Konfigurationsdatei an. In diesem so genannten Vagrantfile beschreibt er die benötigte Software, konfiguriert die virtuelle Maschine und legt fest, wie er auf das Gastsystem zugreifen möchte. Ein PHP-Programmierer könnte sich zum Beispiel ein Debian-System mit einem Webserver wünschen.

Vagrant selbst arbeitet als Wrapper für eine Virtualisierungssoftware, den so genannten Provider. Vagrant unterstützt von Haus aus Virtualbox, Docker und Microsofts Hyper-V. Weitere Provider rüstet der Anwender über Plugins nach. Wer Vagrant mit VMware bekannt machen möchte, findet ein passendes Plugin bei Hashicorp [2]. Als kommerzielles Produkt schlägt es allerdings mit rund 80 Dollar pro Lizenz zu Buche.

Bewölkte Schachteln

Um möglichst schnell die virtuelle Maschine starten zu können, klont Vagrant einfach ein fertiges Festplattenimage und passt es anschließend an. Solche Basis-Images bezeichnet Vagrant als Boxes. Fertige Boxes lassen sich über die Community-Sammlung Vagrantbox.es ([3], Abbildung 1) oder die von Hashicorp betriebene Vagrant Cloud [4] kostenlos herunterladen. Auf Letzterer steht unter anderem auch eine virtuelle Maschine mit Debian 7.4 und vorinstalliertem Chef bereit.

Abbildung 1: Vagrantbox.es stellt Links zu öffentlich zugänglichen Vagrant-Boxen bereit. Ihr Einsatz setzt großes Vertrauen in deren Autoren voraus.

Wer sich in der Vagrant Cloud kostenlos registriert, kann zudem den Dienst Vagrant Share nutzen. Er bietet eine Art dynamischen DNS-Dienst für Boxes: Mit einem Kommandozeilenbefehl verbindet der Vagrant-Anwender eine gerade laufende virtuelle Maschine mit einer neuen Subdomain von Vagrantshare.com. Seine Entwicklungsumgebung ist dann beispielsweise über »http://hulking-chameleon-3934.vagrantshare.com« im Internet erreichbar.

Auf diese Weise kann man nicht nur die Anmeldung an der neuen Webanwendung mit Oauth unter realen Bedingungen testen, auch Teammitglieder in Außenstellen erhalten so Einblick in die laufende Entwicklung.

Wer selbst erstellte Boxes über die Vagrant Cloud nur bestimmten Personen zugänglich machen möchte, muss ein kostenpflichtiges Abonnement abschließen. Die Preise beginnen bei 6 Dollar pro Monat [5], jeder Download einer Box schlägt zusätzlich mit 12 US-Cent zu Buche (Abbildung 2). Wer der Vagrant Cloud nicht traut, kann selbstverständlich auch eigene Boxes erstellen.

Abbildung 2: Die Vagrant Cloud bietet kostenlos praktische Dienste für Boxes, aber auch zu bezahlende Extras.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 5 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Hashicorp: Otto soll Vagrant ablösen

    Otto soll künftig Vagrant ablösen und Entwicklern dabei helfen, aus einer Hand ihre Software zu programmieren, die Infrastruktur aufzusetzen, sie in eine Cloud zu stellen und abzusichern.

  • Einführung

    Auch diesen Monat bekommen die DELUG-Käufer eine randvolle DVD zum einfachen Preis: Neben einer langen Liste an Inhalten passend zum Titelthema Devops finden sich hier die Dockercon-Keynotes, ein Vortrag zur NSA-Affäre, eine exklusive VM mit Xelos und eine RHCSA-Leseprobe von Open Source Press.

  • Otto

    Ein Kommandozeilenbefehl startet eine vollständige Entwicklungsumgebung, ein weiterer schiebt die eigene Webanwendung auf den Produktivserver – und all das ohne eine einzige Konfigurationsdatei. Den Traum des Webentwicklers möchte das brandneue Tool Otto wahr machen.

  • Perl-Snapshot

    Das Paket Vagrant (Vagabund) verwaltet mit Virtualbox als Hypervisor virtuelle Maschinen einfach von der Kommandozeile aus. Der Entwickler kann seinen Kunden, die einfach mal in ein Produkt hineinschnuppern wollen, fertig installierte Umgebungen mitgeben.

  • Kod.io: Programmiersprachen und Kulturen in Linz

    Auf der Konferenz Kod.io im oberösterreichischen Linz haben sich rund 300 Entwickler aus vielen Nationen über zeitgemäße Softwareentwicklung in Ruby, Javascript, Python, C# und weiteren Sprachen ausgetauscht.

comments powered by Disqus

Ausgabe 11/2017

Digitale Ausgabe: Preis € 6,40
(inkl. 19% MwSt.)

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.