Nachdem der letzte Proof-of-Concept „VMWare ESXi auf Alix Nachfolger APU1c und APU1c4 installieren“ auf reges Interesse gestossen ist möchte ich es nicht unterlassen, dasselbe Konzept mit der neuen APU2 Version nochmals aufzugreifen.
Die neue APU2 setzt auf einen AMD Embedded G series GX-412TC CPU und verfügt wieder über 2GB respektive 4GB RAM. Als Netzwerkkarte kommt in der neuen Version entweder eine Intel i211AT oder eine i210AT zum Einsatz. Dies hat den Vorteil, dass die Netzwerkkarte direkt von ESXi unterstützt wird (dank des igb Treibers). Es ist also kein mühsames Nachinstallieren des NIC-Treibers notwendig.
Teile dieses Tutorials basieren auf dem ursprünglichen Artikel und sind mit neuen Inputs (z.B. dem Embedded Host Client) ergänzt.
Benötigte Software / Hardware
- VMWare Workstation
- VMWare ESXi 6 Installations-ISO
- PCEngines APU2c2 oder APU2c4
- Ein leerer USB Stick mit mindestens 4GB Kapazität
- Plop Boot Manager
ESXi Installation auf USB Stick mit VMWare Workstation
Für die Erstellung des ESXi USB Sticks verwende ich in diesem Tutorial VMWare Workstation. Unter Umständen kann die Installation auch mit dem kostenlosen VMWare Player vorgenommen werden. Dazu ist jedoch ein VM Template notwendig. Die Erstellung des notwendigen Templates kann auch online erfolgen. Google ist hierbei die beste Unterstützung.
VMWare ESXi installieren
Die virtuelle Maschine benötigt keine Festplatte, da die Installation auf einen USB Stick erfolgt. Beim Starten der virtuellen Maschine muss nun noch der USB Stick verbunden werden:
Wichtig ist hierbei, dass der angesteckte USB Stick an die virtuelle Maschine durchgereicht wird.
Ist der USB Stick korrekt angeschlossen steht dieser entsprechend zur Auswahl.
Im Anschluss das gewünschte Tastaturlayout auswählen und das root-Kennwort definieren:
Für die Basis-Installation sind nun alle Informationen vorhanden. Die Installation kann gestartet werden.
ESXi starten
VMWare Workstation kann über die neu verfügbare EFI-Boot-Option auch ab USB Stick starten. Ich bevorzuge hierbei jedoch den Plop Boot Manager.
Dazu wird der virtuellen Maschine die CD plpbt.iso zugewiesen und anschliessend gestartet. Um den ESXi zu starten kann nun im Auswahlmenü USB ausgewählt werden.
Nach dem Start und der entsprechenden Konfiguration der Management IP Adresse kann direkt auf den seit ESXi 6.0 U2 integrierten „Host Embedded Client“ zugegriffen werden. Der Zugriff erfolgt dabei ohne installierten vSphere Client direkt via Webbrowser. Über die Adresse https://ip-des-esxi-servers/ui/ kann auf den neu installierten ESXi zugegriffen werden.
ESXi Konsole auf seriellen Port umleiten
Da die PCEngines APU keine Grafikkarte besitzt muss auf dem neuen ESXi entsprechend die serielle Ausgabe auf com1 konfiguriert werden. Die serielle Ausgabe kann wie folgt aktiviert werden:
- Stellen Sie eine Verbindung mit dem ESXi Server UI her (Host Embedded Client)
- Klicken Sie links auf die Registerkarte Verwalten
- Klicken Sie rechts auf Erweiterte Einstellungen
- Wählen sie den Eintrag VMkernel.Boot.tty2Port aus und klicken sie auf Option bearbeiten
- Unter Neuer Wert nun com1 eintragen und mit Speichern bestätigen
Weitere Details zu dieser Einstellung finden sie im VMWare Dokumentationscenter.
Die virtuelle Maschine kann nun heruntergefahren werden. Alle für den Betrieb auf der APU2 notwendigen Anpassungen sind gemacht.
PCEngines APU2 vorbereiten
Zu Beginn empfiehlt es sich, das aktuellste BIOS auf die APU aufzuspielen. Die Anleitung dazu findet sich auf der PC Engines Webseite unter TinyCore.
Wichtig ist ebenfalls, dass die Boot-Reihenfolge auf der APU richtig konfiguriert ist.
Um die Boot-Reihenfolge anzupassen kann beim Start der APU auf der Konsole mittels F10 -> 3. Payload [setup] die gewünschte Reihenfolge konfiguriert werden.
ESXi auf der APU starten
Dank der umgeleiteten Datenausgabe wird nun während dem Startvorgang der komplette Output auf die serielle Konsole umgeleitet. Der Startvorgang kann je nach verwendetem USB Stick durchaus ein paar Minuten in Anspruch nehmen.
Design-Technisch nicht das schönste, aber normalerweise sieht man die ESXi-Konsole genau einmal – bei der initialen Konfiguration des Management Netzwerks.
Alles weitere erfolgt mittels vSphere Client oder neuerdings Host Embedded Client
Wie ESXi konfiguriert und der vSphere Client / Host Embedded Client bedient wird, ist nicht teil dieses Beitrages. Alles notwendige wird jedoch ausführlich im Dokumentationscenter von VMWare beschreiben.
Viel Spass!
Die problemlose Installation von ESXi 6 dank der nun unterstützten Intel-NICs und der stärkeren CPU machen die APU zu einem optimalen Virtualisierungsserver für kleine Serveraufgaben. Natürlich ist die APU nicht ein Leistungsbolide – je nach Einsatzzweck aber genau das richtige :)
Vielen Dank für den äußerst interessanten Beitrag.
Wie zuverlässig läuft das System bei Dir?
Hallo Peter
Die APU läuft sehr stabil mit ESXi. Ich konnte keinen einzigen Absturz verzeichnen. Die Leistungsfähigkeit der APU ist nach wie vor nicht vergleichbar mit grober Hardware. Angesichts der kleinen Leistungsaufnahme und den drei zur Verfügung stehenden Netzwerkkarten ist es trotzdem eine interessante Lösung welche ich bereits an mehreren Orten mit ESXi oder Proxmox aktiv einsetze.
Gruss
Yves
Das klingt toll. Also läuft auch Proxmox bei dir absolut zuverlässig? Jede Netzwerkkarte problemlos ansteuerbar?
Welche Szenarien bildest Du zum Bespiel ab?
Was ist bei der Installation von Proxmox zu beachten? Kann man sich genau an deine Alte Anleitung halten?
Nochmals vielen Dank für deinen Einsatz!
Du bist mir gerade zuvor gekommen. Ein Artikel zu Proxmox und APU2 ist soeben „getippt“ worden.
Ja, Proxmox läuft teilweise noch einen Tick angenehmer. Inzwischen mit den Intel-NICs ist das nicht mehr so ein Problem aber die zuvor verwendeten Realtek Netzwerkkarten haben deutlich mehr Ressourcen verschwendet unter ESXi als unter Proxmox. Zudem bin ich Freund offener Software und nicht zuletzt von Debian als Basis. Das eröffnet ungleich andere Möglichkeiten gewisse zusätzliche Dienste wie beispielsweise eine apcupsd oder ähnliches gleich mit auf dem Server drehen zu lassen.
Ich nutze diese Lösungen für alles mögliche was nicht zwingend viel CPU Leistung benötigt. Angefangen von kleinen Webservern bis hin zu Streaming und Archivlösungen. Mit entsprechenden Gehäusen kann auch eine 2.5″ angeschlossen werden wodurch die Kapazität im vertretbaren Kostenrahmen erhöht werden kann.
Super Anleitung!
ich habe den APU2 bestellt, allerdings habe ich eine Präferenz für ESX 5.5.
geht das auch?
Ciao Oliver
Das müsste eigentlich auch gehen, die Intel-Treiber sind ja bereits seit längerem im Basis-ESXi vorhanden.
Gruss
Yves
Ich habe das ganze mit einem 2C4 und dem aktuellen 6.5 Release getestet: Beim starten des Servers läuft dieser in einen Fehler.
Habe das ganze mit folgender Hardware getestet: mSata SSD, Sata SSD und USB HDD.
Steckt man die HDD in einen anderen PC, startet der ESXi host Problemlos.
Ich vermute das die CPU nicht mehr supportet wird.
SeaBIOS (version ?-20160307_153453-michael-desktop64)
XHCI init on dev 00:10.0: regs @ 0xfeb22000, 4 ports, 32 slots, 32 byte contexts
XHCI extcap 0x1 @ feb22500
XHCI protocol USB 3.00, 2 ports (offset 1), def 0
XHCI protocol USB 2.00, 2 ports (offset 3), def 10
XHCI extcap 0xa @ feb22540
Found 2 serial ports
ATA controller 1 at 4010/4020/0 (irq 0 dev 88)
EHCI init on dev 00:13.0 (regs=0xfeb25420)
ATA controller 2 at 4018/4024/0 (irq 0 dev 88)
Searching bootorder for: /pci@i0cf8/*@14,7
Searching bootorder for: /rom@img/memtest
Searching bootorder for: /rom@img/setup
ata1-0: ST9320423AS ATA-8 Hard-Disk (298 GiBytes)
Searching bootorder for: /pci@i0cf8/*@11/drive@1/disk@0
XHCI no devices found
Initialized USB HUB (0 ports used)
All threads complete.
Scan for option roms
PCengines Press F10 key now for boot menu:
Searching bootorder for: HALT
drive 0x000f2e90: PCHS=16383/16/63 translation=lba LCHS=1024/255/63 s=625142448
Space available for UMB: c1000-ef000, f0000-f2e90
Returned 262144 bytes of ZoneHigh
e820 map has 7 items:
0: 0000000000000000 – 000000000009f800 = 1 RAM
1: 000000000009f800 – 00000000000a0000 = 2 RESERVED
2: 00000000000f0000 – 0000000000100000 = 2 RESERVED
3: 0000000000100000 – 00000000dffae000 = 1 RAM
4: 00000000dffae000 – 00000000e0000000 = 2 RESERVED
5: 00000000f8000000 – 00000000fc000000 = 2 RESERVED
6: 0000000100000000 – 000000011f000000 = 1 RAM
enter handle_19:
NULL
Booting from Hard Disk…
Booting from 0000:7c00
SYSLINUX 3.86 EBIOS Copyright (C) 1994-2010 H. Peter Anvin et al
Loading /tboot.b00
Loading /b.b00
Loading /jumpstrt.gz
Loading /useropts.gz
Loading /features.gz
Loading /k.b00
Loading /chardevs.b00
Loading /a.b00
Loading /user.b00
Loading /uc_intel.b00
Loading /uc_amd.b00
Loading /sb.v00
Loading /s.v00
Loading /ata_liba.v00
Loading /ata_pata.v00
Loading /ata_pata.v01
Loading /ata_pata.v02
Loading /ata_pata.v03
Loading /ata_pata.v04
Loading /ata_pata.v05
Loading /ata_pata.v06
Loading /ata_pata.v07
Loading /block_cc.v00
Loading /char_ran.v00
Loading /ehci_ehc.v00
Loading /elxnet.v00
Loading /hid_hid.v00
Loading /i40en.v00
Loading /igbn.v00
Loading /ima_qla4.v00
Loading /ipmi_ipm.v00
Loading /ipmi_ipm.v01
Loading /ipmi_ipm.v02
Loading /ixgben.v00
Loading /lpfc.v00
Loading /lsi_mr3.v00
Loading /lsi_msgp.v00
Loading /lsi_msgp.v01
Loading /misc_cni.v00
Loading /misc_dri.v00
Loading /mtip32xx.v00
Loading /ne1000.v00
Loading /nenic.v00
Loading /net_bnx2.v00
Loading /net_bnx2.v01
Loading /net_cdc_.v00
Loading /net_cnic.v00
Loading /net_e100.v00
Loading /net_e100.v01
Loading /net_enic.v00
Loading /net_fcoe.v00
Loading /net_forc.v00
Loading /net_igb.v00
Loading /net_ixgb.v00
Loading /net_libf.v00
Loading /net_mlx4.v00
Loading /net_mlx4.v01
Loading /net_nx_n.v00
Loading /net_tg3.v00
Loading /net_usbn.v00
Loading /net_vmxn.v00
Loading /nhpsa.v00
Loading /nmlx4_co.v00
Loading /nmlx4_en.v00
Loading /nmlx4_rd.v00
Loading /nmlx5_co.v00
Loading /ntg3.v00
Loading /nvme.v00
Loading /nvmxnet3.v00
Loading /ohci_usb.v00
Loading /pvscsi.v00
Loading /qedentv.v00
Loading /qfle3.v00
Loading /qflge.v00
Loading /qlnative.v00
Loading /sata_ahc.v00
Loading /sata_ata.v00
Loading /sata_sat.v00
Loading /sata_sat.v01
Loading /sata_sat.v02
Loading /sata_sat.v03
Loading /sata_sat.v04
Loading /scsi_aac.v00
Loading /scsi_adp.v00
Loading /scsi_aic.v00
Loading /scsi_bnx.v00
Loading /scsi_bnx.v01
Loading /scsi_fni.v00
Loading /scsi_hps.v00
Loading /scsi_ips.v00
Loading /scsi_isc.v00
Loading /scsi_lib.v00
Loading /scsi_meg.v00
Loading /scsi_meg.v01
Loading /scsi_meg.v02
Loading /scsi_mpt.v00
Loading /scsi_mpt.v01
Loading /scsi_mpt.v02
Loading /scsi_qla.v00
Loading /shim_isc.v00
Loading /shim_isc.v01
Loading /shim_lib.v00
Loading /shim_lib.v01
Loading /shim_lib.v02
Loading /shim_lib.v03
Loading /shim_lib.v04
Loading /shim_lib.v05
Loading /shim_vmk.v00
Loading /shim_vmk.v01
Loading /shim_vmk.v02
Loading /uhci_usb.v00
Loading /usb_stor.v00
Loading /usbcore_.v00
Loading /vmkata.v00
Loading /vmkplexe.v00
Loading /vmkusb.v00
Loading /vmw_ahci.v00
Loading /xhci_xhc.v00
Loading /emulex_e.v00
Loading /weaselin.t00
Loading /esx_dvfi.v00
Loading /esx_ui.v00
Loading /lsu_hp_h.v00
Loading /lsu_lsi_.v00
Loading /lsu_lsi_.v01
Loading /lsu_lsi_.v02
Loading /lsu_lsi_.v03
Loading /native_m.v00
Loading /rste.v00
Loading /vmware_e.v00
Loading /vsan.v00
Loading /vsanheal.v00
Loading /vsanmgmt.v00
Loading /xorg.v00
Loading /imgdb.tgz
Loading /state.tgz
Shutting down firmware services…
Relocating modules and starting up the kernel…
▒
Starting VMKernel initialization …
Initializing memory …
Initializing chipset …
Initializing timing …
Initializing scheduler …
Initializing device support …
Initializing processors …
Late chipset initialization …
Initializing IOV …
Enabling interrupts …
Initializing ACPI …
Initializing storage stack …
Initializing power management …
Initializing page cache …
Initializing PCI passthru …
Initializing events …
Initializing heartbeat …
VMKernel loaded successfully.
Loading module chardevs …
chardevs loaded successfully.
Loading module user …
user loaded successfully.
Activating Jumpstart Plugins
Loading module crypto …
crypto loaded successfully.
Loading module vsanapi …
vsanapi loaded successfully.
Loading module vsanbase …
vsanbase loaded successfully.
Loading module vprobe …
vprobe loaded successfully.
Loading module vmkapi_mgmt …
vmkapi_mgmt loaded successfully.
Loading module procfs …
procfs loaded successfully.
Loading module vmkapi_v2_2_0_0_mgmt_shim …
vmkapi_v2_2_0_0_mgmt_shim loaded successfully.
Loading module vmkapi_v2_3_0_0_mgmt_shim …
vmkapi_v2_3_0_0_mgmt_shim loaded successfully.
Loading module vmkapi_v2_1_0_0_vmkernel_shim …
vmkapi_v2_1_0_0_vmkernel_shim loaded successfully.
Loading module iodm …
iodm loaded successfully.
Loading module vmkapi_v2_3_0_0_vmkernel_shim …
vmkapi_v2_3_0_0_vmkernel_shim loaded successfully.
Loading module vmkapi_v2_2_0_0_vmkernel_shim …
vmkapi_v2_2_0_0_vmkernel_shim loaded successfully.
Loading module igbn …
igbn loaded successfully.
Loading module iscsi_trans …
iscsi_trans loaded successfully.
Loading module iscsi_trans_compat_shim …
iscsi_trans_compat_shim loaded successfully.
Loading module vmkapi_v2_3_0_0_vmklinux_shim …
vmkapi_v2_3_0_0_vmklinux_shim loaded successfully.
Loading module vmkplexer …
vmkplexer loaded successfully.
Loading module vmklinux_9 …
vmklinux_9 loaded successfully.
Loading module vmkusb …
vmkusb loaded successfully.
VMware ESXi 6.5.0 [Releasebuild-4887370 x86_64]
FAILED TO MEM_MAP PCI BAR 0
cr0=0x80010031 cr2=0x4453600 cr3=0x114128000 cr4=0x40768
*PCPU3:65904/vmkdevmgr
PCPU 0: SSSU
Code start: 0x418000000000 VMK uptime: 0:00:01:26.275
0x4390cb81b1c0:[0x4180000ec611]PanicvPanicInt@vmkernel#nover+0x545 stack: 0x4180000ec611
~0x4390cb81b260:[0x4180000ec9a7]Panic_vPanic@vmkernel#nover+0x23 stack: 0x43043211c2c0
~0x4390cb81b280:[0x4180001005e1]vmk_PanicWithModuleID@vmkernel#nover+0x41 stack: 0x4390cb81b2e0
~0x4390cb81b2e0:[0x41800097d918]pcidrv_alloc_resource@(vmkusb)#+0x410 stack: 0x97a436
~0x4390cb81b3e0:[0x41800097843b]bus_alloc_resource@(vmkusb)#+0x67 stack: 0x4
~0x4390cb81b440:[0x418000954763]xhci_pci_attach@(vmkusb)#+0x83 stack: 0x1000000000
~0x4390cb81b4a0:[0x41800097bb53]device_attach@(vmkusb)#+0x23 stack: 0x0
0x4390cb81b4c0:[0x418000962d9e]USBDeviceAttach@(vmkusb)#+0x106 stack: 0x15
~0x4390cb81b4f0:[0x418000020584]Driver_AnnounceDevice@vmkernel#nover+0xfc stack: 0x430200000015
~0x4390cb81b560:[0x41800001e34c]DeviceBind@vmkernel#nover+0x15c stack: 0xbad0007
0x4390cb81b5a0:[0x41800001f13e]DeviceVSIBind@vmkernel#nover+0xc2 stack: 0x0
0x4390cb81b5d0:[0x418000001f95]VSI_SetInfo@vmkernel#nover+0x369 stack: 0x4390cb81b6b0
~0x4390cb81b650:[0x418000716df4]UWVMKSyscallUnpackVSI_Set@(user)#+0x308 stack: 0x0
~0x4390cb81bef0:[0x41800070a270]User_UWVMKSyscallHandler@(user)#+0xa4 stack: 0xffea5788
~0x4390cb81bf20:[0x41800010e941]User_UWVMKSyscallHandler@vmkernel#nover+0x1d stack: 0x0
~0x4390cb81bf30:[0x41800013c044]gate_entry_@vmkernel#nover+0x0 stack: 0x0
base fs=0x0 gs=0x418040c00000 Kgs=0x0
No place on disk to dump data.
No file configured to dump data.
No vsan object configured to dump data.
No port for remote debugger.
Ich bin auf der Suche nach einer Lösung den ESXi Installer über I-PXE auf der APU2 zu starten. Hat hierzu schon jemand Erfahrungen?
Beste Grüße