t3n News Entwicklung

Virtuelle Maschine für DevOps: So setzt du deine Vagrant-Instanz auf

Virtuelle Maschine für DevOps: So setzt du deine Vagrant-Instanz auf

Vagrant hat den Umgang mit uniformen und virtuellen Entwicklungsumgebungen für ganze Teams stark vereinfacht. In diesem Artikel erklären wir euch, wie ihr eure Instanz aufsetzen könnt – und sie wieder zerstört.

Virtuelle Maschine für DevOps: So setzt du deine Vagrant-Instanz auf

Vagrant. Virtuelle Maschinen in einfach. (Grafik: vagrantup.com)

Vagrant ist die Schnittstelle zwischen Virtualisierungs-Software wie Hyper-V, VMware oder Virtualbox und Systemkonfigurations-Tools wie Chef, Puppet oder Saltstack. Warum ihr euch Vagrant ansehen solltet, könnt ihr in unserem Einführungsartikel lesen. In diesem Artikel will ich euch einen Schritt weiter bringen und euch zeigen, wie ihr Vagrant grundlegend nutzt.

Vagrant up

vagrant-2
Vagrant-Sequenz: Init, Up, Destroy

Vagrant wird grundlegend mit zwei Befehlen initialisiert – vagrant init precise64 http://files.vagrantup.com/precise64.box lädt das vollständige 64-bit Ubuntu 12.04 LTS. Der zweite Befehl ist vagrant up – der die Maschine startet. Das war es schon.

Innerhalb dieser virtuellen Maschine könnt ihr jetzt alles machen. Egal ob ihr Software installieren oder das Dateisystem schrotten wollt. Zugriff auf das OS erlangt ihr über die SSH-Konsole, die ihr mit vagrant ssh ausführen könnt.

Vagrant konfigurieren: Vagrantfile

vagrant-file
Vagrant:So sieht sie also aus, die Konfigurationsdatei.

Mit vagrant up könnt ihr jetzt die virtuelle Maschine starten. Dabei wird zwar eine Default-Konfiguration geladen, die aber ist für die meisten Projekte nicht ausreichend und muss näher spezifiziert und konfiguriert werden. Das Vagrantfile erlaubt es euch, beinahe jeden Default-Wert zu überschreiben, wodurch Vagrant unglaublich stark konfigurierbar ist. Ihr findet es in dem Verzeichnis, in dem ihr den vagrant init-Befehl ausgeführt habt.

Jedes Projekt muss über ein eigenes Vagrantfile verfügen, da jedes Projekt eine eigene isolierte Umgebung darstellt. Dabei ist das Vagrantfile nichts anderes als Ruby-Code innerhalb einer Textdatei mit dem Namen Vagrantfile. Das Vagrantfile definiert die genaue Spezifikation der Arbeitsumgebung: Wieviel Arbeitsspeicher benötigt wird, welches Betriebssystem geladen oder wie eine Internetverbindung hergestellt werden soll – bis hin zur Frage, welche Software installiert werden muss.

Kurzum: Das Vagrantfile spezifiziert die gesamte Entwicklungsumgebung – für das gesamte Team. Möglich wird das dadurch, dass das Vagrantfile für die Nutzung mit Versionskontrollen konzipiert wurde. Somit ist es möglich, dass jeder Projektbeteiligte sich kurzerhand die komplette Entwicklungsumgebung lokal herstellen kann – die jeweils identisch zu den Umgebungen der Projektmitglieder ist: „Auf meinem System gibt es diesen Fehler aber nicht!“ gehört somit der Geschichte an.

Dabei ist zu beachten, dass es derzeit zwei verschiedene Möglichkeiten für eine Konfigruationen gibt: eine für Vagrant Version 1.* und eine eigene für Vagrant Version 2.*. Allerdings könnt ihr Konfigurationen für V1 und V2 innerhalb einer Datei mischen.

Vagrant: Teardown

