1826843 Members
4405 Online
109704 Solutions
New Discussion

Re: Cluster Alias

 
SOLVED
Go to solution
Mahmoud_1
Frequent Advisor

Cluster Alias

Hi To all,
I asked befor about Load Broker for load balance, but no one answer me about the cluster alias configuration from the tcpip$config procedur (((!! do I have to configur it or not !!!))).

NOTE :
I have more than 300 users want to connect to my cluster using telnet session so I configured the members and the cluster alias from the tcpip$config procedur but I faced problem as I mentioned befor "all connections using cluster_alias address connect to one server "

I attached the log for my configuration & loadbroker logs for both systems and the tcpip hosts & Metric status.

If any can help .
thanks in advance
21 REPLIES 21
Mobeen_1
Esteemed Contributor

Re: Cluster Alias

Mahmoud,
The way we have configured our clusters is as follows. To make things clear , i shall try to illutrate using a 3 node cluster. Lets assume that the 3 node cluster has nodes VMSA, VMSB and VMSC.

1. VMSA, VMSB and VMSC are assigned IP
addresses as per normal in the DNS server

2. We need to configure a Round Robin for
the cluster alias, say VMS on your DNS
server for the cluster alias.

3. The users then will normally telnet into
VMS and not to VMSA, VMSB and VMSC.

4. When this happens, the first user
telnetting into the cluster alias VMS
will be directed to node VMSA, the second
to VMSB, third to VMSC, fourth to VMSA
and so on.

As you can see, this will distribute the user session load evenly on all the nodes in the cluster. You would need to contact your DNS administrator and tell him to define a DNS round-robin and he should be able to do that.

If you have any specific questions, do feel free to get back to us.

regards
Mobeen
Ian Miller.
Honored Contributor

Re: Cluster Alias

Cluster alias is not suitable for your use as it will be owned by one system as long as there are connections to it. Use the load balanced name in DNS as discussed.
____________________
Purely Personal Opinion
John Eerenberg
Valued Contributor

Re: Cluster Alias

Ian,

Just so I am clear (networks are somewhat vague to me).
I, more or less, do nothing in VMS. Hand the IP addresses of the systems to the DNS folks and let them set it up?

If so, my life just got easier.

john
It is better to STQ then LDQ
Jan van den Ende
Honored Contributor

Re: Cluster Alias

Mahmood, John.


Yes, if all is "normal operation", this works fine.
But...
if one node leaves the cluster, as long as its address stays in the RoundRobin, every user that happens to get that address will have to wait for timeout, then gets another address. In an N-node cluster his chance will be 1/N that he gets the non-responding address again (etc, etc..)
If it is a planned down, and you cooperate well with DNS management, then let them temporarily take that address out of the Round-robin (do it max-interactive-session-length ahead of planned down, and your system will be free of users for your planned down!) Unscheduled node-out requires you to have this done unplanned, and quickly.
This is where Metric & Loadbroker can help you.
Your DNS has to be set up to allow your service-name address (same intent, but NOT the same as cluster-alias!) to be updated dynamically.
Each 'failover' interval the loadbroker gets from each node the relative compute power, and the average CPU load during last interval. The address of the node that can 'best' handle extra load becomes the address that will be assigned for the next interval.
Unlike round-robin, this DOES take into the calculation the different capacities of different machine types, and, if there is a heavy unbalance in the load generated by some processes, that also.

This mechanism (as well as round-robin) can be greatly thwarted by longtime name caching in routers, because that bypasses DNS!!


hth,


Jan
Don't rust yours pelled jacker to fine doll missed aches.

Re: Cluster Alias

Hi all,

I think we are missing something here.

The 'old' way of cluster alias is the one used now. One of the VMS systems is telling the DNS: "Hey, i am the cluster and my name is 'thingy'." Nothing changes, all connections using the cluster name 'thingy' (telnt, ftp, or whatever) go to that and only that node.

A somewhat newer (but error prone as stated) way is to have a round-robin DNS entry. Most current DNS servers support such an option.

I have not worked with it but IIRC the loadbroker tool should be able to view the actual load per system and then tell the DNS to use the address of the least used system as the cluster address. Thus balancing the load.

Like i stated, i haven't done anything with it yet but i think Mahmoud is trying to get this last option to work. One thing NOT to do then is to define a cluster alias in the VMS TCP/IP configuration because you add a new address as the cluster address. And every connection using this address wil be disconnected when the alias swaps to another node.

Regards,
Martin
This must be Thursday, I never could get the hang of Thursdays.
Willem Grooters
Honored Contributor

Re: Cluster Alias

Mahmoud,

http://forums1.itrc.hp.com/service/forums/questionanswer.do?threadId=385987

contains a discussion on the subject as well, it may solve your problem or give you some hints.

Willem
Willem Grooters
OpenVMS Developer & System Manager
Mahmoud_1
Frequent Advisor

Re: Cluster Alias

Hi to All.

Thanks for answering me and your time.
In fact the major problem I am facing is the soft wore that we using cant issue the NAME to create session we have to issue the IP/Address so the DNS will not work.

