@@ -2578,25 +2578,7 @@ protected void finalizeNetworkRulesForNetwork(final Commands cmds, final DomainR
25782578 }
25792579 }
25802580
2581- final List <LoadBalancerVO > lbs = _loadBalancerDao .listByNetworkIdAndScheme (guestNetworkId , Scheme .Public );
2582- final List <LoadBalancingRule > lbRules = new ArrayList <LoadBalancingRule >();
2583- if (_networkModel .isProviderSupportServiceInNetwork (guestNetworkId , Service .Lb , provider )) {
2584- // Re-apply load balancing rules
2585- for (final LoadBalancerVO lb : lbs ) {
2586- final List <LbDestination > dstList = _lbMgr .getExistingDestinations (lb .getId ());
2587- final List <LbStickinessPolicy > policyList = _lbMgr .getStickinessPolicies (lb .getId ());
2588- final List <LbHealthCheckPolicy > hcPolicyList = _lbMgr .getHealthCheckPolicies (lb .getId ());
2589- final Ip sourceIp = _networkModel .getPublicIpAddress (lb .getSourceIpAddressId ()).getAddress ();
2590- final LbSslCert sslCert = _lbMgr .getLbSslCert (lb .getId ());
2591- final LoadBalancingRule loadBalancing = new LoadBalancingRule (lb , dstList , policyList , hcPolicyList , sourceIp , sslCert , lb .getLbProtocol ());
2592- lbRules .add (loadBalancing );
2593- }
2594- }
2595-
2596- s_logger .debug ("Found " + lbRules .size () + " load balancing rule(s) to apply as a part of domR " + router + " start." );
2597- if (!lbRules .isEmpty ()) {
2598- _commandSetupHelper .createApplyLoadBalancingRulesCommands (lbRules , router , cmds , guestNetworkId );
2599- }
2581+ createApplyLoadBalancingRulesCommands (cmds , router , provider , guestNetworkId );
26002582 }
26012583 // Reapply dhcp and dns configuration.
26022584 final Network guestNetwork = _networkDao .findById (guestNetworkId );
@@ -2623,6 +2605,35 @@ protected void finalizeNetworkRulesForNetwork(final Commands cmds, final DomainR
26232605 }
26242606 }
26252607
2608+ private void createApplyLoadBalancingRulesCommands (final Commands cmds , final DomainRouterVO router , final Provider provider , final Long guestNetworkId ) {
2609+ if (router .getVpcId () != null ) {
2610+ return ;
2611+ }
2612+ final List <LoadBalancerVO > lbs = _loadBalancerDao .listByNetworkIdAndScheme (guestNetworkId , Scheme .Public );
2613+ final List <LoadBalancingRule > lbRules = new ArrayList <LoadBalancingRule >();
2614+ if (_networkModel .isProviderSupportServiceInNetwork (guestNetworkId , Service .Lb , provider )) {
2615+ // Re-apply load balancing rules
2616+ createLoadBalancingRulesList (lbRules , lbs );
2617+ }
2618+
2619+ s_logger .debug ("Found " + lbRules .size () + " load balancing rule(s) to apply as a part of domR " + router + " start." );
2620+ if (!lbRules .isEmpty ()) {
2621+ _commandSetupHelper .createApplyLoadBalancingRulesCommands (lbRules , router , cmds , guestNetworkId );
2622+ }
2623+ }
2624+
2625+ protected void createLoadBalancingRulesList (List <LoadBalancingRule > lbRules , final List <LoadBalancerVO > lbs ) {
2626+ for (final LoadBalancerVO lb : lbs ) {
2627+ final List <LbDestination > dstList = _lbMgr .getExistingDestinations (lb .getId ());
2628+ final List <LbStickinessPolicy > policyList = _lbMgr .getStickinessPolicies (lb .getId ());
2629+ final List <LbHealthCheckPolicy > hcPolicyList = _lbMgr .getHealthCheckPolicies (lb .getId ());
2630+ final Ip sourceIp = _networkModel .getPublicIpAddress (lb .getSourceIpAddressId ()).getAddress ();
2631+ final LbSslCert sslCert = _lbMgr .getLbSslCert (lb .getId ());
2632+ final LoadBalancingRule loadBalancing = new LoadBalancingRule (lb , dstList , policyList , hcPolicyList , sourceIp , sslCert , lb .getLbProtocol ());
2633+ lbRules .add (loadBalancing );
2634+ }
2635+ }
2636+
26262637 private void createDefaultEgressFirewallRule (final List <FirewallRule > rules , final long networkId ) {
26272638 final NetworkVO network = _networkDao .findById (networkId );
26282639 final NetworkOfferingVO offering = _networkOfferingDao .findById (network .getNetworkOfferingId ());
0 commit comments