Ihr hab jetzt eine funktionierende virtuelle Maschine erschaffen – und der Teardown ist genauso einfach. Wir haben alle schon mal vergessen, einen Datenbank- oder Webserver zu beenden – mit Vagrant ist das ziemlich unmöglich, da alle Tools isoliert auf der virtuellen Maschine laufen. Somit reicht auch nur ein Kommando, um alles herunterzufahren. Dabei ist Vagrant in der Lage, die Maschine zu stoppen, sie zu löschen oder sie auszusetzen. Den Status der Maschine könnt ihr jederzeit mit vagrant status einsehen.

Mit vagrant suspend wird ein Snapshot erzeugt, der den Zustand einer Maschine zum Zeitpunkt X jederzeit wiederherstellen kann. Das System wird eingefroren und nicht heruntergefahren. Somit bleibt die virtuelle Maschine erhalten und verbraucht weiterhin RAM-, und Festplatten-Speicher. Um die Maschine aus ihrem Dörnröschenschlaf zu erwecken, könnt ihr vagrant up oder vagrant resume nutzen.

Der Befehl vagrant halt fährt die Maschine runter. Vagrant versucht zuerst, die Maschine in einem Prozess runterzufahren, der alle Unterprozesse beendet. Ist Vagrant nicht in der Lage, die Maschine ordnungsgemäß runterzufahren, wird quasi der Stecker gezogen. Ihr könnt diese Vorgehensweise auch mit der zusätzlichen Flag vagrant halt --force erzwingen.

Um die virtuelle Maschine zu löschen, könnt ihr vagrant destroy nutzen. Dieser Befehl sorgt dafür, dass die virtuelle Maschine völlig vom Gastsystem verschwindet – so als hätte sie nie existiert.

Damit Vagrant mit seinen Kommandos eingesetzt werden kann, müsst ihr den Package-Installer von der offiziellen Website ausführen. Vagrant läuft auf Mac OS X, Windows und Linux (DEB und RPM).

Und jetzt ihr: Setzt ihr auf Docker oder auf Vagrant?

Vorheriger Artikel Zurück zur Startseite Nächster Artikel
Eine Antwort
  1. von Mathias Brodala am 19.05.2015 (18:09 Uhr)

    Wie auch der offiziellen Doku zu entnehmen (https://docs.vagrantup.com/v2/getting-started/index.html) ist der Start heutzutage deutlich einfacher mit einem einfachen "vagrant init hashicorp/precise64". Das jeweilige Image wird automatisch aus dem Atlas-Katalog von HashiCorp bezogen.

    Antworten Teilen
Deine Meinung

Bitte melde dich an!

Du musst angemeldet sein, um einen Kommentar schreiben zu können.

Jetzt anmelden

Mehr zum Thema
Zwei-Faktor-Authentifizierung: So setzt du sie bei Facebook, PayPal, Dropbox und Co. ein
Zwei-Faktor-Authentifizierung: So setzt du sie bei Facebook, PayPal, Dropbox und Co. ein

Die Zwei-Faktor-Authentifizierung ist ein bewährtes Mittel, um seinen Online-Konten ein erhöhtes Maß an Sicherheit zu verschaffen. Wir zeigen euch, wie ihr sie unter anderem bei Facebook, Google … » weiterlesen

Kostenloses UI-Kit für Messenger-Bots: So setzt ihr euren Bot perfekt in Szene
Kostenloses UI-Kit für Messenger-Bots: So setzt ihr euren Bot perfekt in Szene

Der Facebook-Messenger soll mehr und mehr zu Plattform für Bots werden. Damit Entwickler ihre Bots richtig in Szene setzen können, gibt es jetzt ein kostenloses UI-Kit für Sketch. » weiterlesen

Microsoft drängt Firmen zum Windows-10-Update: So setzt du dich zur Wehr
Microsoft drängt Firmen zum Windows-10-Update: So setzt du dich zur Wehr

Private PC-Nutzer kennen die nervigen Hinweise, die Microsoft nutzt, um sie zum Upgrade auf Windows 10 zu drängen. Jetzt nimmt der Softwarekonzern auch kleine Firmen und Organisationen ins Visier. » weiterlesen

Alle Hefte Jetzt abonnieren – für nur 35 €

Kennst Du schon unser t3n Magazin?