need to update rabbit_hosts on non-controller nodes after deploying controllers
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Fuel for OpenStack |
Fix Committed
|
High
|
Dima Shulyak |
Bug Description
rabbit_hosts will be a list of controllers at deployment time of that role
so if I deploy one controller in HA mode, there will only be one item in it
if i deploy 3 controllers, it will have 3 items in it
but if i deploy computes when there is only one controller
and then add more controllers later
and the compute role (or rabbit_hosts its self) isn't updated later, then it will still have the first controller in the list.
this is equally true when a single controller might be replaced.
this is fine for controllers, because all controllers re-run puppet controller role when a single controller role is deployed.
however, this isn't ok for roles like computes which will have an old list of controllers
this could be solved by running the compute role again, or just running a short manifest like for /etc/hosts via astute
for computes we need to ensure that we update neutron.conf and nova.conf and restart neutron-ovs-agent and nova-compute. Maybe others too
We need to check if other roles need this aswell
More info in the IRC conversation: http://
Set High priority as it affects operations story. I believe we should have test for it. Can be easily checked by the following:
Lightweight test, can be considered as extension to HA-scale up test:
1) Run HA deployment with one controller
2) Add one/two more controllers, deploy
3) Check rabbit_hosts in compute config file, it must have >1 IP address in the list (2 or 3, depends how many controllers finally in env)
Heavy test, but can handle more issues:
1) Run HA deployment with one controller and one compute, run OSTF
2) Add two more controllers, run OSTF
3) Destroy first(initial) controller, run OSTF.
OSTF should pass in all 3 steps. It won't in step #3 at the current moment without redeployment of compute nodes on every controller-add.