[openstack-dev] [nova] discussion of an implementation detail for "boot from network" feature

Daniel P. Berrange berrange at redhat.com
Thu Oct 2 09:56:24 UTC 2014


On Thu, Oct 02, 2014 at 11:45:54AM +0200, Ondrej Wisniewski wrote:
> Hi all,
> 
> This is related to the following blueprint:
> https://blueprints.launchpad.net/nova/+spec/pxe-boot-instance
> 
> I would like to discuss here briefly an implementation detail and collect
> some feedback.
> 
> With this new feature, the boot option "boot from network" will be added to
> the existing options "boot from disk" and "boot from volume". The first
> approach to implement this was to define a specific IMAGE_ID_TOKEN which
> will be used to handle the "boot from network" option as a special case of
> "boot from disk" option. This is a simple solution and has the advantage of
> avoiding changes to the Nova REST API.
> 
> The second option would be to introduce the new "boot from network" option
> in the Nova REST API with all the consequences of an API change (test,
> documentation, etc).
> 
> Any thoughts on these two alternatives? This is a preliminary investigation
> in order to avoid wasting time on an implementation which would be rejected
> during review due to wrong design decisions.

When booting from the network there is potentially a choice of multiple
NICs from which todo PXE. 

With KVM you are not restricted to saying disk or network as exclusive
choices, but rather you can setup arbitrary prioritization of boot order
across devices, whether disk, nic or PCI assigned device.

So we should really consider this broader problem of boot device
prioritization not merely a PXE flag. IOW, we should extend the Nova
boot command so that the --block-device-mapping and --nic args both
allow for an integer boot priority value to be specified per device.

  bootindex=NNN

And likewise allow it to be set for PCI assigned devices.

Hypervisors that don't support such fine grained ordering, can simply
ignore anything except the device with bootindex=1.

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|



More information about the OpenStack-dev mailing list