@MachtDochNix Das leidige Thema Zeit… Das Problem habe ich leider im Moment auch etwas. Aber gerne können wir das ganze mal besprechen. Habt ihr da einen BBB Server oder so was?
@cweikl Entschuldige, ich habe leider noch keine Zeit gefunden Dokumentation zu schreiben.
Ich hatte das jetzt einfach mal mit Virtualbox angefangen. Da halt entsprechend den Tutorials zu preseed gefolgt und die Bootsequenz rausgesucht um das zu automatisieren.
Ich hatte es auch schon mal für Ubuntu 20 ausprobiert weil dort kein Preseed mehr verwendet wird, aber das scheitert dann an den fehlenden Paketen seitens Linuxmuster (oder waren es Abhängigkeiten?)
Konfiguriert wird da noch nicht viel außer das, was das linuxmuster-prepare Skript eben macht.
Ich musste allerdings bei VirtualBox etwas komisch das Netzwerk konfigurieren, weil Packer ein NAT Interface benötigt. Wobei ich da später herausgefunden habe, dass es auch möglich ist das NAT Interface auf das 10/8 Netz zu ändern. Von dem her müsste ich das noch einmal ausprobieren ob es ohne zweites Netzwerkinterface geht. Bzw. alternativ mit einem NatNet und einem Jumphost.
Das schöne an Packer ist ja, dass man für jeden Hypervisor von Grund auf eine neue Installation fährt.
Das ist jetzt zwar noch nicht implementiert, aber man könnte die preseeed Datei so templaten, dass dann immer nur die für den Hypervisor notwendigen Pakete installiert werden.
Wo du jetzt aber XCP-ng ansprichst: Da scheint es tatsächlich keine vernünftige Unterstüzung für Packer zu geben. Es gibt ein offizielles Plugin und ein paar Forks, aber das müsste man mal ausprobieren ob das noch funktioniert. Evtl. kann man auch mit libvirt/VirtualBox ein OVA Image bauen zum Importieren, aber das müsste ich ausprobieren ob das dann mit Netzwerk und so klappt.
Für Proxmox hatte ich es jetzt testweise mal so ausprobiert mit Vagrant den Hypervisor zu bauen und dann da drin die VM mit Linuxmuster. Funktioniert bei mir mit nested Virtualization (libvirt am Host) auch ganz gut, aber bei AppVeyor ist es dann wohl eine Virtualisierungsebene zu viel, weil der Worker dort ja schon virtualisiert ist.
Ich hatte jetzt schon überlegt, ob man quasi mit Bare Metal Cloud Server oder so lösen könnte auf den man den gerade benötigten Hypervisor einfach aufspielt. Die Alternative wäre vermutlich die Hypervisor quasi nested laufen zu lassen, aber das würde auch einen physischen Host voraussetzen damit es maximal zwei Virtualisierungsebenen werden.