vApps in VMware vSphere nutzen


    Tags:

    vSphere vAppUnter einer vSphere vApp versteht man eine Multi-Tier-Anwen­dung, die aus VM-Containern sowie Ressource-Pools besteht. Die VMs gehor­chen dabei einer Start- und Aus­schalt­reihen­folge, die von der Anwen­dung be­nötigt wird. vApps lassen sich in eine OVF-Datei packen und so auf andere Umge­bungen portieren.

    vSphere vApps versammeln mehrere zusammen­gehörige virtuelle Maschinen. In der Praxis handelt es sich beispiels­weise um VMs mit Apache Web-Server, Apache Tomcat oder MariaDB. In Frage kämen auch LAMP-Stacks, Ruby-On-Rails-Stacks oder ein Domain Controller mit SQL-Server.

    Nicht auf einen Host beschränkt

    Da sich vApps im OVF-Format weitergeben lassen, sind sie für Unter­nehmen mit mehreren Standorten interessant. Das gilt besonders deshalb, weil sich OVF-Content und damit auch eine vApp über die Content-Library verteilen lässt.

    Die einzelnen in der vApp enthaltenen VMs müssen nicht auf dem gleichen ESXi-Host liegen und beim Einsatz von DRS auch nicht auf dem gleichen Host bleiben, da die vApp-Metadaten in der vCenter-Datenbank gespeichert werden.

    Bei Multi-Tier-Anwendungen ist es aber häufig durchaus gewünscht, dass die einzelnen VMs auf dem gleichen Host bleiben, weil etwa ein Application-Server und seine Datenbank besonders intensives Netzwerk-I/O verbindet

    Dann kann es sogar nützlich sein, beide VMs netzwerk­technisch auf dem gleichen vSwitch und dem gleichen VLAN zu betreiben, etwa um von einem VMXNET3-Netzwerk-Adapter oder SR-IOV zu profitieren.

    Metadaten sichern

    Allerdings können die vApp-Metadaten verloren gehen, wenn die vCenter-Datenbank gelöscht oder der ESXi-Host, welcher die vApp enthält, aus dem vCenter Server entfernt wird. Schon deshalb - nicht nur für die Weitergabe - ist es nützlich,  vApps im OVF-Paket zu sichern, damit keine Metadaten verloren gehen.

    Ebenfalls erwähnenswert ist: vApp-Metadaten für die virtuellen Maschinen der vApp folgen nicht der gewohnten Snapshot-Semantik. Löscht, ändert oder definiert man vApp-Eigen­schaften, nachdem man einen Snapshot einer virtuelle Maschine erstellt hat, dann bleiben sie gelöscht, geändert oder definiert, wenn die virtuelle Maschine auf diesen Snapshot wieder­hergestellt wird.

    Erstellen von vApps

    Schauen wir uns nun an, wie man eine vApp erstellt. Ausgangspunkt ist der Eintrag Globale Bestandsliste im Navigator, den man am schnellsten durch Wechseln zur der Home-Ansicht findet.

    Der dritte Eintrag von oben dient dem Anzeigen existenter vApps. Da das Erstellungs­ziel für eine neue vApp ein Ordner, eigen­ständiger Host, Ressourcen-Pool oder DRS-Cluster sein kann, muss man lediglich im Kontext­menü eines der genannten Objekte den Eintrag Neue vApp auswählen.

    Assistenten für das Erstellen eines neuen vApp starten

    Der sich dann öffnende Assistent erlaubt wahlweise das Erstellen einer neuen oder das Klonen einer vorhandenen vApp.

    vApp neu erstellen oder aus einer bestehenden klonen

    Beim Neuerstellen muss man anschließend das Ziel für die vApp angeben.

    Name und Speicherort für die vApp eingeben

    Danach konfiguriert man die Ressourcen-Zuteilung in gleicher Weise wie bei einem Ressource-Pool, das Erweiterbar-Flag ist somit auch hier verfügbar.

    Resourcen an die neue vApp zuteilen

    Nach einer Zusammenfassung wird die vApp erzeugt.

    Für das Erstellen der einzelnen VMs gibt es mehrere Möglichkeiten. Wenn man den Assistenten für die Neuerstellung einer VM verwendet, dann wählt man beim Bereitstellungs­ziel die eben erstellte vApp.

    vApp als Bereitstellungsziel für eine neue VM wählen

    Alternativ migriert man eine vorhandene VM mittels vMotion in die vApp.

    Virtuelle Maschine mit vMotion in eine vApp migrieren

    Schließlich kann man eine vorhandene VM in die vApp klonen.

    Bestehende VM in eine vApp klonen

    Da wir das Erstellen und Verwalten der vApp für diesen Text nur simulieren, klonen wir der Einfachheit halber 4 kompakte Photon-VMs. Dabei verzichte ich bei der ersten VM auf das Installieren des Gast­betriebssystems sowie auf das Hard- und Software-Customizing beim Klon­vorgang, um Zeit zu sparen.

    Wurde die vApp mit der gewünschten Anzahl an VMs bestückt, wechselt man entweder über die globale Inventarliste zur vApp-Übersicht oder klickt im Kontext-Menü der vApp auf Einstellungen bearbeiten.

    vApp zum Bearbeiten öffnen

    Hierbei landet man direkt im Tab Ressourcen der vApp-Konfiguration, während der erste Weg zunächst eine Liste der verfügbaren vApps zeigt, in unserem Beispiel nur eine.

    Liste der vApps im vSphere Client

    Ein Klick darauf, bringt uns in den Hauptarbeitsbereich der vApp1.

    Hauptarbeitsbereich der vApp

    Wechseln wir nun erneut in die Einstellungen der vApp und dort zum Tab Startreihenfolge, dann lässt sich die Start-und/oder Stopp-Reihenfolge der einzelnen VMs mitsamt der gewünschten Verzögerung in Sekunden einstellen.

    Dabei muss man im Menü Aktion jeweils gezielt festlegen, ob Starten den Zustand Einschalten und Herunterfahren den Zustand Ausschalten, Herunterfahren des Gastes oder Anhalten meint.

    Startreihenfolge von VMs in einer vApp bearbeiten

    Ist das geschehen, kann die gesamte vApp zum Beispiel aus der Host-und-Cluster-Ansicht gestartet werden, wobei sich genau beobachten lässt, wie die Einzel-VMs gemäß der Start­reihen­folge booten. Ebenfalls über das Kontext­menü kann man die ausgeschaltete vApp als OVF-Vorlage exportieren oder in die Content-Library klonen.

    Individuelle Eigenschaften an vApps zuweisen

    Darüber hinaus lassen sich vApps vor allem für die Weitergabe als OVF über das Untermenü vApp-Eigenschaft individuelle Eigenschaften in Form von selbst erstellten Schlüsseln zuweisen, die im Falle einer so genannten Dynamischen Eigenschaft auch als Makro verwendet werden.

    Für diese Art der erweiterten vApp-Konfiguration lohnt es sich allerdings, sich mit vRealize Orchestrator vertraut zu machen.

    Keine Kommentare