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