[available-zone]az cachee in process make mistake
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Expired
|
Undecided
|
Unassigned |
Bug Description
Description
===========
when getting in instance's detail info, AZ info is wrong
Steps to reproduce
==================
1.
in nova.conf, set memcached_servers = None
2.current az info:
nova aggregate-list
Id name Availability Zone
1 cas1-agg cas1
modifiy az info:
nova aggregate-update 1 cas1-agg cas2
3.get instance az info:
nova show ID
Expected result
===============
AZ info is cas2
Actual result
=============
AZ info is not stable.sometimes AZ is cas1, sometimes is cas2
Reason
===============
nova-api is multi-processing. When setting memcache server to none, nova-api will cache az in process memory. But nova-api processes caches are not consistent.
So I suggest nova-api does not cache az info in process memory.
Related file is nova/openstack/
Related class is Client.
Changed in nova: | |
assignee: | nobody → xhzhf (guoyongxhzhf) |
Changed in nova: | |
assignee: | xhzhf (guoyongxhzhf) → nobody |
1. which version of your openstack environment?
2. The memcached_servers option has deprecated in Mitaka for compute, So in my master branch of openstack after Newton the relation options is
[cache]
enabled=False
3.The result follow your step doesn't match your description.The az option of instance detail and the az info of the aggregate is same.
4.But when i follow the step , the result occurs again:
1) nova az list----> internal / nova
2) nova aggregate-create agg nova1
3) nova aggregate-add-host agg <hostname> a VM running on the <hostname>
4) nova show <vmname> focused on the az option of vm
Excepted result
===============
vm az info alway nova1
Actual result
===============
AZ info of vm is not stable, sometime is nova, sometime is nova1
I think your <Reason> description is right for above steps.