Vagrant

Vagrant

Copyright ┬ę Shutterstock/TippaPatt

Was ist Vagrant?

Virtuelle Maschinen, oftmals abgek├╝rzt als VMs, sind in der IT-Welt ├Ąu├čerst n├╝tzlich, denn sie eignen sich hervorragend daf├╝r, bisher noch ungetestete Software auszuprobieren, ohne dabei das Host-System zu gef├Ąhrden. Das Aufsetzen einer solchen “Sandbox” oder Testumgebung kann aber gerade bei spezifischen Konfigurationen ohne Standard-Image viel Zeit in Anspruch nehmen. Die HashiCorp hat sich diesem Thema angenommen und mit Vagrant eine Software entwickelt, die den Erstellungsprozess von virtuellen Maschinen automatisieren kann.

Das Konzept von Vagrant

Ohne eine geeignete Anwendung ist es nicht m├Âglich, mit Vagrant virtuelle Maschinen zu erstellen, denn das Programm agiert lediglich als Schnittstelle zwischen den verschiedenen Konfigurationsebenen, in diesem Fall zwischen der Shell-Anwendung und der Ausf├╝hrungsebene. Die ausf├╝hrenden Programme k├Ânnen Virtualisierungshypervisors wie VMWare, VirtualBox, Microsofts Hyper-V, KVM und QEMU sein. M├Âchte man zus├Ątzlich auch das Provisioning per Befehl automatisieren, kann man eine geeignete SCM-Software, beispielsweise die Open-Source-Software Saltstack oder Puppet verwenden.

Die komplette Konfiguration wird ├╝ber Shell-Kommandos durchgef├╝hrt und kann, in Skripten und Konfigurationsdateien gespeichert, vollst├Ąndig automatisiert werden. Das Aufsetzen einer VM funktioniert unter Vagrant im Prinzip ├Ąhnlich wie mit den grafischen Benutzeroberfl├Ąchen der Virtualisierungsprogramme, ist aber reduziert auf eine textbasierte Darstellung. Um verschiedene Konfigurationen zu speichern, nutzt HashiCorp ein sowohl lokal verf├╝gbares als auch cloudbasiertes System der sogenannten “Boxen”. In einer Box wird die Hardware-Konfiguration, die Einstellungen und die Software einer virtuellen Maschine in einer einzigen Datei abgespeichert. Vorgefertigte und gespeicherte Boxen k├Ânnen mithilfe von Tags und Filteroptionen entweder lokal oder in der Cloud gesucht und mit anderen Nutzern geteilt werden.

Mit geeigneten Shellscripts kann nach der Erstellung das Provisioning durchgef├╝hrt werden. HashiCorp arbeitet mit SCM-Anbietern zusammen, um eine hohe Kompatibilit├Ąt des Wrappers zu gew├Ąhrleisten und bietet momentan Unterst├╝tzung f├╝r mehrere Anbieter von Software-Configuration-Management-Software (SCM). ├ťber Push-Befehle kann im Anschluss direkt ein gew├╝nschtes Softwarepaket auf die virtuelle Maschine geladen werden, schon bevor diese zum ersten Mal gestartet wurde. Vagrant nutzt daf├╝r das eigens daf├╝r entwickelte Atlas, das die Protokolle Heroku, FTP und Secure-FTP unterst├╝tzt.

Auch die Verwaltung virtueller Maschinen ist ├╝ber die Vagrant-Shell m├Âglich, bietet allerdings ohne Erweiterungen nur rudiment├Ąre Befehle wie das Starten und Beenden von Sitzungen, das L├Âschen von Maschinen und das Abfragen verschiedener Statusparameter. Neuere Versionen erlauben zudem das Erstellen von Snapshots. Dabei handelt es sich um komplett gespiegelte Festplattenabbilder, mit denen die virtuellen Maschinen bei einem Fehler oder Absturz vollst├Ąndig wiederhergstellt werden k├Ânnen.

Betriebssysteme

