← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 2054446] Re: Boot from ISO does not work

 

Reviewed:  https://review.opendev.org/c/openstack/nova/+/909611
Committed: https://opendev.org/openstack/nova/commit/96a5c21f24f6a89411d12677ae5fa75adf26ed61
Submitter: "Zuul (22348)"
Branch:    master

commit 96a5c21f24f6a89411d12677ae5fa75adf26ed61
Author: Pavlo Shchelokovskyy <shchelokovskyy@xxxxxxxxx>
Date:   Tue Feb 20 19:47:44 2024 +0000

    Fix device type when booting from ISO image
    
    Closes-Bug: #2054446
    Change-Id: Ib4cc34c30a8acf09a1ab6be89d0faa76fb6e705e


** Changed in: nova
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/2054446

Title:
  Boot from ISO does not work

Status in OpenStack Compute (nova):
  Fix Released

Bug description:
  It may be https://bugs.launchpad.net/nova/+bug/1454901 resurfacing
  again..

  Symptoms using fresh DevStack/master:

  I follow the docs https://docs.openstack.org/nova/latest/user/launch-instance-using-ISO-image.html
  and using tinycore iso for testing http://tinycorelinux.net/ (this is very small liveCD ISO) to speed up testing.

  Image is created with

  openstack image create --public --file Core-14.0.iso --disk-format iso
  Core-14.0.iso

  Then I boot the instance as usual

  openstack --os-compute-api-version 2.latest server create --image
  Core-14.0.iso --flavor cirros256 --no-network iso-test

  The instance is ACTIVE, but when I connect to it via noVNC it shows
  that it failed to boot - "No bootable device"

  The relevant part of the instance XML is

    <devices>
      <emulator>/usr/bin/qemu-system-x86_64</emulator>
      <disk type='file' device='disk'>
        <driver name='qemu' type='qcow2' cache='none'/>
        <source file='/opt/stack/data/nova/instances/0c3d31a9-7ecf-4625-9e0e-4cd89d1b76c2/disk' index='1'/>
        <backingStore type='file' index='2'>
          <format type='raw'/>
          <source file='/opt/stack/data/nova/instances/_base/b2b7eb374cc75a24d0e5ba0eca7ca9cc1e6dc7c6'/>
          <backingStore/>
        </backingStore>
        <target dev='vda' bus='virtio'/>
        <alias name='virtio-disk0'/>
        <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
      </disk>

  This is Nova/master + libvirt 8.0

  I checked the same on OpenStack Antelope - the result is the same.

  However, on OpenStack Queens (+ libvirt 4.0) the instance boots from
  the same ISO image uploaded to Glance just fine! The relevant part of
  libvirt domain XML in OpenStack Queens is

    <devices>
      <emulator>/usr/bin/kvm-spice</emulator>
      <disk type='file' device='cdrom'>
        <driver name='qemu' type='qcow2' cache='none'/>
        <source file='/var/lib/nova/instances/791cf357-02e6-4a7f-9310-25f5e79cf27d/disk'/>
        <backingStore type='file' index='1'>
          <format type='raw'/>
          <source file='/var/lib/nova/instances/_base/d646a5bfc2ce7e3926d0f368b8adb975b245cfd2'/>
          <backingStore/>
        </backingStore>
        <target dev='hda' bus='ide'/>
        <readonly/>
        <alias name='ide0-0-0'/>
        <address type='drive' controller='0' bus='0' target='0' unit='0'/>
      </disk>

  Notice the difference in disk device and target/address/alias. When I
  manually edited the XML on devstack to look like that from Queens, the
  instance booted successfully.

  This looks like a regression somewhere in Nova (libvirt driver?)

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/2054446/+subscriptions



References