VMware ESXi-Installation via PXE starten

Aus Knowledgebase
Wechseln zu: Navigation, Suche

Um eine aktuelle Version von VMware ESXi in eine PXE-Bootumgebung zu integrieren wird zuerst eine bestehende PXE-Umgebung benötigt. Wie diese im Linux-Kontext zu konfigurieren ist, ist im Artikel Debian-Live Netzbootsystem nachzulesen.

Dabei muss zwischen älteren und neueren Versionen von pxelinux unterschieden werden. Neuere Versionen können die bei VMware mitgelieferte mboot.c32 nicht mehr starten. Dieses ist eine COM32R-Datei, während alle neueren Versionen das ELF-Format benutzen.

Zuerst muss von VMware das entsprechende Image heruntergeladen werden. Dieses wird dann auf dem Linuxserver gemountet.

Mit altem Syslinux/pxeboot

Der Inhalt in einen Ordner unterhalb des TFTP-Ordners kopiert (beispielhafte Kommdos, Pfade sind ggfs. anzupassen):

mount -o loop,ro /data/VMware-VMvisor-Installer-5.5.0.update02-2068190.x86_64.iso /mnt/cdrom
mkdir /var/tftpboot/vmware-install
cp -R /mnt/cdrom/* /var/tftpboot/vmware-install/

Als nächster Schritt muss die Bootkonfigurationsdatei angepasst werden:

cd /var/tftpboot/vmware-install
sed -e "s#/##g" -e "3s#^#prefix=$PWD/\n#" -e "6s#jumpstrt.gz --- useropts.gz --- ##" -i.bak boot.cfg

Die gezeigte Vereinfachung mittels sed erledigt folgende Schritte:

  • Löscht alle führenden / aus allen Pfadangaben,
  • Fügt eine neue Zeile ein mit der Prefix-Direktive und dem vollen Pfad zum tftp-Ordner, damit nicht alle Dateien mit den vollen Pfadnamen referenziert werden müssen
  • Löscht Referenzen auf jumpstrt.gz und useropts.gz – beides leere Dateien im Gzip-Format. Beim Booten von ESXi 5.5 via tftp bleibt der Loader sonst mit einer Fehlermeldung bei diesen Dateien stehen. Bei ESXi 5.1 gibt es jumpstrt.gz nicht, daher funktioniert o. G. Regexp nicht. Bitte dann manuell nachbessern.

Als letztes muss nun noch ein Eintrag in die PXE-Konfigurationsdatei mit aufgenommen werden, um einen entsprechenden Eintrag im Menü zu erhalten:

label esxi55
	menu label VMware ESXi 5.5 Install
	kernel vmware-install/mboot.c32
	append -c /var/tftpboot/vmware-install/boot.cfg

Die Dateien s.v00, sb.v00 und tools.t00 sind recht groß und benötigen zum Download via tftp ihre Zeit. Nicht verzweifeln, falls es so aussieht als würde sich der Bootvorgang an dieser Stelle aufgehängt haben.

Mit neuerem Syslinux/pxeboot

Kommt noch.

Weblinks