← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1763766] Re: nova needs to disallow resource consumption changes on image rebuild

 

Reviewed:  https://review.opendev.org/687957
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=6f5358ac1992b17b7f3f99d9a32290e0d4740dae
Submitter: Zuul
Branch:    master

commit 6f5358ac1992b17b7f3f99d9a32290e0d4740dae
Author: Sean Mooney <work@xxxxxxxxxxxxxxx>
Date:   Thu Oct 10 18:00:07 2019 +0100

    Block rebuild when NUMA topology changed
    
    If the image change during a rebuild it's possible for the request
    NUMA topology to change. As a rebuild uses a noop claim in the
    resource tracker the NUMA topology will not be updated as part of
    a rebuild.
    
    If the NUMA constraints do not change, a rebuild will continue as normal.
    If the new constraints conflict with the existing NUMA constraints of the
    instance the rebuild will be rejected without altering the status of the
    instance.
    
    This change introduces an API check to block rebuild when the NUMA
    requirements for the new image do not match the existing NUMA constraints.
    This is in line with the previous check introduced to prevent the rebuild of
    volume-backed instances which similarly are not supported.
    
    This change adds functional tests to assert the expected behaviour of
    rebuilding NUMA instances with new images. This change also asserts that
    in place rebuilds of numa instances is currently not supported.
    
    Closes-Bug: #1763766
    Partial-implements: blueprint inplace-rebuild-of-numa-instances
    Change-Id: I0322d872bdff68936033a6f5a54e8296a6fb3434


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

Title:
  nova needs to disallow resource consumption changes on image rebuild

Status in OpenStack Compute (nova):
  Fix Released
Status in OpenStack Compute (nova) ocata series:
  Confirmed
Status in OpenStack Compute (nova) pike series:
  Confirmed
Status in OpenStack Compute (nova) queens series:
  Confirmed

Bug description:
  When doing a rebuild the assumption throughout the code is that we are
  not changing the resources consumed by the guest (that is what a
  resize is for).  The complication here is that there are a number of
  image properties which might affect the instance resource consumption
  (in conjunction with a suitable flavor):

  hw_numa_nodes=X
  hw_numa_cpus.X=Y
  hw_numa_mem.X=Y
  hw_mem_page_size=X
  hw_cpu_thread_policy=X
  hw_cpu_policy=X

  Due to the assumptions made in the rest of the code, we need to add a
  check to ensure that on a rebuild the above image properties do not
  differ between the old and new images.

  
  While they might look suspicious, I think that the following image properties *should* be allowed to differ, since they only affect the topology seen by the guest:

  hw_cpu_threads
  hw_cpu_cores
  hw_cpu_sockets
  hw_cpu_max_threads
  hw_cpu_max_cores
  hw_cpu_max_sockets
  hw_cpu_realtime_mask

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


References