Bug #9348
openFloating IP "leak"
Description
On creation of a new host in the OpenStack compute resource, Foreman:
- Ignores floating IPs which are allocated but not associated with any instance.
- Always allocates a new Floating IP from the pool.
When a host is deleted, Foreman:
- dissociates the floating IP from the deleted host (or perhaps this happens automatically in OpenStack)
- fails to release the floating IP back to the pool.
I think the correct behavior should be that foreman uses preallocated floating IPs if any are available, then should attempt to allocate one if required. Alternatively, Foreman could release the floating IP back to the pool when it deletes a host. The situation as it stands is akin to a memory leak, but with floating IPs.
Updated by Bryce Nordgren almost 10 years ago
Note also that "rolling back" a failed provision also does not release the floating IP into the pool.
Updated by Steve D over 9 years ago
Noticing the same issue.
I'm consuming openstack resources available from a university, and they have quotas in place. With the floating IP quota I can request floating IP's up to the max quota amount and 'own' them indefinitely (useful for crafting firewall rules on external systems).
Currently foreman is only requesting new floating IP's from the pool so once I've hit my quota I cannot launch a vm using a compute profile listing a 'Floating IP network', I need to leave this field blank and manually add the floating IP after provisioning.
It would be great if there was a drop down under the networking tab on host provisioning that showed available IP's I've already reserved that I can select for the new VM, as well as an option to 'select from pool'. Bryce's logic of using a free reserved floating IP first could also be an option in the dropdown list (or a checkbox on the right/global setting).