Die aktuelle Version 2.2.2 ist kompatibel mit den 32- und 64-bit-Versionen von Windows 10, Debian und CentOS sowie den 64-bit-Versionen von SuSe Linux, macOS und Arch Linux. HashiCorp f├╝hrt zudem ein Archiv, das auch ├Ąltere Versionen der Software zum kostenlosen Download bereith├Ąlt. Vagrant wird unter der MIT-Lizenz vertrieben, die vom Massachusetts Institute of Technology herausgegeben wird. Es handelt sich um quelloffene Software (Open-Source), f├╝r die eine kostenlose Nutzung und in gro├čen Teilen sogar eine eigene Modifikation gew├Ąhrt wird. F├╝r diese Zwecke stellt der Entwickler eine eigene Plugin-API zur Verf├╝gung.

Erweiterungsm├Âglichkeiten

Vagrant wurde vollst├Ąndig in Ruby programmiert und ist modular angelegt. Die Plugin-API wird von der Software selbst genutzt, um die Module untereinander zu verbinden, weswegen eine Implementierung weiterer Funktionen kaum etwas im Wege steht. Nutzern ist es m├Âglich, eigene Kommandos zu erstellen und durch sogenannte Action-Hooks mit weiteren Programmen zu verbinden, um den entsprechenden Funktionsumfang zur Verf├╝gung zu stellen. Doch damit nicht genug, es ist sogar m├Âglich, mithilfe von Plugins eigene Action Hooks zu schreiben, wodurch es prinzipiell m├Âglich ist, eigene Versionen von Vagrant zu schreiben. Abgesehen davon ist es mit entsprechender Erfahrung nat├╝rlich ebenfalls m├Âglich, weitere VM-Hosts, Verteil- und Provisioning-Software abseits der bereits verf├╝gbaren in den Wrapper zu integrieren oder die zur Verf├╝gung gestellten Befehle f├╝r Hosts und G├Ąste den eigenen W├╝nschen anzupassen.

Vagrant + VMware

Es ist m├Âglich, Vagrant als Bundle zusammen mit dem VMware Hypervisor zu erwerben. Dann erh├Ąlt man f├╝r 79 EUR pro “Sitz” (ein Sitz besteht aus einer Desktop-Workstation und einem Mobilger├Ąt genutzt von einer Person) eine f├╝r immer geltende Lizenz inklusive Wartungs-Updates, muss allerdings f├╝r m├Âgliche Feature-Updates m├Âglicherweise eine erneute Geb├╝hr bezahlen. Wer sich f├╝r eine Lizenz von VMware Fusion bzw. VMware Workstation unter diesen Konditionen entscheidet, unterst├╝tzt damit die Open-Source-Projekte der HashiCorp und damit nat├╝rlich auch Vagrant.

Starke Community

Der Austausch mit seinen Nutzern ist ein starker Fokus der HashiCorp, deswegen hat der Entwickler gleich mehrere Kan├Ąle einger├Ąumt, um mit ihm in Kontakt zu treten. Sehr aktiv sind die ├Âffentliche Google-Gruppe “vagrant-up” und die “HashiCorp-announcements“-Gruppe, die f├╝r offizielle Ank├╝ndigungen genutzt wird. Nicht fehlen darf nat├╝rlich ein Bug-Tracker, der auf GitHub zu finden ist und alle aktuellen Konflikte und Probleme, aber auch zuk├╝nftige Feature-Requests enth├Ąlt. Zu finden ist hier f├╝r Interessierte auch der Source-Code der Software. Private und ├Âffentliche Trainingskurse f├╝r Vagrant sind verf├╝gbar, m├╝ssen aber im Gegensatz zur Software bezahlt werden.

Tipp

Wenn Sie noch Fragen bez├╝glich eines Online Marketing Themas haben, dann k├Ânnen Sie gerne unseren Glossar besuchen und sich ├╝ber das Thema informieren, wo Sie noch speziell Fragen haben.


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte