nova-compute fails to start with existing VMs with a "cdrom"

Bug #1144756 reported by Brian J. Murrell
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
High
Davanum Srinivas (DIMS)

Bug Description

I have some pre-existing VMs on my (test) compute node. One of them has a CD-ROM device configured:

    <disk type='file' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <target dev='hdc' bus='ide'/>
      <readonly/>
      <alias name='ide0-1-0'/>
      <address type='drive' controller='0' bus='1' target='0' unit='0'/>
    </disk>

This causes LibvirtDriver.get_instance_disk_info() to fail out because path_node.get('file') for that "disk" returns None. I put a:

            if not path:
                LOG.debug(_('skipping disks with no %(path)s') %
                          locals())
                continue

after the:

            if disk_type != 'file':
                LOG.debug(_('skipping %(path)s since it looks like volume') %
                          locals())
                continue

in get_instance_disk_info() get past the issue.

Michael Still (mikal)
Changed in nova:
status: New → Triaged
importance: Undecided → High
Revision history for this message
Russell Bryant (russellb) wrote :

I think running vms via libvirt outside of nova on a compute node is outside the scope of normal and expected usage, so I think the priority should be brought down from High.

Revision history for this message
Brian J. Murrell (brian-interlinx) wrote : Re: [Bug 1144756] Re: nova-compute fails to start with existing VMs with a "cdrom"

On 13-03-05 02:56 PM, Russell Bryant wrote:
> I think running vms via libvirt outside of nova on a compute node is
> outside the scope of normal and expected usage, so I think the priority
> should be brought down from High.

The point, really, isn't that this was a VM configured outside of nova
so much as it was a valid configuration that nova simply failed to handle.

Revision history for this message
Michael Still (mikal) wrote :

When I triaged this my rationale was that having your VM break because of valid libvirt config is unexpected and therefore a big deal. I can see an argument that says that config is always managed by nova and therefore this is self inflicted, but I still think breaking is kind of a big deal.

However, if the consensus is to triage this lower I can live with that.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (master)

Fix proposed to branch: master
Review: https://review.openstack.org/24658

Changed in nova:
assignee: nobody → Davanum Srinivas (DIMS) (dims-v)
status: Triaged → In Progress
tags: added: grizzly-rc-potential
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/24658
Committed: http://github.com/openstack/nova/commit/cb369dab7184e72f24e70554828a7c4ca754d268
Submitter: Jenkins
Branch: master

commit cb369dab7184e72f24e70554828a7c4ca754d268
Author: Davanum Srinivas <email address hidden>
Date: Mon Mar 18 13:51:50 2013 -0400

    libvirt: Tolerate existing vm(s) with cdrom(s)

    When there is an existing vm with cdrom (not started by Nova), we
    should tolerate missing file attribute (just skip those)

    Fixes LP# 1144756

    Change-Id: I43d45872e2d7348801b2e54cd43651609676f372

Changed in nova:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
tags: removed: grizzly-rc-potential
Thierry Carrez (ttx)
Changed in nova:
milestone: none → grizzly-rc1
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in nova:
milestone: grizzly-rc1 → 2013.1
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (stable/folsom)

Fix proposed to branch: stable/folsom
Review: https://review.openstack.org/27803

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (stable/folsom)

Reviewed: https://review.openstack.org/27803
Committed: http://github.com/openstack/nova/commit/8068a1d18249f5b871e2df3b27b2fb7141d1cc57
Submitter: Jenkins
Branch: stable/folsom

commit 8068a1d18249f5b871e2df3b27b2fb7141d1cc57
Author: Davanum Srinivas <email address hidden>
Date: Mon Mar 18 13:51:50 2013 -0400

    libvirt: Tolerate existing vm(s) with cdrom(s)

    When there is an existing vm with cdrom (not started by Nova), we
    should tolerate missing file attribute (just skip those)

    Fixes LP# 1144756

    Change-Id: I43d45872e2d7348801b2e54cd43651609676f372
    (cherry picked from commit cb369dab7184e72f24e70554828a7c4ca754d268)

Sean Dague (sdague)
no longer affects: nova/folsom
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.