← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1321872] [NEW] Resize/migrate stopped instance fails with Neutron event timeout

 

Public bug reported:

I originally thought this was bug 1306342 but that's a different issue,
that was when not having neutron configured properly for calling back to
nova and nova would timeout on spawn waiting for a notification from
neutron that networking was setup.

This is a different issue where resize/migrate fails if you started from
a stopped instance and using neutron.  In this case, the
_create_domain_and_network method in the libvirt driver passes in
power_on=False since the instance was stopped before the
resize/migration.  The virtual interface isn't plugged in that case so
we're waiting on a neutron event that's not going to happen, and we hit
the eventlet timeout which then tries to destroy the non-running domain,
and that fails with a libvirtError telling you that the domain isn't
running in the first place.

The fix is to check the power_on flag in _create_domain_and_network and
if it's False, don't wait for neutron events, same as if
vifs_already_plugged=False is passed in.

** Affects: nova
     Importance: Undecided
     Assignee: Matt Riedemann (mriedem)
         Status: In Progress


** Tags: libvirt migration network neutron resize

** Changed in: nova
       Status: New => In Progress

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

Title:
  Resize/migrate stopped instance fails with Neutron event timeout

Status in OpenStack Compute (Nova):
  In Progress

Bug description:
  I originally thought this was bug 1306342 but that's a different
  issue, that was when not having neutron configured properly for
  calling back to nova and nova would timeout on spawn waiting for a
  notification from neutron that networking was setup.

  This is a different issue where resize/migrate fails if you started
  from a stopped instance and using neutron.  In this case, the
  _create_domain_and_network method in the libvirt driver passes in
  power_on=False since the instance was stopped before the
  resize/migration.  The virtual interface isn't plugged in that case so
  we're waiting on a neutron event that's not going to happen, and we
  hit the eventlet timeout which then tries to destroy the non-running
  domain, and that fails with a libvirtError telling you that the domain
  isn't running in the first place.

  The fix is to check the power_on flag in _create_domain_and_network
  and if it's False, don't wait for neutron events, same as if
  vifs_already_plugged=False is passed in.

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


Follow ups

References