The Compute -> Access & Security -> Floating IPs tab should provide the Associate button for FIPs that are already associated. The nova CLI allows a user to associate an already associated FIP, with the behavior being that the FIP is transferred from one VM to another.
$ openstack --debug ip floating add [Already associated IP] [VM to reassign the FIP to]
....
REQ: curl -g -i -X POST https://nova-api.example.com/v2/[project ID]/servers/[Instance ID]/action -H "User-Agent: python-novaclient" -H "Content-Type: application/json" -H "Accept: application/json" -H "X-Auth-Token: {SHA1} [token hash]" -d '{"addFloatingIp": {"address": "[IP address]"}}'
"POST /v2/[project ID]/servers/[Instance ID]/action HTTP/1.1" 202 0
....
The single API call to nova associates the IP with the new VM and disassociates it from the old VM. The CLI behavior is especially useful for service IP's, where switching an IP from one VM to another quickly is important.
Change abandoned by Rob Cresswell (<email address hidden>) on branch: master /review. openstack. org/283223
Review: https:/
Reason: Abandoned due to inactivity. Feel free to restore if you get time to work on it