This came as a requirement from one of the clients. They are using vRA 6.2.2 where they have migrated few Deployments (vSphere VMs) from one Reservation to Other and ended up in a situation that old Reservation based Network profile which was having IP Range configured from where these set of VMs were holding IPs allocation remained as it was and at the same time same set of VMs which are now moved to new reservation from where they picked up new IPs from the local IP range of that reservation.
Simple ask from customer was to make sure that old IP Range based IPs which were allocated in the name of moved VMs should be released so those can be used by new deployments
Little research on IaaS sql DB and found a way to resolve this.
Used following select statement to see if particular VM Name is having multiple network IP allocated againsts it.
select * from staticipv4address where virtualmachineid in (select virtualmachineid from virtualmachine where virtualmachinename in (”));
if above statement returns 2 or more entries for one VM, execute following update statement to set IP address to be unallocated which is not being used.
update staticipv4address set virtualmachineid = NULL, StaticIPv4AddressState = 1 where virtualmachineid in (select virtualmachineid from virtualmachine where virtualmachinename in (”)) and IPv4Address=”;
I did make sure to keep Backup of IaaS DB in case if that’s needed.
There will not be a need of vRA service outage.