← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1530010] Re: Rescued instance failed to boot from cirros image

 

Honestly, I don't think that rescue booting a split image is really very
common, and not something we need to support. If someone wants to
specify a doc fix for this, it's fine.

** Changed in: nova
       Status: New => Won't Fix

-- 
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/1530010

Title:
  Rescued instance failed to boot from cirros image

Status in OpenStack Compute (nova):
  Won't Fix

Bug description:
  Steps: 
  1 boot a centos instance
  2 nova rescue centos --image=cirros
  3 check centos instance status "no bootable instance"

  Root cause is:
  $ glance image-show ccefc63d-6eb7-486e-b3a2-e63f09fb9e5d
  +------------------+--------------------------------------+
  | Property         | Value                                |
  +------------------+--------------------------------------+
  | checksum         | eb9139e4942121f22bbc2afc0400b2a4     |
  | container_format | ami                                  |
  | created_at       | 2015-11-23T11:38:12Z                 |
  | disk_format      | ami                                  |
  | id               | ccefc63d-6eb7-486e-b3a2-e63f09fb9e5d |
  | kernel_id        | e6eb027f-55a5-465e-9fce-5ebdb3d13d0a | <<<<<<<
  | min_disk         | 0                                    |
  | min_ram          | 0                                    |
  | name             | cirros-0.3.4-x86_64-uec              |
  | owner            | e62253640b9c478f9c15c97e6ca40cb4     |
  | protected        | False                                |
  | ramdisk_id       | 6425cc10-eaff-4f35-bd6e-941a3b439878 | <<<<<<<
  | size             | 25165824                             |
  | status           | active                               |
  | tags             | []                                   |
  | updated_at       | 2015-11-23T11:38:13Z                 |
  | virtual_size     | None                                 |
  | visibility       | public                               |
  +------------------+--------------------------------------+

  cirros image needs to boot from kernel file and initrd file.

  I debuged the rescue process, image_meta = 
  {'status': u'active', 'name': u'cirros-0.3.4-x86_64-uec', 'deleted': False, 'container_format': u'ami', 'created_at': datetime.datetime(2015, 11, 23, 11, 38, 12, tzinfo=<iso8601.Utc>), 'disk_format': u'ami', 'updated_at': datetime.datetime(2015, 11, 23, 11, 38, 13, tzinfo=<iso8601.Utc>), 'id': u'ccefc63d-6eb7-486e-b3a2-e63f09fb9e5d', 'owner': u'e62253640b9c478f9c15c97e6ca40cb4', 'min_ram': 0, 'checksum': u'eb9139e4942121f22bbc2afc0400b2a4', 'min_disk': 0, 'is_public': True, 'deleted_at': None, 'properties': {u'kernel_id': u'e6eb027f-55a5-465e-9fce-5ebdb3d13d0a', u'ramdisk_id': u'6425cc10-eaff-4f35-bd6e-941a3b439878'}, 'size': 25165824}

  But check libvirt driver, we don't populate kernel_id and ramdisk_id
  from image_meta.

          rescue_image_id = None
          if image_meta is not None:
              image_meta = objects.ImageMeta.from_dict(image_meta)
              if image_meta.obj_attr_is_set("id"):
                  rescue_image_id = image_meta.id

  To fix it, grab kernel_id and ramdisk_id from image_meta

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


References