← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1379451] [NEW] anti-affinity policy only honored on boot

 

Public bug reported:

If you create a server group with an anti-affinity policy, it is only
honored during the initial boot.  If you do a cold migrate, live
migrate, or evacuate where the scheduler is picking the destination, it
seems reasonable to expect that the scheduler will continue to honor
that policy.  However, it does not.

The reason for this has to do with an implementation optimization in the
scheduler.  It skips all of the group checking if the 'group' hint is
not present.  Since scheduler hints are only kept around for the initial
boot, this doesn't work.  One solution would be to persist scheduler
hints.  However, a shorter term fix specifically for server groups is to
always check the database for group membership when the server group
filters are enabled.

** Affects: nova
     Importance: Medium
     Assignee: Russell Bryant (russellb)
         Status: Confirmed

** Affects: nova/icehouse
     Importance: Undecided
         Status: New

** Affects: nova/juno
     Importance: Undecided
         Status: New

** Changed in: nova
     Assignee: (unassigned) => Russell Bryant (russellb)

** Changed in: nova
       Status: New => Confirmed

** Changed in: nova
   Importance: Undecided => Medium

** Also affects: nova/icehouse
   Importance: Undecided
       Status: New

** Also affects: nova/juno
   Importance: Undecided
       Status: New

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

Title:
  anti-affinity policy only honored on boot

Status in OpenStack Compute (Nova):
  Confirmed
Status in OpenStack Compute (nova) icehouse series:
  New
Status in OpenStack Compute (nova) juno series:
  New

Bug description:
  If you create a server group with an anti-affinity policy, it is only
  honored during the initial boot.  If you do a cold migrate, live
  migrate, or evacuate where the scheduler is picking the destination,
  it seems reasonable to expect that the scheduler will continue to
  honor that policy.  However, it does not.

  The reason for this has to do with an implementation optimization in
  the scheduler.  It skips all of the group checking if the 'group' hint
  is not present.  Since scheduler hints are only kept around for the
  initial boot, this doesn't work.  One solution would be to persist
  scheduler hints.  However, a shorter term fix specifically for server
  groups is to always check the database for group membership when the
  server group filters are enabled.

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


Follow ups

References