On 12/3/21 10:41 PM, Julia Kreger wrote:
Extreme magic - OpenStack Edition. At least that feels like the answer.
In essence, we create VMs. We attach them to the network, then configure virtualbmc or sushy-tools to play the role of a BMC and one of the things that library understand is the giant switch of "boot to network". From there we ipxe boot. The VMs play the role of baremetal machines through the emulation of the BMC and they are just hooked up to the network.
This does require the job to use root privileges to setup networking/vms. And the virtualbmc or sushy-tools service needs enough rights to toggle the VM's config. Would be happy to try and discuss specifics of the devstack plugin, but I'm unsure if that would really help. Regardless, you know where to find us. :)
As an aside, when I first read the post I was thinking of booting from ISO images. I've known people to embed ipxe into disk images, and you can embed static config/instructions for booting into an ipxe binary. It does require custom binary builds, but it might make what you're trying to achieve easier.
Hi Julia! Thanks for your answer. Well, I've read multiple times your reply, but I have to admit I still don't get all the details. For example, how would you "embed ipxe into disk images" for example? Should I for example run the iPXE binary from something like syslinux (or grub?)? But isn't iPXE usually running *after* the BIOS of a PC gets an IP from DHCP? I've just read a post where someone boots the iPXE binary from Grub, so that part shouldn't be hard: format a disk, make a ext4 partition, put the iPXE binary there, and tell grub to execute it. Is that all?!? Cheers, Thomas Goirand (zigo) P.S: I do have some knowledge on how to prepare disk images. After all, I've maintained the Debian OpenStack images for 3 Debian releases. So I probably just need a few pointers...