+

Search Tips   |   Advanced Search

Routing requests to external nodes with generic server clusters

Use this task to route requests from the on demand router (ODR) to external nodes.

To configure dynamic operations support for other middleware server types, we can define your other middleware servers as members of a dynamic cluster. For more information about defining middleware servers, read about adding middleware servers to configurations.

We must have one or more nodes that are not running Intelligent Management. When we perform this task, we add the nodes that are not running Intelligent Management as generic server cluster ports.

To create and edit generic server clusters, we need administrator or configurator administrative privileges.

The following tasks must be completed before configuring the ODR to send requests to external nodes:

  1. Create an ODR.

  2. Configure service classes and transaction classes for the ODR.

The ODR supports automatic routing to nodes in remote cells if the ODR's local cell is connected to the remote cell by a core group bridge. To route to nodes that do not have Intelligent Management installed, configure a generic server cluster. A generic server cluster is a collection of transport end points that can be used as a target for an ODR routing rule. Servers and nodes are inferred from the generic server cluster end points and properties. The inferred servers can be foreign or generic servers. Generic servers can be stopped and started by a WebSphere Application Server node agent. Foreign servers can also be stopped and started by the WAS node agent. Some examples of foreign servers include Apache Tomcat or JBoss Application Server.


Tasks

  1. Optional: Create one or more unmanaged nodes. We need to create unmanaged nodes in any of the following configuration situations:

    • If we want the remote agent to listen for requests from a port other than the default port, 9980.

    • If we are using a custom statistics collector plug-in to obtain node.speed and average CPU utilization for the work profiler.

    • If our nodes are multi-homed, that is, they have more than one network interface card or multiple host names.

    In the administrative console, click...

            System administration > Nodes > Add node to create an unmanaged node.

    Specify the stats.collector.remote.agent.port custom property on the unmanaged node.

    1. Click System administration > Nodes > node > Custom properties > New.

    2. For the Name, enter stats.collector.remote.agent.port.

    3. For the Value, enter the port number where the remote agent listens for requests.

    Remember: Write down the value of this port. We use the port value when we start the remote agent on the unmanaged node.

  2. Optional: If we are using a custom statistics collector plug-in to obtain node.speed and average CPU utilization for the work profiler, define the name of the class as a custom property on the unmanaged node. In this case, the plug-in might or might not use a remote agent. Before we configure this custom property, we must have a custom statistics collector plug-in coded and installed in the lib directory.

    1. Click System administration > Nodes > node > Custom properties > New.

    2. For the Name, enter stats.collector.implementation.class.

    3. For the Value, enter the name of the custom statistics collector plug-in class. The default is the com.ibm.ws.externalnode.plugins.DefaultStatsCollector class.

    4. We can specify additional configuration parameters by adding the stats.collector.config custom property on the unmanaged nodes. The provider of the custom plug-in must provide you with the information. The stats.collector.config is not required if we are using the default com.ibm.ws.externalnode.plugins.DefaultStatsCollector class.

    Remember:

    The DefaultStatsCollector plug-in runs by default. When a remote agent is not running, we might want to disable it. To disable the plug-in, set the external.node.stats.collector.disabled custom property to true at the cell level.

  3. Create a generic server cluster.

    1. In the administrative console, click...

              Servers > Clusters > Generic server clusters > New.

    2. Type a Name and select a Protocol for our generic server cluster.

    3. Click Apply.

    4. Specify the generic cluster server end points, or ports. On the generic cluster server settings page, click Ports.

    5. Click New to add end points to the generic server cluster.

  4. Optional: If we configured the remote agent to listen on a non-default port in a previous step, if we are using a custom statistics collector plug-in, or if the nodes are multi-homed, that is, they have more than one network interface card or multiple host names, define the node custom property on the generic server cluster end points.

    1. In the administrative console, click...

              Servers > Clusters > Generic server clusters > cluster_name > Additional properties > Ports > host_name > Additional properties > Custom properties > New.

    2. Define the custom property. Type the name of the custom property as node. The value of the custom property should be the name of the unmanaged node associated with the generic server cluster port.

    3. Click Apply.

  5. Install the application on the external nodes using your defined port numbers.
  6. Enable external monitoring by enabling the remote agent on all of our external nodes.

  7. Define routing policies for generic server clusters.

    Before creating routing rules, create the appropriate virtual hosts. The virtual hosts can be defined in the console by clicking Environment > Virtual hosts.

  8. Define service policies for generic server clusters.

The work profiler obtains average CPU utilization and node speed from external nodes and can route traffic to the external nodes.


What to do next

Continue configuring the on demand router and the autonomic request flow manager.


Subtopics

  • Add middleware servers to configurations
  • Enable external monitoring with the remote agent
  • Create ODRs
  • Define a service policy
  • Configure the autonomic request flow manager
  • Deploy applications with defined service levels
  • Define routing policies for generic server clusters
  • Define service policies for generic server clusters