Discussions
Categories
Groups
Community Home
Categories
INTERNAL ENABLEMENT
POPULAR
THRUST SERVICES & TOOLS
CLOUD EDITIONS
Quick Links
MY LINKS
HELPFUL TIPS
Back to website
Home
Web CMS (TeamSite)
Multi-Server DNS selection
andma05
In a cluster with multiple WSMP servers how is the inital logon server selected by DNS ?
I understand that WSMP will find the least busy server to use once a connection has been made, but how does DNS decide which server to go to for the initial connection ?
Find more posts tagged with
Comments
ic_frk
It is not the DNS server that determines which server to go to first. When you set up a cluster DNS entry you specify C records for each server in the cluster. WSMP client application (Web/Outlook etc) gets all the ip addresses in the cluster from DNS and determines which server it goes. All this is brokered via Process Manager.
Hope this helps. Additional documentation is available in WSMP Admin Reference.
andma05
I undertand that PM will allocate the appropriate server. However first of all the user must connect to a server running PM so what decides which server to go to. In the manual and course notes is describes it as:
"When a client application tries to connect to the cluster via the CMS service, it must resolve the DNS name of the cluster.
It will go through 'round robin' selection through the list of ip numbers until it connects to one of the cluster's servers.
The PM of the first server the client connects to will pass back information about the current server load balance of all the CMS servers. Based on this information, the client will reconnect to whichever server is currently serving the least number of clients"
It is the 'round robin' process I would like to understand better. Does it always start at the top of the list of IP addresses defined in the DNS and work down ? or is some other method use ?
BMFInvoice.rptdesign
jman
the client will actually connects (send UDP packets) to ALL ip addresses configured in the DNS server.
all PM will return a response which is a list of CMS servers with loading and I think the response from individual PM should be the same.
then the client will connect to the CMS server with least loading, however, not sure whether the client will wait until ALL PM's response are received or once any one PM response is received. so far it's observed to be the latter case.
however, the above is only based on observation, formal answer can only from interwoven
John
andma05
Finally after much testing I have the final answer it is as follows:
DNS works in a round robin way that gives you the next ip address in the list. DNS does not check if the server/service is available so if a server is down then your session will not be established. For example with two CMS servers, we have the following DNS entries:
WSMP-CLUSTER 10.10.10.1
WSMP-CLUSTER 10.10.10.2
If both are available then user one will connect to 10.1 and user 2 to 10.2.
If 10.1 now shuts it's service down --- DNS will still return 10.1 to the next user, user3 to logon, so his session will fail.
User 4 will connect to 10.2
User 5 will fail to connect to 10.1 and so on...
This means in this scenario every other session request fail.
The only solution I can think of to overcome this is to install a load balancer and use that to provide the routing to the CMS cluster, but will this impact the way that CMS PM balancing works ????
Any thoughts, ideas, solutions much appreciated.