Potentially stupid idea. How about using some variant of the netboot disk on a very small boot disk partition(sda) and then install the OS on a larger partition alocated at VM creation time. It does cause you to need 2 disks for every system and I am sure there are a few quirks I have overlooked. What about using a very small On 2025-10-21 09:45, Eugen Block wrote:
Thanks, Sean, I was kind of hoping you would chime in. ;-)
I experimented for a couple of hours now, trying to make it work as we require it (always boot VMs from network via PXE, the management server decides if it can boot from local disk or if an installation has to be initiated). And UEFI is required as well (we set hw_firmware_type=uefi for the pxe image).
One issue seems to be that if we use an uefi image, the VM boots into the EFI shell. So it's interactive which we don't want. I haven't found a way to avoid the shell and directly boot from network.
I can't tell if the mentioned patch would avoid that, is a non-interactive pxe boot feasible? Or do we need (maybe build ourselves) a custom pxe image or something like that?
The main objective of this question is automation, it's how we manage our physical server infrastructure as well. And it would be incredibly helpful to be able to rebuild parts of it in our virtual infrastructure.
Thanks! Eugen
Zitat von Sean Mooney <smooney@redhat.com>:
On 17/10/2025 15:30, Eugen Block wrote:
Why didn't we think of this?! That's a great idea! I'm gonna try that as soon as possible.
Thanks a lot!
Zitat von Harald Jensas <hjensas@redhat.com>:
Hi,
openstack-virtual baremetal carried patches[1] to enable PXE booting instances, I think the nova project declined including them back when, I do not know why ... not as far as i am awre
we have enve dicsused this a few time over the last few cycle and said fi soem actully wanto to propose a spec to upstream addtional support for pxe boot we woudl review it.
i am not aware of anyone trying to upstream those patches before.
currently there are 3 ways to pxe boot in nova
1 you can enable the qemu boot menu. if you have uefi boot enabel the ovmf uefi image supprot pxe booting the other way is to use an iso or cinder volume as you suggest below
the third ay is vis rescue
we have docs for that here https://docs.openstack.org/nova/latest/user/boot-instance-using-PXE.html
we have breiflly dcised the idea of also having a way to annotat a neuton port as a boot device to stream line the
pxe boot process.
the reason this has not been done is just that no one express interest in actually doing it.
in any case its possibel to pxe boot vms today in nova
1 interactivly via the pxe supprot in the ovmf uefi firmware
2 via using a ipxe image as an addtional disk or the root disk
3 via rescue
patches shoudl not be required but it woudl be nice if we coudl suport this more trivially if folks were actully
interested in that capablity.
Another potential solution is to use block_device_mappings and attach an iPXE image as a secondary disk and set that as boot_index: 0. I use the following when creating an instance, the "server_img.id" can be a "blank" image initially. Then the second image is an iPXE image. The result is that the instance boots into iPXE which does network boot ...
block_device_mapping = [ {'uuid': server_img.id, 'boot_index': 1, 'source_type': 'image', 'destination_type': 'volume', 'device_type': 'disk', 'volume_size': VOLUME_SIZE, 'delete_on_termination': True, }, {'uuid': ipxe_image.id, 'boot_index': 0, 'source_type': 'image', 'destination_type': 'volume', 'device_type': 'cdrom', 'disk_bus': 'sata', 'volume_size': VOLUME_SIZE, 'delete_on_termination': True, } ]
[1] https://opendev.org/openstack/openstack-virtual-baremetal/src/branch/stable/... // Harald
-- Alvin Starr || land: (647)478-6285 Netvel Inc. || home: (905)513-7688 alvin@netvel.net ||