Bevor ich auf das Bereitstellen des Ubuntu 16.04 eingehe, gibt es vorab dazu ein grundlegendes Problem zu klären:
Nicht alle Linux Derivate und Versionen sind in allen vCenter Versionen inklusive Gast-Anapssung unterstützt!
Eine Liste kann hier eingesehen werden:
VMware vCenter GuestOS Customization Support Matrix
Aktuell ist somit Ubuntu 16.04 gar nicht auf der Liste.
Da ich aber ohnehin unabhängig von der vCenter Version bleiben möchte und den Workflow für verschiedene Derivate einsetze, habe ich das etwas anders angepackt.
Mein Verfahren im Überblick
- Klonen des Templates via vRA Clone Workflow ohne „Customization Spec“ (vCenter Gastanpassung)
- vRealize Orchestrator Workflow zur weiteren Gast Anpassung
Punkt eins wäre natürlich auch über einen vRealize Orchestrator Workflow ersetzbar wenn man kein vRealize Automation im Einsatz hat.
Ubuntu 16.04 Template Vorbereitung
Ubuntu Basis Installation
Zusätzlich habe ich „open-ssh-server“ direkt mitgegeben und die Disk als LVM mit Standard Einstellungen formatiert.
root Passwort setzen
SSH für root aktivieren
SSH Konfiguration anpassen (/etc/ssh/sshd_config):
Netzwerkkarten Benennung umstellen
GRUB Konfiguration anpassen (/etc/default/grub):
GRUB Konfiguration neu schreiben:
Dieses Vorgehen war auch schon bei Ubuntu 14.04 notwendig um sicherzustellen, dass der erste Adapter wieder den alten Namen „eth0“ bekommt.
Detaillierte Beschreibung:
Change default network name (ens33) to old “eth0” on Ubuntu 16.04
Dann noch das neue Interface Konfigurieren (/etc/network/interfaces):
Gast Anpassung
Ich habe mich entschieden im vSphere Template ein Script abzulegen, welches vom vRealize Orchestrator mit den entsprechenden Parametern aufgerufen wird.
Dies ist in allen Tests das schnellste und robusteste Vorgehen gewesen.
Das Script
An dieser Stelle freue ich mich noch mehr als gewöhnlich über Kommentare und Anregungen. in der Linux Welt fühle ich mich gar nicht so heimisch und man könnte dieses Verfahren sicher noch optimieren.
Nicht vergessen die Rechte des Scripts anzupassen:
Test des Scripts
Nach einem Reboot sind alle Einstellungen wie gewünscht gesetzt.
Der Orchestrator Workflow
Hier ist der unterliegende Orchestrator Workflow etwas aufgeschlüsselt:

vRealize Orchestrator – Workflow Übersicht

vRealize Orchestrator – Workflow für Gast Anpassung

vRealize Orchestrator – Customizatin Parameter Vorbereitung
vRealize Automation Blueprint
Um den Benutzern ein Front-End zu geben verwende ich natürlich wieder VMware vRealize Automation 6.2.x.
Das vSphere Template wird hier im Blueprint ganz simpel als vCenter Klon Workflow eingebunden und dann mit den entsprechenden Orchestrator Subs versehen.
Meine Stubs
Building Machine
- Kontrolle der Parameter
- IP Adresse und Konfiguration aus IPAM holen
- Setzen und erweitern der vRA Properties
Machine Provisioned
- Einlesen der vRA Properties
- Finale Anpassung nach dem klonen
Konfiguration

Blueprint – Informationen

Blueprint – Vorlage

Blueprint – Optionen
Für mehr Details zu der Integration von externen Workflows kann ich das Buch Automating vSphere with VMware vCenter Orchestrator sehr empfehlen.
No Responses