disk_available_least value updates when instance moved but not to the value expected
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Expired
|
Undecided
|
Unassigned |
Bug Description
Brief Description
-----------------
Originating host updates disk_available_
But the value is not what was expected.
nova/test_
Severity
--------
standard
Steps to Reproduce
------------------
1. Create a flavor flavor-3 with disk size 7
(7f392fd5-
--vcpus=1 --ephemeral=0 --swap=0 --ram=1024 --disk=7 flavor-3 hw:mem_page_size': '2048
Boot instance using flavor-3
Instance a61b7899-
see nova compute.log
{"log":"2019-06-27 17:33:59.078 2813101 INFO nova.compute.claims [req-3da9ec9b-
3. Create another flavor-4 to occupy vcpus that remain on the same host (flavor-4 53ae6df0-
--vcpus=21 --ram=1024 --disk=2 flavor-4 hw:mem_page_size': '2048'
Boot the instance with this flavor to occupy the remaining vcpus on the same host (compute-2 in this case)
see nova-compute.log
{"log":"2019-06-27 17:34:47.111 2813101 INFO nova.compute.claims [req-c0b7716e-
@ [2019-06-27 17:34:44,124]
--poll --flavor=
5. Check disk_available_
openstack hypervisor show on compute-2
disk_available_
6. Create another flavor (a resize target flavor)
flavor-5 (6f682e05-
--vcpus=2 --ephemeral=0 --swap=0 --ram=1024 --disk=7 flavor-5
Resize the instance to flavor-5 and confirm the instance is moved to a different host (resized off of compute-2)
Resizing VM a61b7899-
The instance instance-00000011 is now running on compute-3 with flavor-5 (with disk size 7)
| OS-EXT-
| OS-EXT-
7. Run openstack hypervisor show on compute-2 to confirm the disk_available_
$ openstack hypervisor show compute-2
disk_available_
| disk_available_
Expected Behavior
------------------
Expected disk_available_
339 (compute-2 disk_available_
+ 7 (disk size of instance that moved away)
= 346 (give or take 1)
Actual Behavior
----------------
---This testcase failed as disk_available_
ie. the actual disk_available actually updated on the VM originating host to 344 ie. change of difference of 5 (as opposed to 7)
339 (compute-2 disk_available_
+ 5 (disk size of instance that moved away)
=344
see nfv-vim.log
2019-06-
...
2019-06-
...
2019-06-
compute.log on compute-3
"log":"2019-06-27 17:35:34.056 3011232 INFO nova.compute.claims [req-92ca6582-
...
{"log":"2019-06-27 17:35:34.064 3011232 INFO nova.compute.claims [req-92ca6582-
Reproducibility
---------------
yes
System Configuration
-------
storage
(Lab: PV-0 nova/test_
Branch/Pull Time/Commit
-------
Load: 20190620T013000Z
Job: STX_build_
Potential duplicate bugs:
- bug 1517442
- bug 1577642 (already from windriver)
Also, there is a periodic task in the compute service (update_ available_ resource) which by default runs every ~60 seconds. If you waited a minute or so in your test did you notice that the disk_available_ least was changed to the expected value?