← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1585214] [NEW] Cannot pin/unpin cpus during cold migration with enabled CPU pinning

 

Public bug reported:

With enabled cpu pinning for vm migration doesn't work properly

Steps to reproduce:
1) Deploy env with 2 compute node with enable pinning
2) Create aggregate states for this compute-node
3) Create 3 flavors:
- flavor with 2 cpu and 2 numa node
nova flavor-create m1.small.performance-2 auto 2048 20 2
nova flavor-key m1.small.performance-2 set hw:cpu_policy=dedicated
nova flavor-key m1.small.performance-2 set aggregate_instance_extra_specs:pinned=true
nova flavor-key m1.small.performance-2 set hw:numa_nodes=2
nova boot --image TestVM --nic net-id=93e25766-2a22-486c-af82-c62054260c26 --flavor m1.small.performance-2 test2
- flavor with 2 cpu and 1 numa node
nova flavor-create m1.small.performance-1 auto 2048 20 2
nova flavor-key m1.small.performance-1 set hw:cpu_policy=dedicated
nova flavor-key m1.small.performance-1 set aggregate_instance_extra_specs:pinned=true
nova flavor-key m1.small.performance-1 set hw:numa_nodes=1
nova boot --image TestVM --nic net-id=93e25766-2a22-486c-af82-c62054260c26 --flavor m1.small.performance-1 test3
- flavor with 1 cpu and 1 numa node
nova flavor-create m1.small.performance auto 512 1 1
nova flavor-key m1.small.performance set hw:cpu_policy=dedicated
nova flavor-key m1.small.performance set aggregate_instance_extra_specs:pinned=true
nova flavor-key m1.small.performance set hw:numa_nodes=1
4) boot vm1, vm2 and vm3 with this flavors
5) Migrate vm1: nova migrate vm1
Confirm resizing: nova resize-confirm vm1
Expected results:
vm1 migrate to another node
Actual resilts:
vm1 in ERROR
{"message": "Cannot pin/unpin cpus [17] from the following pinned set [3]", "code": 400, "created": "2016-03-31T09:26:00Z"} |
6) Migrate vm2: nova migrate vm2
Confirm resizing: nova resize-confirm vm2
Repeat one more time migration and confirmin
Expected results:
vm1 migrate to another node
Actual resilts:
vm1 in ERROR
6) nova migrate vm3 for 3 time
the same


It happening because confirm_resize() tries to clean up source host using NUMA topology from destination host.

** Affects: nova
     Importance: Medium
     Assignee: Sergey Nikitin (snikitin)
         Status: Triaged

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

Title:
  Cannot pin/unpin cpus during cold migration with enabled CPU pinning

Status in OpenStack Compute (nova):
  Triaged

Bug description:
  With enabled cpu pinning for vm migration doesn't work properly

  Steps to reproduce:
  1) Deploy env with 2 compute node with enable pinning
  2) Create aggregate states for this compute-node
  3) Create 3 flavors:
  - flavor with 2 cpu and 2 numa node
  nova flavor-create m1.small.performance-2 auto 2048 20 2
  nova flavor-key m1.small.performance-2 set hw:cpu_policy=dedicated
  nova flavor-key m1.small.performance-2 set aggregate_instance_extra_specs:pinned=true
  nova flavor-key m1.small.performance-2 set hw:numa_nodes=2
  nova boot --image TestVM --nic net-id=93e25766-2a22-486c-af82-c62054260c26 --flavor m1.small.performance-2 test2
  - flavor with 2 cpu and 1 numa node
  nova flavor-create m1.small.performance-1 auto 2048 20 2
  nova flavor-key m1.small.performance-1 set hw:cpu_policy=dedicated
  nova flavor-key m1.small.performance-1 set aggregate_instance_extra_specs:pinned=true
  nova flavor-key m1.small.performance-1 set hw:numa_nodes=1
  nova boot --image TestVM --nic net-id=93e25766-2a22-486c-af82-c62054260c26 --flavor m1.small.performance-1 test3
  - flavor with 1 cpu and 1 numa node
  nova flavor-create m1.small.performance auto 512 1 1
  nova flavor-key m1.small.performance set hw:cpu_policy=dedicated
  nova flavor-key m1.small.performance set aggregate_instance_extra_specs:pinned=true
  nova flavor-key m1.small.performance set hw:numa_nodes=1
  4) boot vm1, vm2 and vm3 with this flavors
  5) Migrate vm1: nova migrate vm1
  Confirm resizing: nova resize-confirm vm1
  Expected results:
  vm1 migrate to another node
  Actual resilts:
  vm1 in ERROR
  {"message": "Cannot pin/unpin cpus [17] from the following pinned set [3]", "code": 400, "created": "2016-03-31T09:26:00Z"} |
  6) Migrate vm2: nova migrate vm2
  Confirm resizing: nova resize-confirm vm2
  Repeat one more time migration and confirmin
  Expected results:
  vm1 migrate to another node
  Actual resilts:
  vm1 in ERROR
  6) nova migrate vm3 for 3 time
  the same

  
  It happening because confirm_resize() tries to clean up source host using NUMA topology from destination host.

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


Follow ups