@@ -2544,25 +2544,7 @@ protected void finalizeNetworkRulesForNetwork(final Commands cmds, final DomainR
25442544 }
25452545 }
25462546
2547- final List <LoadBalancerVO > lbs = _loadBalancerDao .listByNetworkIdAndScheme (guestNetworkId , Scheme .Public );
2548- final List <LoadBalancingRule > lbRules = new ArrayList <LoadBalancingRule >();
2549- if (_networkModel .isProviderSupportServiceInNetwork (guestNetworkId , Service .Lb , provider )) {
2550- // Re-apply load balancing rules
2551- for (final LoadBalancerVO lb : lbs ) {
2552- final List <LbDestination > dstList = _lbMgr .getExistingDestinations (lb .getId ());
2553- final List <LbStickinessPolicy > policyList = _lbMgr .getStickinessPolicies (lb .getId ());
2554- final List <LbHealthCheckPolicy > hcPolicyList = _lbMgr .getHealthCheckPolicies (lb .getId ());
2555- final Ip sourceIp = _networkModel .getPublicIpAddress (lb .getSourceIpAddressId ()).getAddress ();
2556- final LbSslCert sslCert = _lbMgr .getLbSslCert (lb .getId ());
2557- final LoadBalancingRule loadBalancing = new LoadBalancingRule (lb , dstList , policyList , hcPolicyList , sourceIp , sslCert , lb .getLbProtocol ());
2558- lbRules .add (loadBalancing );
2559- }
2560- }
2561-
2562- logger .debug ("Found " + lbRules .size () + " load balancing rule(s) to apply as a part of domR " + router + " start." );
2563- if (!lbRules .isEmpty ()) {
2564- _commandSetupHelper .createApplyLoadBalancingRulesCommands (lbRules , router , cmds , guestNetworkId );
2565- }
2547+ createApplyLoadBalancingRulesCommands (cmds , router , provider , guestNetworkId );
25662548 }
25672549 // Reapply dhcp and dns configuration.
25682550 final Network guestNetwork = _networkDao .findById (guestNetworkId );
@@ -2589,6 +2571,35 @@ protected void finalizeNetworkRulesForNetwork(final Commands cmds, final DomainR
25892571 }
25902572 }
25912573
2574+ private void createApplyLoadBalancingRulesCommands (final Commands cmds , final DomainRouterVO router , final Provider provider , final Long guestNetworkId ) {
2575+ if (router .getVpcId () != null ) {
2576+ return ;
2577+ }
2578+ final List <LoadBalancerVO > lbs = _loadBalancerDao .listByNetworkIdAndScheme (guestNetworkId , Scheme .Public );
2579+ final List <LoadBalancingRule > lbRules = new ArrayList <LoadBalancingRule >();
2580+ if (_networkModel .isProviderSupportServiceInNetwork (guestNetworkId , Service .Lb , provider )) {
2581+ // Re-apply load balancing rules
2582+ createLoadBalancingRulesList (lbRules , lbs );
2583+ }
2584+
2585+ logger .debug ("Found " + lbRules .size () + " load balancing rule(s) to apply as a part of domR " + router + " start." );
2586+ if (!lbRules .isEmpty ()) {
2587+ _commandSetupHelper .createApplyLoadBalancingRulesCommands (lbRules , router , cmds , guestNetworkId );
2588+ }
2589+ }
2590+
2591+ protected void createLoadBalancingRulesList (List <LoadBalancingRule > lbRules , final List <LoadBalancerVO > lbs ) {
2592+ for (final LoadBalancerVO lb : lbs ) {
2593+ final List <LbDestination > dstList = _lbMgr .getExistingDestinations (lb .getId ());
2594+ final List <LbStickinessPolicy > policyList = _lbMgr .getStickinessPolicies (lb .getId ());
2595+ final List <LbHealthCheckPolicy > hcPolicyList = _lbMgr .getHealthCheckPolicies (lb .getId ());
2596+ final Ip sourceIp = _networkModel .getPublicIpAddress (lb .getSourceIpAddressId ()).getAddress ();
2597+ final LbSslCert sslCert = _lbMgr .getLbSslCert (lb .getId ());
2598+ final LoadBalancingRule loadBalancing = new LoadBalancingRule (lb , dstList , policyList , hcPolicyList , sourceIp , sslCert , lb .getLbProtocol ());
2599+ lbRules .add (loadBalancing );
2600+ }
2601+ }
2602+
25922603 private void createDefaultEgressFirewallRule (final List <FirewallRule > rules , final long networkId ) {
25932604 final NetworkVO network = _networkDao .findById (networkId );
25942605 final NetworkOfferingVO offering = _networkOfferingDao .findById (network .getNetworkOfferingId ());
0 commit comments