I tried all what you tell me but as I can say the only way for this is to enable the cluster alias from VMS only and work like the LAT protocol load balance .

My quistion is why TCPIP configuration still asked for the Cluster Alias if its not working straight forward ????

If any of HP Technical supports can answer, It will be appreciated.

Best regards to all
Jan van den Ende
Honored Contributor

Re: Cluster Alias

Well Mahmoud,


My quistion is why TCPIP configuration still asked for the Cluster Alias if its not working straight forward ????


The trouble is: it _IS_ working straightforward... seen from the IP ( = U*IX ) perspective.
We, (VMS) have been spoiled by the fact that way back when the DECnet engeneers did a MUCH better job, and that is what _WE_ have come to expect to be staightforward.

Not all change is necessarily for the better :-(

Sorry, but I honestly think we can not help you any better, but AFAIK there currently _EXISTS_ no better.

Wouldn't it be nice if IP engeneers went for some training with their DECnet colleages?

Jan
Don't rust yours pelled jacker to fine doll missed aches.

Re: Cluster Alias

Mahmoud,

Let me resume: You are not using a name to connect to the VMS cluster, but you always use an IP address.

Well in that case you will probably never be able to get it to 'balance the load'. Simply because in IP it is impossible that two or more machines use the same address at the same time.

Coming to think of it it might be possible to set up a NAT-like router to perform the load balancing but i don't know if that is available and i foresee some problems with a single point of failure like that in areas where VMS clusters are used for near 100% availability.

And thanks for the (my first) points.

Regards,
Martin Hoogenboom
This must be Thursday, I never could get the hang of Thursdays.
Uwe Zessin
Honored Contributor

Re: Cluster Alias

Mahmoud,
the LAT load balancing does not work like the traditional TCP/IP 'cluster alias'. It uses the service name, but it maintains a list of node names and their rating. It then chooses which node to connect to based on the rating.
.
Mobeen_1
Esteemed Contributor

Re: Cluster Alias

Mahmoud,
I understand the limitation that you have. As the software that you use seems to be going by the IP rather than the DNS name.

As many of the folks have indicated over here, if you really want load balancing then that can probably not be achieved using TCPIP on the server side.

I would still think that you would be able to some how achieve this on the DNS front, although i am not very sure.

Guys,
Does any of you think that, just like DNS name alias, we could have an IP alias defined on DNS. I have not heard about this myself, so not sure. I know it doesn't make sense as it completely defeats the purpose of having DNS :-) or if there are any other tools that you are aware of, that helps in achieving this?

regards
Mobeen

Ian Miller.
Honored Contributor

Re: Cluster Alias

I think there is some confusion. Load Broker etc works by having a NAME in the DNS with multiple IP addresses (one for each system in the cluster). When the user telnets to the system specifying the name DNS returns an address (or parhaps a ordered list) and the telnet connection is made to that address. Which address is returned can depend on system load if Load Broker etc is used. This requires a DNS server that can have the definition of the name updated regularly.

This is not as responsive as a LAT Service name for various reasons (DNS caching, limitations of the mechanisim etc) but for IP based connections its what you have.

Cluster alias is a single IP address which at any moment in time is owned by one node in the cluster. There may be a name defined in DNS for this address or not. The cluster alias IP address can move from one node to another in the cluster periodically (how often it moves can be defined) BUT will only move if there are no active connections. This makes the cluster alias IP address unsuitable for load balancing of telnet connections. It can have a use for services which use short lived connections.
____________________
Purely Personal Opinion
Mobeen_1
Esteemed Contributor

Re: Cluster Alias

Ian,
I totally agree with you, but see quote from Mahmoud below

Quote Mahmoud
" In fact the major problem I am facing is the soft wore that we using cant issue the NAME to create session we have to issue the IP/Address so the DNS will not work."

His initial question was

1. How can he load balance the user sessions
among all the nodes in his cluster

For this question, many of us, including
myself suggested him that he look at
DNS round robin

But he says that he has got some limitation in the sense that, his software/application that probably does the logins, likes to directly use IP instead on the DNS names?

This to me definetly is hardcoding and a bad practise, but who knows what limitations they have.

Mahmoud,
Correct me if i am wrong in making any of the conclusions above

regards
Mobeen
Mobeen_1
Esteemed Contributor

Re: Cluster Alias

Jan,
I agree with you on the limitation of the DNS round robin, which is when one of the node goes down, normally a telnet session will have to timeout before the connection is estabilished to the node that is alive.

I am in an environment where 1000s of users log in and out of my servers. This used to be a major headache for us and the helpdesk used to recieve lots and lots of calls when the user sessions used to time out :-)

Hence, normally as a part of our shutdown procedure we follow the couple of additional steps listed below

1. Before shutting down a node in the
cluster, ask the DNS admin to remove
the entry for that node from the alias

2. Ask the network admin to flush the cache
on the router

Once we were done with this, things were smooth. I am glad that you bought up these and i am sure it will benefit to some if not all

