Simple load balancing distributes HTTP requests across multiple IBM®
WebSphere® Application Server instances. You can configure simple load
balancing to provide failover of an application state that is maintained in an HTTP
session.
About this task
You can configure simple load balancing capability with
WebSphere Application Server by combining the plug-in configuration files of
multiple stand-alone application server profiles into a single configuration file.
The number of
configuration files that you can combine are bound by the limits that exist in the WebSphere Application Server license agreement. You can use the following
different configurations of the application server to combine the plug-in configuration files of
multiple application server profiles into a single output file:
- Using multiple stand-alone base application server profiles. For more information, see the
documentation on configuring simple load balancing across multiple application server profiles.
- Using multiple stand-alone base application server profiles with an administrative agent. For
more information, see the documentation on configuring simple load balancing across multiple
application server profiles with an administrative agent
- Using multiple stand-alone base application server profiles with an administrative agent using
the job manager. The job manager function is a part of WebSphere Application Server Network Deployment. However, you can use the job manager function
with stand-alone, base application server profiles. Use this topic to complete this
configuration.
Complete the following steps to register stand-alone application server profiles with an
administrative agent using a job manager and combine the plug-in configuration files from these
profiles into a single output file.
Procedure
-
Install WebSphere Application Server and create application server
profiles.
For more information, see the documentation on WebSphere Application Server installation and application server profiles.
-
Configure the administrative agent and register each application server profile with the
administrative agent.
Complete the following steps:
- Set up the administrative agent, which includes creating the administrative agent profile.
- Register the stand-alone application server with the administrative agent.
- Start and stop the administrative agent.
After you complete these steps, you can complete all the administrative operations through
the administrative agent. When you log in to the administrative console for the administrative
agent, you can select which application servers to manage. For more information, see the
documentation on administering stand-alone nodes using the administrative agent.
-
Install WebSphere Application Server Network Deployment for the licensed WebSphere Application Server Network Deployment instances that will perform centralized management
for the stand-alone application server instances.
For more information, see the installation documentation for the
WebSphere Application Server Network Deployment product.
Attention: You must access
the IBM Knowledge Center to read the WebSphere Application Server Network Deployment
installation documentation.
-
Create the job manager profile, configure the job manager, and register stand-alone application
servers with the job manager.
For more information, see the documentation on setting up a job manager environment.
You can complete administrative options centrally using the job manager. For more
information about the job manager, see the conceptual information about the job
manager.
-
Install the enterprise application or web module.
You can use one of the following methods to install the enterprise application or web module:
- Install the enterprise application or web module on each application server. For more
information, see the documentation on installing enterprise applications or modules.
- Install the enterprise application or web module using the job manager. For more information,
see the documentation on installing applications using the job manager.
-
Determine if you require session affinity.
Session affinity directs requests from a given client to a specific application server. The
application state maintained in the HTTP session is accessed in the HTTP session cache, which is
local to the application server. Session affinity provides higher performance than database
persistence of the session object, alone. Without session affinity, session requests must be
obtained from the database if they are sent to a server that does not have the session object in the
local cache.
- Optional:
Configure a unique HTTP session clone ID for each application server.
You must complete this step if you require session affinity.
You can configure a unique HTTP
session clone ID using wsadmin scripting or the administrative console. To use wsadmin commands for
the Jython or Jacl programming language, see the documentation on configuring a unique HTTP session
clone ID for each application server using scripting. To configure a unique HTTP session clone ID
using the administrative console, complete the following steps:
-
Expand and click WebSphere application servers >
server_name.
-
Under Container Settings, expand Web Container
Settings and click Web container.
-
Under Additional Properties, click .
-
In the Name field, enter
HttpSessionCloneId.
-
In the Value field, enter a unique value for each server. The unique
value must be 8 - 9 alphanumeric characters; for example, test1234
-
Click Apply or OK.
-
Click Save to save the configuration changes to the master
configuration.
- Optional:
Configure session persistence.
If you require session failover capability, you must configure session persistence.
Persistence of the session object to a database is the only option for session failover with WebSphere Application Server. To configure session persistence using the
administrative console, see the documentation on configuring database session persistence. To
configure database session persistence using wsadmin commands for the Jython or Jacl programming
language, see the documentation on configuring database session persistence using scripting.
-
Restart the server.
-
Generate the plugin-cfg.xml file for each stand-alone application server
using the GenPluginCfg script, the administrative console, or wsadmin scripting.
To use the GenPluginCfg script, enter the following command on the command line:profile_root/config/cells/GenPluginCfg.sh|bat
To use the administrative console, see the documentation on creating or updating a global web
server plug-in configuration file.
The following variables apply to the Jython and Jacl commands:
- cell_name is the name of your cell.
- web_server_node is the name of the node for your web server.
- web_server_name is the name of your web server.
- Jython
- On the command line, enter each of the following commands on a separate
line:
generator = AdminControl.completeObjectName('type=PluginCfgGenerator,*')
AdminControl.invoke(generator, 'generate', "profile_root/config cell_name web_server_node web_server_name true true")
- Jacl
- On the command line, enter each of the following commands on a separate
line:
set generator [$AdminControl completeObjectName type=PluginCfgGenerator,*]
$AdminControl invoke $generator generate "profile_root/config cell_name web_server_node web_server_name true true"
-
Merge the plugin-cfg.xml files from multiple application server
nodes.
You can either manually merge the
plugin-cfg.xml files or use the tool to
automatically merge the
plugin-cfg.xml file from multiple application server
profiles into a single output file. The
.bat or
.sh tool
is available after you install this fix pack and is located in the
install_root/bin directory. To use the tool, complete the
following steps:
- Rename the plugin-cfg.xml files to a unique name across your application
server profiles.
- Copy the plugin-cfg.xml file for all stand-alone application server
profiles into a common directory.
- Use the tool to combine the plugin-cfg.xml files from each of the
application server profiles into a single output file. For
example:
install_root/bin/.sh plugin_configuration_file1 plugin_configuration_file2 resulting_plugin_configuration_file
install_root\bin\.bat plugin_configuration_file1 plugin_configuration_file2 resulting_plugin_configuration_file
The
resulting_plugin_configuration_file variable value is normally
plugin-cfg.xml
For more information about manually merging the plugin-cfg.xml files, see
the technote on merging plugin-cfg.xml files from multiple application server
profiles.
-
Copy the merged plugin-cfg.xml file to the
plugin_installation_root/config/web_server_name/
directory on the Web server host.
-
Ensure that you have defined the correct operating system file access permissions for the
merged plugin-cfg.xml file.
These file access permissions allow the HTTP server plug-in process to read the file.
Results
When you complete this process, you have one plug-in configuration file for multiple
stand-alone application server profiles.