Welcome!

Websphere Authors: Bob Gourley, Elizabeth White, Sandi Mappic, Jnan Dash, Kevin Benedict

Related Topics: Websphere

Websphere: Article

Your Guide to Portal Clustering in WebSphere Portal Server 5.1

WebSphere Portal Server 5.1

Some things in WebSphere PortalServer work well and are well documented. Other things are well documented and work well in theory. Still other things have okay documentation and will work well when all of the WebSphere stars are aligned. Depending on your implementation, Portal Clustering can fit into all three categories.

De-Mystification
Given the broad range of configurations open to an infrastructure planner when dealing with WebSphere software, it’s no wonder there’s often a great deal of confusion when it comes to making a complex product like Portal highly available. Naturally, there’s no “Learn Clustering in 20 Minutes” manual, but there are general steps to follow and some to avoid.

Let’s start with a very basic explanation of the WebSphere cell and how the Portal fits into it. (See Figure 1.)

A basic WebSphere AppServer install is often on a single machine typically referred to as a node. A simple enterprise infrastructure might include several AppServer nodes each doing their own tasks. As the infrastructure evolves and grows more complex, the need arises to simplify operational management of the multiple nodes. The Network Deployment incarnation of the WebSphere Application Server gives you the ability to manage and control multiple Application Servers centrally. The configuration of security parameters, user directories, and JNDI resources is greatly simplified by this centralization of operational management. Instead of deploying code to three different WebSphere machines, I can now deploy once and have the Network Deployment services distribute the code for me. The combination of the Network Deployment Manager and the Application Servers it manages represent the WebSphere Cell.(See Figure 2.)

The process of adding Application Server nodes to the cell is called federation. Its opposite, unfederation, describes removing a node from a Cell and returning it to standalone status.

The Deployment Manager communicates with Cell members via a small JVM called the nodeagent located on each of the managed nodes. The Deployment Manager will keep track of all configuration changes and use the nodeagents on the federated nodes to “synchronize” the configurations so they all represent what’s defined in the master configuration on the Deployment Manager itself.

In many respects Portal is no different than any other web application that would be configured to run in a WebSphere Cell. Just like a regular webapp, I could choose to run Portal on a single node in the Cell or on multiple nodes or even have multiple instances running on a single node. (See Figure 3.)

Unlike a regular Web application, Portal uses several other services that aren’t part of the regular WebSphere Application Server product set. As such, there’s a completely separate installation that must exist on each node that you want to run Portal.

A Network Deployment infrastructure consisting of several WebSphere AppServer nodes gives you tremendous advantages that could (and do) fill entire Red Books. For purposes of the Portal, four are of primary importance:
  • Simplification of the operational management
  • Central management of the Portal configurations
  • Highly available environment
  • Session and cache data replicated between all Portal nodes
So the assumption at this point is that you’ve decided you want to cluster the Portal for good reason and there’s no real need to go on ad nauseum about the benefits to be derived from a clustered topology. So let’s get to it.

Which Way To Cluster?
Starting with Portal 5.1, there are two ways to establish a Portals cluster. The first way is to build a WebSphere Cell out of multiple federated nodes and then install Portal on each node in the existing Cell. The second way is to take a set of standalone nodes with Portal already installed on them and federate them into a Cell. Which is the better way? Well, that depends.

Using an existing Cell of AppServers and simply installing Portal into that topology is easiest, but has its drawbacks. When an Application Server node is federated into a Cell, it loses its default configuration and assumes the configuration dictated by the Network Deployment Manager. If the node is unfederated at any time, then the original configuration is loaded from a backup copy and the node reverts to its standalone state. Therefore, if I have a node that’s already been federated and then install an application on it, if that node ever gets unfederated it will revert to its default state and the application I installed on it will go away. You can see the limitation here. I could not unfederate a Portal node and have it still be a Portal node.

Conversely, if I have a standalone node on which I install Portal and then federate it, the Portal is part of the node’s original pre-federated configuration and will always be present on the node, even if it gets unfederated. Unfortunately, doing it this way is more complicated and prone to error and endless frustration. Historically this has been the only way to cluster the Portal and it has led to many late nights and high consulting fees.
A real-world recommendation, one that recognizes impossible deadlines, unrealistic demands, and the constant need to document procedures, would be to go the first route. Build your Cell of federated WebSphere nodes, verify that they function, then add Portal to the mix. It’s less flexible, but I think you’ll find yourself going home at 5pm more often.

Federation
Naturally you first have to install WebSphere Application Server. Let’s assume you can get this far and you have two WAS nodes (WAS1 and WAS2) installed and ready to go at version 5.1.x. There are no Web applications installed other than the default ones. You have also installed and configured a Network Deployment Manager (DM1) for version 5.1.x. For argument’s sake, let’s say each component is installed on a separate Windows machine.

In our scenario, WebSphere Global Security isn’t enabled (yet). This makes the federation process easy. On each of the two WAS nodes you would execute the following:
WAS_HOME\bin\addNode.bat DM1_
  HostName DM1_SOAP_Port
By default, the SOAP port of the Deployment Manager out-of-the-box is 8879.

Once executed, you’ll see the console output describing the federation process. When it’s complete on both nodes, you’ll have a Cell. See? Easy. Now let’s put Portal into the mix.

Installing the Portal
Our plan is to install Portal first on WAS1, do some basic configuration, then install what’s called a “secondary” Portal on WAS2. Prior to installing Portal anywhere, however, we must ensure that the WAS1 and WAS2 nodes have any and all patches/efixes required by the Portal release that we’re installing. In our example, we’re going to install Portal 5.1.

At this point you go ahead and install Portal on WAS1. This is a Custom Install. You’ll be choosing the Application Server that’s already installed on this node and federated into the Cell. The installer will recognize that this is a federated node and prompt you to designate whether this is a primary or secondary node. Since this is the first install, you must select primary node. The installer will interface with the Deployment Manager controlling this node and install the appropriate files.
  1. Execute the installer on WAS1
  2. Agree to the terms. Click Next. (See Figure 4.)
  3. Select Custom. Click Next. (See Figure 5.)
  4. Select the instance that you want to use from the list. If the installation program doesn’t detect an instance of WebSphere Application Server but you know that it’s on the machine, you can enter the directory path to the WebSphere Application Server. Click Next. (See Figure 6.)
  5. Select Primary, and click Next. (See Figure 7.)
  6. Specify the directory where you want to install the WebSphere Portal. Click Next. (See Figure 8.)
  7. Verify the components to be installed and click Next.
  8. When the installation is finished, the installation program displays a confirmation panel listing the components that have been installed.
  9. Click Finish.

More Stories By Chris Lockhart

Chris Lockhart is a senior technical resource at Perficient, a firm recognized for its expertise around IBM technologies. Chris has worked with IBM's WebSphere, Tivoli and Lotus Software platforms for more than 6 years. For more information, please visit www.perficient.com

Comments (2) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
Shanthi 01/31/06 07:03:33 AM EST

This was a great article .. helped me understand clustering better. I was looking for a way to add a node into a pre-configured cluster and this article pointed me in the right direction. I am going to use this as reference for my production deploy.
Thank you.

WebSphere News Desk 07/29/05 04:39:57 PM EDT

Your Guide to Portal Clustering in WebSphere Portal Server 5.1. Some things in WebSphere PortalServer work well and are well documented. Other things are well documented and work well in theory. Still other things have okay documentation and will work well when all of the WebSphere stars are aligned. Depending on your implementation, Portal Clustering can fit into all three categories.