← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1755890] Re: Instances fail to hard reboot when using OpenDaylight

 

Reviewed:  https://review.openstack.org/553035
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=ed3e27afb4ca7b36baab3b8008a727caa43e1e3b
Submitter: Zuul
Branch:    master

commit ed3e27afb4ca7b36baab3b8008a727caa43e1e3b
Author: Mohammed Naser <mnaser@xxxxxxxxxxxx>
Date:   Wed Mar 14 20:03:47 2018 +0000

    Revert "Refine waiting for vif plug events during _hard_reboot"
    
    This reverts commit aaf37a26d6caa124f0cc6c3fe21bfdf58ccb8517.
    
    This gets us back to Ib0cf5d55750f13d0499a570f14024dca551ed4d4
    which was meant to address an issue introduced
    by Id188d48609f3d22d14e16c7f6114291d547a8986.
    
    So we essentially had three changes:
    
    1. Hard reboot would blow away volumes and vifs and then wait for the
       vifs to be plugged; this caused a problem for some vif types (
       linuxbridge was reported) because the event never came and we
       timed out.
    
    2. To workaround that, a second change was made to simply not wait for
       vif plugging events.
    
    3. Since #2 was a bit heavy-handed for a problem that didn't impact
       openvswitch, another change was made to only wait for non-bridge vif
       types, so we'd wait for OVS.
    
    But it turns out that opendaylight is an OVS vif type and doesn't send
    events for plugging the vif, only for binding the port (and we don't
    re-bind the port during reboot). There is also a report of this being a
    problem for other types of ports, see
    If209f77cff2de00f694b01b2507c633ec3882c82.
    
    So rather than try to special-case every possible vif type that could
    be impacted by this, we are simply reverting the change so we no longer
    wait for vif plugged events during hard reboot.
    
    Note that if we went back to Id188d48609f3d22d14e16c7f6114291d547a8986
    and tweaked that to not unplug/plug the vifs we wouldn't have this
    problem either, and that change was really meant to deal with an
    encrypted volume issue on reboot. But changing that logic is out of the
    scope of this change. Alternatively, we could re-bind the port during
    reboot but that could have other implications, or neutron could put
    something into the port details telling us which vifs will send events
    and which won't, but again that's all outside of the scope of this
    patch.
    
    Change-Id: Ib3f10706a7191c58909ec1938042ce338df4d499
    Closes-Bug: #1755890


** 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/1755890

Title:
  Instances fail to hard reboot when using OpenDaylight

Status in OpenStack Compute (nova):
  Fix Released

Bug description:
  When using OpenDaylight with Open vSwitch, the Neutron Open vSwitch
  agent does not exist in the environment anymore.

  When an instance is started up for the first time, OpenDaylight will
  successfully bind the port and send the vif plugged notification.
  However, since the introduction of the following patch:

  https://review.openstack.org/#/q/Ib08afad3822f2ca95cfeea18d7f4fc4cb407b4d6

  It now expects the vif plugged event to happen on hard reboots, which
  for certain environments (such as using ODL with OVS, it will not come
  in).  This results in all instance starts after the first one failing.

  Discussion:
  http://eavesdrop.openstack.org/irclogs/%23openstack-nova/%23openstack-nova.2018-03-14.log.html#t2018-03-14T18:12:48

  ODL issue:
  https://jira.opendaylight.org/projects/NETVIRT/issues/NETVIRT-512

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


References