Active\Active SQL server cluster

  • Hello All, I'm a bit confused on how the failover processes works on a SQL server 2000  two node active/active cluster in terms of handling system databases.

    Given the following

        You have 2 node active/active cluster NodeA & NodeB and  If I'm not mistaken a two node active\active cluster will have 2 instances running i.e NodeA will have a default instance and NodeB will have a named instance.

       My Question is  if for example NodeA fails, NodeB will take over all cluster resources of NodeA including the master database, How does that work , I mean after the failover the master database of nodeA will be managed by nodeB. how can nodeB manage two master databases in the same time when there is only once instance of sql server on nodeB. 

  • When you install SQL2K on a cluster of two nodes (say NodeA and NodeB), you install it onto a virtual server. If you are in Active/Active mode, you will have two virtual servers (say Server1 and Server2). One of these can have a default instance, or both may have named instances.

    So for example, you may install named instance SQL1 onto Server1, giving you Server1\SQL1 and named instance SQL2 onto Server2, giving you Server2\SQL2. Each SQL instance has its own master, msdb, model, and tempdb databases.

    Lets say you start with NodeA owning virtual server Server1, and NodeB owning virtual server Server2. If NodeA fails, NodeB picks up Server1 and is now running virtual server Server1 with SQL instance Server1\SQL1 as well as virtual server Server2 with SQL instance Server2\SQL2. Each SQL instance is still running with their own system databases, even though the physical node has changed.

    The key thing is that it is the virtual servers that are running things. This all happens behind the scenes, and users still connect to the same virtual server (which is still only running the one SQL instance) even though it is now on a different physical node in the cluster.


    Tony

  • So the virtual server is Server1\SQL1?

    Our current task is to set up legato co-standby. The virtual server appears as a created instance with the default instance sharing the data files and each has seperate IP address.  Node B is set up the same sharing the same virtual server name.

      Do you see a problem with this set-up for SQL Server 2000? 

    example:

    Server1(default instance) and  VirtualC

    Server2(default instance)  and VirtualC

     

    Thank you for your feedback!

  • The virtual server is Server1 on which is running a SQL instance Server1\SQL1 (or just plain Server1 if it was a default instance instead of a named instance)

     


    Tony

  • Thanks Tony, so in essense realy a virtual server is then some sort of a hidden instance. Although when setting 2 node active/active cluster we're  installing one instance per server but internally there must be 2nd instances being installed on both servers that are hidden. Hense the virtual servers.

  • All the resources for the virtual servers are installed on cluster-managed resources, and are thus owned and run by only one of the nodes at a time. They are 'virtual' because they are exposed via names and IP addresses that are mapped onto those of the current owning node. Thus, there are no second instances on each of the physical nodes, it is just that only one of the physical nodes at a time actually hosts each instance and exposes it as a virtual instance.


    Tony

Viewing 6 posts - 1 through 5 (of 5 total)

You must be logged in to reply to this topic. Login to reply