October 24, 2003 at 2:19 pm
Hello everyone, say you have an active/active cluster with 2 nodes. Lets call them nodeA & nodeB . Let’s assume that is there actual server name. It will be set up so that nodeA will failover to nodeB and vice versa. nodeA (the first node to have SQL installed )will have a default instance and nodeB will have a SQL server instance called "instB". The cluster itself is named "CLUSTNODE". My question is, how do client applications reference these servers i.e. in an ADO connection string for the provider what do you put to connect to a database owned by nodeA and nodeB. Do you just use the cluster name? Or does each node need a virtual name? Thanks in advance for any explanation.
October 24, 2003 at 2:27 pm
Each node will have its own "virtual" name.
Let's say nodeA and nodeB are your physical machine names. clustnode is your cluster name. You'll then have sqlA and sqlB - network names. The ADO connection string will specify "sqlA" or "sqlB\instB".
October 24, 2003 at 2:36 pm
Thanks bbychkov, one more question. But after a failover say if nodeA fails over to nodeB I can still use the virtual name "sqlA" in my connection strings. If I'm understanding this correctly the virtual name and IP address of nodeB will be owned by nodeB after a failover?
October 24, 2003 at 2:38 pm
Sorry bbychkov, I meant "the virtual name and IP address of nodeA will be owned by nodeB after a failover?"
October 24, 2003 at 2:49 pm
Yes, Virtual name and IP address of the virtual sqlA would be owned by nodeB. Easy way to think about it:
Cluster Name: Cluster1
Physical Nodes: Physical1, Physical2
Virtual Nodes: Virtual1, Virtual2
Looking at it from an IP address side (I've chosen arbitrary IPs):
Cluster1 - 192.168.1.5
Physical1 - 192.168.1.6
Physical2 - 192.168.1.7
When I go to install the first instance (let's say I'm going to use a default instance), it'll ask me for a virtual server name as well as an IP address.
Virtual1 - 192.168.1.8
When I go to install the second instance, I only have the option of using a named instance. It'll ask me for three things, virtual name, ip address, and instance name.
Virtual2 - 192.168.1.9
I'll chose SQL2 as the instance name. So I'm looking at the following:
Virtual1
Virtual2\SQL2
My clients will refer to those virtual names (and instance name) only. I won't point them to the physical names.
Typically I'll put an instance on each physical node like so (and I'll put the Cluster name on Physical1 as well):
Physical1 - Cluster1, Virtual1
Physical2 - Virtual2\SQL2
If I actually look at the IPs the servers are listening on, I'll see the following:
Physical1 - 192.168.1.5, 192.168.1.6, 192.168.1.8
Physical2 - 192.168.1.7, 192.168.1.9
In the event of a fail-over, let's say Physical1 goes down, you'd see the following on Physical2:
Physical2 - Cluster1, Virtual1, Virtual2\SQL2
As far as IPs are concerned, you'd see
Physical2 - 192.168.1.5, 192.168.1.7, 192.168.1.8, 192.168.1.9
K. Brian Kelley
http://www.truthsolutions.com/
Author: Start to Finish Guide to SQL Server Performance Monitoring
K. Brian Kelley
@kbriankelley
October 24, 2003 at 3:37 pm
Thanks a lot for your help.
Viewing 6 posts - 1 through 5 (of 5 total)
You must be logged in to reply to this topic. Login to reply