Octavia should delete removed units from ovn sb db
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Octavia Charm |
New
|
Undecided
|
Unassigned |
Bug Description
I removed an octavia unit and added a new unit. Both old and new units were lxd containers on the same host.
After this, my healthmanager ports in neutron would never show as healthy/up for the new unit.
On the ovn-central leader I couldn't find the new unit's hostname but saw the old unit's hostname in:
sudo ovn-sbctl show
I removed the old unit's hostname:
sudo ovs-sbctl chassis-del <hostname>
And immediately the new unit's hostname showed up. I don't recall if I had to do anything after that (perhaps I re-ran a hook on the new unit?) but after this the healthmanager port's IP was ping-able. The port is still listed as DOWN but it is functional.
I believe when removing the octavia unit (or maybe the octavia-ovn-chassis subordinate?) the chassis should removed from the southbound database. This would prevent the old hostname/ip from blocking the new host entry.
My deployment is focal-ussuri with the following charm versions:
octavia 6.2.1 active 3 octavia charmstore stable 39 ubuntu Unit is ready
octavia-ovn-chassis 20.03.2 active 3 ovn-chassis charmstore stable 21 ubuntu Unit is ready
ovn-central 20.03.2 active 3 ovn-central charmstore stable 16 ubuntu Unit is ready (leader: ovnnb_db, ovnsb_db northd: active)
Perhaps this should be filed under ovn-central or ovn-chassis but it seems like something octavia should be responsible for.