mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
bug 12719:When restartNetwork() is called ,IpAssocCommand() is called for the public ipaddresses that are owned by Netscaler
This commit is contained in:
parent
f259fec471
commit
df21338b08
@ -662,11 +662,32 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag
|
||||
for (NetworkElement element : _networkElements) {
|
||||
try {
|
||||
if (element instanceof FirewallServiceProvider && element instanceof LoadBalancingServiceProvider) {
|
||||
List<PublicIp> allIps = new ArrayList<PublicIp>();
|
||||
List<PublicIp> allIps = new ArrayList<PublicIp>();
|
||||
NetworkOfferingVO offering = _networkOfferingDao.findById(network.getNetworkOfferingId());
|
||||
|
||||
//get the Provider for the LB Service for the offering of the network
|
||||
//FIXME - in post 3.0 we are going to support multiple providers for the same service per network offering
|
||||
List<String> providers = _ntwkOfferingSrvcDao.listProvidersForServiceForNetworkOffering(offering.getId(), Service.Lb);
|
||||
String lbProvider = providers.get(0);
|
||||
|
||||
//get the Provider for the LB Service for the offering of the network
|
||||
//FIXME - in post 3.0 we are going to support multiple providers for the same service per network offering
|
||||
providers = _ntwkOfferingSrvcDao.listProvidersForServiceForNetworkOffering(offering.getId(), Service.Firewall);
|
||||
String fwProvider = providers.get(0);
|
||||
|
||||
if (lbProvider.equalsIgnoreCase(element.getProvider().getName()) && fwProvider.equalsIgnoreCase(element.getProvider().getName())) {
|
||||
allIps.addAll(firewallPublicIps);
|
||||
allIps.addAll(loadbalncerPublicIps);
|
||||
FirewallServiceProvider fwProvider = (FirewallServiceProvider)element;
|
||||
fwProvider.applyIps(network, allIps);
|
||||
} else if (fwProvider.equalsIgnoreCase(element.getProvider().getName())) {
|
||||
allIps.addAll(firewallPublicIps);
|
||||
} else if (lbProvider.equalsIgnoreCase(element.getProvider().getName())) {
|
||||
allIps.addAll(loadbalncerPublicIps);
|
||||
} else {
|
||||
continue;
|
||||
}
|
||||
|
||||
FirewallServiceProvider fwElement = (FirewallServiceProvider)element;
|
||||
fwElement.applyIps(network, allIps);
|
||||
} else if (element instanceof FirewallServiceProvider) {
|
||||
FirewallServiceProvider fwProvider = (FirewallServiceProvider)element;
|
||||
fwProvider.applyIps(network, firewallPublicIps);
|
||||
|
||||
@ -1758,11 +1758,6 @@ public class VirtualNetworkApplianceManagerImpl implements VirtualNetworkApplian
|
||||
|
||||
if (!publicIps.isEmpty()) {
|
||||
|
||||
// Re-apply public ip addresses - should come before PF/LB/VPN
|
||||
if (_networkMgr.isProviderSupportServiceInNetwork(router.getNetworkId(), Service.Firewall, provider)) {
|
||||
createAssociateIPCommands(router, publicIps, cmds, 0);
|
||||
}
|
||||
|
||||
List<RemoteAccessVpn> vpns = new ArrayList<RemoteAccessVpn>();
|
||||
List<PortForwardingRule> pfRules = new ArrayList<PortForwardingRule>();
|
||||
List<FirewallRule> staticNatFirewallRules = new ArrayList<FirewallRule>();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user