Simple load balancing distributes HTTP requests across
multiple IBM® WebSphere® Application Server instances. Also,
you can configure simple load balancing to provide failover of an
application state that is maintained in an HTTP session.
Before you begin
Supported configurations: This offering applies to stand-alone
application server profiles for IBM WebSphere Application Server. This offering
does not include a centralized management capability such as the deployment
manager in WebSphere Application Server Network Deployment.
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. This topic explains how to complete this
configuration.
- 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. For more information, see the documentation
on configuring simple load balancing across multiple stand-alone,
base application server profiles with an administrative agent using
the job manager.
Complete the following steps to register stand-alone application
server profiles with an administrative agent 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 the enterprise application or web module.
For
more information, see the documentation on installing enterprise applications
or modules.
- 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 the 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 pluginCfgMerge tool to automatically merge the
plugin-cfg.xml file
from multiple application server profiles into a single output file.
The
pluginCfgMerge.bat or
pluginCfgMerge.sh tool
is available after you install this fix pack and is located in the
install_root/bin directory.
To use the pluginCfgMerge 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 pluginCfgMerge 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/pluginCfgMerge.sh plugin_configuration_file1 plugin_configuration_file2 resulting_plugin_configuration_file
install_root\bin\pluginCfgMerge.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.