com.atlassian.confluence.content.render.xhtml.migration.exceptions.UnknownMacroMigrationException: The macro 'next_previous_link3' is unknown.

Manually Configuring a Load Balancer

The Load Balancer (LB) has been puppetized for greater convenience. For information on setting up LB with Puppet, see the Puppet Master Guide.

The following configurations are only relevant, if you prefer to use a separate cartridge (AMI) for the Load Balancer.

The following configuration files need to be updated in the Load Balancer (LB):

  1. Update the following values in the loadbalancer.conf file, which is found in the <LB_HOME>/repository/conf/ directory. The instance payload is used to send the configuration parameters: MB IP, MB PORT, CEP IP, CEP PORT and LB CLUSTER ID
    1. Update message-broker-ip and message-broker-port values from the payload parameters.

      mb-ip: <message-broker-ip>;
      mb-port: <message-broker-port>;
    2. Update cep-ip and cep-port values values from the payload parameters.

      cep-ip: <cep-ip>;
      cep-port: <cep-port>;
    3. Update the lb-cluster-id values from the payload parameters.

      topology-member-filter: lb-cluster-id=lb-cluster-id1;

      The configuration of the loadbalancer.conf file is as follows:

      loadbalancer {
      
          # Default load balancing algorithm
          # Refer algorithm name from algorithms section.
          algorithm: round-robin;
      
          # Enable/disable failover handling
          # If failover handling is enabled load balancer will retry requests on all members in a
          # given cluster if the selected member fails to respond.
          failover: true;
      
          # Enable/disable session affinity
          # If session affinity is enabled load balancer will track all outgoing sessions and delegate
          # incoming requests to members with same sessions.
          session-affinity: true;
      
          # Session timeout in milli-seconds
          session-timeout: 90000;
      
          # Endpoint timeout in milli-seconds
          endpoint-timeout: 30000;
      
          # Enable/disable topology event listener
          # If this property is set to true, load balancer will listen to topology events and build
          # the topology configuration accordingly. If not static configuration given in the services
          # section will be used.
          topology-event-listener-enabled: true;
      
          # Message broker endpoint
          # Provide message broker ip address and port if topology_event_listener_enabled is set to true.
          mb-ip: <message-broker-ip>;
          mb-port: <message-broker-port>;
      
          # Topology service filter
          # Provide service names in a comma separated list to filter incoming topology events if
          # topology_event_listener_enabled is set to true. This functionality could be used for hosting
          # dedicated load balancers for services.
          # topology-service-filter: service-name1, service-name2;
      
          # Topology cluster filter
          # Provide cluster ids in a comma separated list to filter incoming topology events if
          # topology_event_listener_enabled is set to true. This functionality could be used for hosting
          # dedicated load balancers for subscriptions.
          # topology-cluster-filter: cluster-id1, cluster-id2;
       
          # Topology member filter
          # Provide load balancer cluster ids in a comma separated list to filter incoming topology events if
          # topology_event_listener_enabled is set to true. This functionality could be used for allowing members
          # to join a given load balancer cluster.
          # topology-member-filter: lb-cluster-id=lb-cluster-id1;
      
          # Enable/disable cep statistics publisher
          cep-stats-publisher-enabled: true;
      
          # Complex event processor endpoint
          # Provide CEP ip address and port if stats_publisher_enabled is set to true.
          cep-ip: <cep-ip>;
          cep-port: <cep-port>;
      
          # Load balancing algorithm class names.
          algorithms {
              round-robin {  # algorithm name
                  class-name: org.apache.stratos.load.balancer.algorithm.RoundRobin;
              }
          }
      }
  2.  Update the http and https ports if required in the axis2.xml file, which is found in the <LB_HOME>/repository/conf/axis2/ directory. The default values are http=8280, and https=8243.

    <transportReceiver name="http" class="class-name">
        	<parameter name="port" locked="false">8280</parameter>
    </transportReceiver>
    
    <transportReceiver name="https" class="class-name">
        	<parameter name="port" locked="false">8243</parameter>
    </transportReceiver>

Dedicated Load Balancing for Services

The Load balancer could be configured to manage a given set of services. This functionality can be used for hosting dedicated load balancers for separate services.

Sample Scenario:
Configure two load balancers to manage two different sets of services.

Load Balancer L1:
Services Managed: AppServer, ESB
Update the following property in the loadbalancer.conf file which is found in the <LB_HOME>/repository/conf/ directory, with the service names: AppServer, ESB:
topology-service-filter: AppServer,ESB;

Load Balancer L2:
Services Managed: PHP
Update the following property in the loadbalancer.conf file which is found in the <LB_HOME>/repository/conf/ directory, with the service name: PHP:
topology-cluster-filter: PHP;

com.atlassian.confluence.content.render.xhtml.migration.exceptions.UnknownMacroMigrationException: The macro 'next_previous_links2' is unknown.