regards
Mobeen
Jan van den Ende
Honored Contributor

Re: Cluster Alias

Yes, Mobeen, more or less the same with us
(it was already discussed in the stream referenced by Willem).
Since we have an interactive session time limit of 10 hours, we have DNS management take a node's IP addresses (multiple NIC's!) out of the round robin table a day before scheduled shutdown, as like in your scheme.

The timeout trouble arises when a node leaves the cluster UNplanned. Especially if it happens out of office-hours, and those able to recognise that are NOT aware of it and/or to quickly adjust DNS tables are NOT available.

Jan
Don't rust yours pelled jacker to fine doll missed aches.
James Cristofero
Occasional Advisor

Re: Cluster Alias

We use LBROKER for connections/availability not load balancing. METRIC must be used in conjuction with LBRoker to perform this task with ratings set. However round-robin is performed based on the subset definition of IP's defined in the config file (one-third/one-half of the cluster IP's)

We've actully configured multiple aliases as we have a large cluster. LBROKER pushes the updates out to DNS but only one node actively performs this task until it is removed from the cluster (shutdown or other method)
Jan van den Ende
Honored Contributor

Re: Cluster Alias

Hello James,
we did exploit that as well.

As this stream goes on we are digging ever deeper into the details of how we have set things up, but yes, multiple aliasses can give great benefit.

Maybe about time to spread some ideas how to configure things to your benefit, if you have a situation that is not too different from ours, and you are prepared to invest a lot of setup effort in a very flexible configuration.

We have defined a service name for EVERY available application, including (potential) different names for, eg, test environment, evaluation of an intended new version, etc.
Our network also is completely redundant.
Maximum interactive connect time is 10 hours.

Normally, each of applic service names is a CNAME for the cluster alias, which is a round-robin alias over all nodes, which are CNAMES of all NICs of their node.
Now,
schedule a node for maintenance? Remove it's NIC's from the round-robin table
schedule one network for maintenance? Remove all NICs for that network.
schedule installing a new version of an application?
change that applics service name to be a round-robin CNAME over all but one nodes, and tomorrow use that one node to do the install or upgrade (make well sure to have your logicals set up so as to not interfere with the production version on the other nodes). Create a version-specific CNAME to the new version, and grant Applic Mgt access to that. If they decide it to be OK, change over the applic service name to the new node
(in a schedule consistent with appl requirements of course). Adapt the clusterwide applic logicals to duplicate the new version node's (which can than be removed), and change the CNAME back to cluster.
Result: applic rolling upgrades implemented.

There is no requirement to update front-end systems (thousends!).
Even complete replacement of cluster nodes is not even noticed at the front-end level.

Of course this DOES require easy coordination & cooperation with DNS management!

If I confused anyone: sorry, just skip it.
If it gave you some ideas you could use: that's why I posted this.

Jan
Don't rust yours pelled jacker to fine doll missed aches.
Martin P.J. Zinser
Honored Contributor

Re: Cluster Alias

Hello Mahmoud,

if you are using numerical IP addresses, you are out of luck. You will always connect to the same system, as at any given time only one adapter in the network is able to hold a particular address. The same is actually true for DECnet for that matter. OTOH since you do explictly mention telnet I am hard pressed to imagine a reason why you can not use a name and employ one of the various DNS based techniques discussed in this thread. Can you maybe give us some further information on the reasons why it has to be a numerical address?

Thanks, Martin
Mahmoud_1
Frequent Advisor

Re: Cluster Alias

Hi all,
Thanks for help.
For all whom asked about why we use the address instead of name that because we are using a terminal emulator and it's not support the IP address. Another reason is we have a cluster system running True64 and they have acluster alias with defrent IP address. Another reason is why there is acluster alias option in the TCPIP$CONFIG ? and it's not working .

Best regards
Uwe Zessin
Honored Contributor
Solution

Re: Cluster Alias

Mahmoud ,

Tru64 Unix uses a failover mechanism for the IP-addresses - there is no load balancing.

The cluster alias option in OpenVMS TCP/IP is working - it is just not working like you expect. (The developer has already admitted that this implementation was an error ;-)
.
Keith Parris
Trusted Contributor

Re: Cluster Alias

(In the long run, it would be very advisable to change the clients to use a DNS name lookup instead of a hard-coded IP address. It could be very painful for you in the future if you ever have to change IP address ranges or something.)

If you need flexibility in terms of on which node in the cluster a numeric IP address lands, consider using failSAFE IP, available with TCP/IP 5.4. This allows a hard-coded IP address to be moved around between separate systems in the cluster (or between multiple adapters on a single system).

It doesn't give you load balancing of connections, but might give you some more flexibility. And you can have multiples of these IP addresses in a cluster, whereas you can only have one IP cluster alias. So if you point different sets of clients to different IP addresses, you could statically balance the load across cluster members to some extent that way.

See Matt Muggeridge's article "Configuring TCP/IP for High Availability" in the OpenVMS Technical Journal V2 at http://h71000.www7.hp.com/openvms/journal/v2/index.html