mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
network: de-associate IP address if enabling static nat fails (#3836)
Associating static NAT on IP to VM fails even though the IP is not allocated. When we try enable static NAT on second IP address to the same VM, the operation fails but the IP address is still allocated in the db and it can't be used to enable static NAT on different VM. Steps to reproduce the issue: (1) create a vpc (vpc-001) and a vpc tier (vpc-001-001) (2) create a vm (vm-001-001) in vpc-001-001 (3) acquire a public ip (ip-1) and enable static nat to vm-001-001, operation succeeds. (4) acquire a public ip (ip-2) and enable static nat to vm-001-001, operation fails but the ip is still assigned to vpc tier vpc-001-001. Note down the ip address and the id of it. (5) create another vpc tier vpc-001-002, and vm (vm-001-002) in the tier (6) enabled ip-2 static nat to vm-001-002, operation should succeed
This commit is contained in:
parent
a2a4968f51
commit
6d014fa219
@ -500,6 +500,7 @@ public class RulesManagerImpl extends ManagerBase implements RulesManager, Rules
|
||||
s_logger.debug("The ip is not associated with the VPC network id=" + networkId + ", so assigning");
|
||||
try {
|
||||
ipAddress = _ipAddrMgr.associateIPToGuestNetwork(ipId, networkId, false);
|
||||
performedIpAssoc = true;
|
||||
} catch (Exception ex) {
|
||||
s_logger.warn("Failed to associate ip id=" + ipId + " to VPC network id=" + networkId + " as " + "a part of enable static nat");
|
||||
return false;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user