cancel
Showing results for 
Search instead for 
Did you mean: 

XIR3 Clustered load balancing - how is it handled?

Former Member
0 Kudos

Can anyone help me with this, or point to some useful documentation on the following? The scenario is this. I plan to deploy the following 2 servers:

1. Server 1, with it's CMS and system database

2. Server 2, clustered with Server 1 (different machine), using the same system database and FRS (on a NAS).

Questions

1. How is the load balancing handled. Is there an SIA for each server, or one SIA handling each server and respective CMS? By what process/servers is the load balancing handled?

Accepted Solutions (1)

Accepted Solutions (1)

ted_ueda
Employee
Employee
0 Kudos

When the Enterprise SDK (within InfoView, CMC or custom code) connects to a CMS, the CMS sends a list of available members of the cluster, that the SDK keeps in memory.

The SDK then tries connecting to each member of the cluster, until a successful connection is made.

Sincerely,

Ted Ueda

Former Member
0 Kudos

Correct... Do an Expand installation and select the CMS on Server 2. A SIA will be installed to manage that CMS and the subsequent screens of the installation wizard (assuming you're using Win) will ask you for the existing CMS. On Unix, same steps (Expand/Custom install) and select only CMS and any other servers you may want on Server 2. Load balancing is handled internally (see replies above).

Former Member
0 Kudos

So in the example I've given, does that mean that if I log into Desktop Intelligence as <Server1> does the CMS then auto-route to <Server2> if <Server1> is doing too much work.

That is, do I have to configure Desktop Intelligence to recognise the multiple CMSs or does the clustered servers handle the request and load balance regardless of whether I enter <Server1> or <Server2> as the Server value when logging into Dekstop Intelligence?

denis_konovalov
Active Contributor
0 Kudos

You do not need to configure anything on Deski side for it to understand cluster or be loadbalanced.

Once you login into Deski first time, registry will be updated with cluster information.

So next time you login, even if you use server1 name, actual login maybe handled by server2.

Once you are inside deski most of the processing will be client side, excepts if it's a 3-tier mode, so no load balancing needed.

Any server side requests will be handled with loadbalancing in mind by internal processes.

Former Member
0 Kudos

But how do the mechanics work in terms of file references and processes? I cannot understand how, if Server 1 isn't available how it knows to look for server 2? If it cannot recognize Server 2 until a successful login is completed by Server 1 then theoreitcally it's not a pure DR strategy - or am I misunderstanding something?

Former Member
0 Kudos

Hi there,

Is there any update or new documentation on load balancing? I have clustered two servers and the cluster is fine. But I cannot locate a set of rules for load balancing on how it works.

I have Server A and Server B. Both CMSs up and running. A colleague login to Server A from Desktop Intelligence and Server A takes care of it. I log into Server B and it logs into Server A.

Yet in the CMC console all servers are running and both CMSs are running. This doesn't look to me like round robin, or the second user should have been served by Server B surely?

ted_ueda
Employee
Employee
0 Kudos

Round robin is client side - it's not evaluating load before logging on - it's not round-robinning server side, but client-side.

So you can certainly get a situation where two different people log on and they go to the same CMS.

When connection attempt times out, client attempts connection on another CMS.

Sincerely,

Ted Ueda

denis_konovalov
Active Contributor
0 Kudos

It's not a pure round-robin, algorithm also takes into equasion load of the CMS servers.

So second login may not necessary go to CMS B.

If first server in the list is available - it will serve request, if it's busy or reaches some treshhold - session wll be handled by server B.

There is no way that this can be controlled- it's built in into code.

Former Member
0 Kudos

That's strange. The client side of DeskI doesn't store what connections are being used or how many, so how could it evaluate which server to use before connecting? Surely if I am asking it to connect to Server B and it finds Server B then it would use Server B? If it couldn't find Server B then I can understand how it would redirect to Server A.

In my case the CMS for Server B is up and running, my registry settings are configure to search for A and B, so in the case of Server B being unused and the CMS up and running the DeskI client that is looking for Server B sould find Server B and not Server A, right?

Is there any documentation on this?

ted_ueda
Employee
Employee
0 Kudos

Run [Regmon|http://www.microsoft.com/technet/sysinternals/utilities/regmon.html] while logging onto the Desktop Intelligence client. You'll see it look up the CMS cluster members that it's persisted in the registry.

If both Server A and Server B is stored in the registry entry that client is looking up, connection can go to either.

Sincerely,

Ted Ueda

Answers (1)

Answers (1)

denis_konovalov
Active Contributor
0 Kudos

1. Load Balance is handled by internal algorithm , each server has it's own SIA, but SIA doesn't handle loadbalancing, SIA manages running servers (start/stop) and not much more.

2. What exactly do you mean "by which process" ?

CMS servers communicate with each other and share the load. It's round-robin with some added

intelligence into it, I believe.