0

I have a java application that needs sticky sessions. We have a load balancer sitting in front of 2x WebSphere ND Application Servers Nodes (separate hosts). These are within a single Cluster.

I'm trying to work out, if I have an external load balancer and I must have sticky sessions enabled.. what's the benefit of a single Cluster? This server-to-server connectivity requires quite a bit of firewall activity.

Couldn't we just have..

Load Balancer
   Cell01
      DMgrNode
      Node01
         Cluster01
            ClusterMember01
      Node02
         Cluster02
            ClusterMember02

The load balancer just distributes with sticky sessions, load between Node01 and Node02?

flipcode
  • 621
  • 2
  • 9
  • 19
  • I think you're using non-standard terminology or have some other confusion. A cluster is a collection of servers running the same applications. Two single-server clusters would be kind of silly and would never require session affinity because each request can only ever go to a single server. I also think you may be confused that the clustering in WAS provides some kind of routing or affinity. It is just a collection of servers. You still use an external HTTP proxy to maintain affinity with a particular backend server. – covener Feb 25 '19 at 13:54
  • Hmm, not really following you. I’m saying that I would use an external hardware load balancer, with sticky sessions set on the load balancer. The installed java application on each Cluster Member. I’m not confusing clustering with routing. I’m not clear what benefit I am getting by associating two cluster members into a single cluster vs them both having their own cluster. – flipcode Feb 25 '19 at 19:59

1 Answers1

1

A cluster must have more than one member. You have two separate clusters with a single member each. You need ONE cluster, with a server on each note. A cluster can cross nodes. The way you have this set up will NOT handle sessions. Clustering provides workload balancing and failover. With only one member of a cluster, you get neither. Here is what you need to do:

  • Delete Cluster02 on Node02.
  • Add a new clustermate for Cluster01 on Node02.
Kenny
  • 316
  • 1
  • 9
  • Yeah.. but again, why MUST I have more than one member in the cluster? Right now if I provision an ND environment, it initially has one cluster member and it works just fine. If I want to scale but I don’t need to share session info (sticky sessions enabled on the external LB) why do I NEED one cluster? – flipcode Feb 26 '19 at 20:38
  • You don' need ANY cluster if you are going to do that. Heck, if you have just one JVM (one server), you don't even need WAS ND. That's is what WAS Base is. – Kenny Feb 27 '19 at 14:15
  • Yes but the application is built by IBM and they mandate it must be ND. They’re looking to move away to Liberty but it is what it is for now... but we do not more than one server for DR. I guess the point here is, there doesn’t appear to be any benefit of the Cluster if you do not want to use WAS load balancing features. – flipcode Feb 27 '19 at 20:53
  • 1
    Correct. A cluster MUST have more than one member to be of any real use. Otherwise its just configuration overhead on your part. – Kenny Feb 27 '19 at 22:32