Server farm topology

You can configure a farm of WebSphere® Application Server full profile, WebSphere Application Server Liberty profile, or Apache Tomcat application servers.

A farm is a set of individual servers where the same components are deployed and where the same administration database and runtime database are shared between the servers. The farm topology enables the load of MobileFirst applications to be distributed across several servers. Each server in the farm must be a Java™ Virtual Machine (JVM) of the same type of application server; that is, a homogeneous server farm.

In this topology, all the administration components and the runtimes are deployed on every server in the farm.

Figure 1. Topology of a server farm
Two server nodes in a farm. Each server supports two administration components and three runtimes that access the appropriate shared administration or runtime database.

This topology supports only symmetric deployment. The runtimes and the administration components must be deployed on every server in the farm. The deployment of this topology has the following characteristics:

Configuration of JNDI properties

Some JNDI properties are required to enable JMX communication between the administration service and the runtime of the same server, and to define the administration service that manages a runtime. For convenience, the tables in this section list these properties. For instructions about how to install a server farm, see Installing a server farm. For details about the JNDI properties, see List of JNDI properties for MobileFirst Server administration and JNDI environment entries for MobileFirst projects in production.

WebSphere Application Server Liberty profile server farm

The following global JNDI properties are required in each server of the farm for the administration services and for the runtimes.

Table 1. Global JNDI properties for administration services and runtimes in server farm topology of WebSphere Application Server Liberty profile
JNDI properties Values
ibm.worklight.topology.platform "Liberty"
ibm.worklight.topology.clustermode "Farm"
ibm.worklight.admin.jmx.host Hostname of the WebSphere Application Server Liberty profile server
ibm.worklight.admin.jmx.port Port of the REST connector that must be identical to the value of the httpsPort attribute declared in the <httpEndpoint> element of the server.xml file of the WebSphere Application Server Liberty profile server.
<httpEndpoint id="defaultHttpEndpoint" httpPort="9080" httpsPort="9443" host="*" />
ibm.worklight.admin.jmx.user The user name of the WebSphere Application Server Liberty administrator that is defined in the <administrator-role> element of the server.xml file of the WebSphere Application Server Liberty profile server.
<administrator-role>
  <user>WorklightRESTUser</user>
</administrator-role>
ibm.worklight.admin.jmx.pwd Password of the WebSphere Application Server Liberty administrator user.

The ibm.worklight.admin.serverid JNDI property is required for the administration service to manage the server farm configuration. Its value is the server identifier, which must be different for each server in the farm.

Several administration components can be deployed to enable the same JVM to run on separate administration components that manage different runtimes.

When you deploy several administration components, you must specify:
  • On each administration service, a unique value for the local ibm.worklight.admin.environmentid JNDI property.
  • On each runtime, the same value for the local ibm.worklight.admin.environmentid JNDI property as the value defined for the administration service that manages the runtime.
Apache Tomcat server farm

The following global JNDI properties are required in each server of the farm for the administration services and for the runtimes.

Table 2. Global JNDI properties for administration services and runtimes in server farm topology of Apache Tomcat
JNDI properties Values
ibm.worklight.topology.platform "Tomcat"
ibm.worklight.topology.clustermode "Farm"

JVM properties are also required to define Java Management Extensions (JMX) Remote Method Invocation (RMI). For more information, see Configuring Apache Tomcat.

The ibm.worklight.admin.serverid JNDI property is required for the administration service to manage the server farm configuration. Its value is he server identifier, which must be different for each server in the farm.

Several administration components can be deployed to enable the same JVM to run on separate administration components that manage different runtimes.

When you deploy several administration components, you must specify:
  • On each administration service, a unique value for the local ibm.worklight.admin.environmentid JNDI property.
  • On each runtime, the same value for the local ibm.worklight.admin.environmentid JNDI property as the value defined for the administration service that manages the runtime.
WebSphere Application Server full profile server farm

The following global JNDI properties are required on each server in the farm for the administration services and for the runtimes.

Table 3. Global JNDI properties for administration services and runtimes in server farm topology of WebSphere Application Server full profile
JNDI properties Values
ibm.worklight.topology.platform "WAS"
ibm.worklight.topology.clustermode "Farm"
ibm.worklight.admin.jmx.connector "SOAP"
The following JNDI properties are required for the administration service to manage the server farm configuration.
JNDI properties Values
ibm.worklight.admin.jmx.user The user name of WebSphere Application Server. This user must be defined in the WebSphere Application Server user registry.
ibm.worklight.admin.jmx.pwd The password of the WebSphere Application Server user.
ibm.worklight.admin.serverid The server identifier, which must be different for each server in the farm and identical to the value of this property used for this server in the server farm configuration file.

Several administration components can be deployed to enable the same JVM to run on separate administration components that manage different runtimes.

When you deploy several administration components, you must specify the following values:
  • On each administration service, a unique value for the local ibm.worklight.admin.environmentid JNDI property.
  • On each runtime, the same value for the local ibm.worklight.admin.environmentid JNDI property as the value defined for the administration service that manages the runtime.