Virutal Names for a Cluster

  • In regard to clustering and the virtual server name. If you have multiple instances on the cluster, do you have to specify a different Virtual Name for each instance or can you use the same Virtual Name for each instance?

    Either way, does anyone have any official doco that confirms this?

  • DSmith11 (9/14/2011)


    In regard to clustering and the virtual server name. If you have multiple instances on the cluster, do you have to specify a different Virtual Name for each instance or can you use the same Virtual Name for each instance?

    Either way, does anyone have any official doco that confirms this?

    Each instance should have their own virtual name. basically each instance will be a seperate resource group with their own name and ip.



    Pradeep Singh

  • You have no guarantee that all the virtual instances are running on a specific node, so each instance must have its own IP address and name. My general recommendation is as follows:

    * Only use named instances

    * Instance name should not be in use as host name on the network, and unique in the enterprise

    * Instance name and network name shall not be the same

    * Create a CNAME record for the instance name pointing to the network name of the instance.

    Let me have a few lines telling why:

    If you know the instance name, you know how to connect to the instance: MyDBInstance1\MyDBInstance1.

    If you need to move the instance to a different server (or even cluster), you may install the instance on that server. You can know for sure that the instance name does not already exist on that server. When the install and testing is done, move your data and you only have to alter the CNAME record for having the clients connecting to the new server. This is WAY simpler than having to change dozens of connetion strings.



    Ole Kristian Velstadbråten Bangås - Virinco - Facebook - Twitter

    Concatenating Row Values in Transact-SQL[/url]

  • Thanks guys, appreciate your comments.

    Do either of you know of any official documentation that supports this, because my boss wants the virtual name the same f or each instnace, and I'm trying to find something official to go back to him with?

  • Here is the clustering whitepaper.

    http://www.microsoft.com/download/en/details.aspx?id=19736

    In a cluster, when you install a sql server instance, you put all resources (db engine, sql server agent, disks, IP etc) in a resource group. During failover, all resources belonging to a group are moved to the other node.

    You cannot have two SQL Server instances to be a part of same group.

    And hence each group must have a virtual server name, an IP besides other dedicated resources.



    Pradeep Singh

  • Thanks for your post.

    Yes I'm aware of that re disks, etc being apart of a Resource Group but what I was specifically referring to was say two instances of SQL within a Cluster with the same virtual server name. For example:

    V1\InstanceName1

    V1\InstanceName2

    rather than

    V1\InstanceName1

    V2\InstanceName2

    All I see in that document is the below which doesn't say whether it has to be a unique name or not and I can't seem to find any doco that says this either way:

    "11.On the Virtual Server Name page, enter the name of the SQL Server virtual server. This will be the name used if it is a default instance, or if it is a named instance, the first part before the backward slash. Click Next to continue."

  • http://msdn.microsoft.com/en-us/library/ms189910.aspx:

    "During SQL Server 2008 R2 Failover Cluster installation, computer object (Active Directory computer accounts) for the SQL Server Network Resource Name is created."



    Ole Kristian Velstadbråten Bangås - Virinco - Facebook - Twitter

    Concatenating Row Values in Transact-SQL[/url]

  • Thanks okbangas, but I don't really understand what problem that causes? Do you mind explaining please?

  • DSmith11 (9/14/2011)


    V1\InstanceName1

    V1\InstanceName2

    rather than

    V1\InstanceName1

    V2\InstanceName2

    in the above example, V1 and V2 will be the resource name (or the instance name or the virtual server name).

    For named instance, it'll be V1\V1 and V2\V2

    and not [V1\InstanceName1 or V1\InstanceName2]

    Not even [V1\InstanceName1 or V2\InstanceName2]

    However, the previous post also pointed out this fact

    During SQL Server 2008 R2 Failover Cluster installation, computer object (Active Directory computer accounts) for the SQL Server Network Resource Name is created

    when you install a failover cluster instance, a computer object is created (which is a virtual server).



    Pradeep Singh

  • V1 and V2 will be the SQL Server Network Names with InstanceName1 and InstanceName2 being the actual instance names of the SQL Install.

    So you finish up with:

    V1\InstanceName1 (Node 1)

    V2\InstanceName2 (Node 2)

    What I'm wondering is can you use the same SQL Server Network Name for both instances on the cluster (A/A), and that's what I'm trying to find some supporting documentation to validate that or not.

    So you finish up with:

    V1\InstanceName1 (Node 1)

    V1\InstanceName2 (Node 2)

    Apologies if I'm confusing you with my responses. Hope the above makes it clear.

  • If V1 and V2 are physical nodes which form the cluster, whenever you install a sql server, it'll have to be identified by it's own name (virtual server or resource group).

    you can install sql instance1 on V1 like V1\Instance1 but it wont be a failover cluster. It'll be a standalone instance.

    when you install a SQL Server failover cluster, it will be identified by a virtual server. the entire group (OR virtual server) will be active on a particular node at a time. And one SQL Server group can have only 1 sql server instance. If this virtual server's name is VServer1, users will connect to it by using VServer1\Vserver1. They dont have to worry weather this instance is physically running on Physical Node V1 or Node V2.



    Pradeep Singh

  • Looks like I need to do some more explaining as we're still not on the same wave length.

    I have:

    Node1 = MachineName1

    Node2 = Machine Name2

    Network Name = V1

    Instance1 = InstanceName1

    Instance2 = InstanceName2

    Can you just have one network name for the two instances? As this:

    V1\InstanceName1 (Node 1)

    V1\InstanceName2 (Node 2)

    or does it have to be two network names like this:

    V1\InstanceName1 (Node 1)

    V2\InstanceName2 (Node 2)

    That's what I'm trying to prove either way in whether network names need to be unique for every instance on the cluster or whether you can use the same one for each instance.

  • Can you specify V1 in more detail. What are you referring to by specifying V1 as Network name?



    Pradeep Singh

  • Let me repeat: The AD computer name object of the instance is created during setup, so no.



    Ole Kristian Velstadbråten Bangås - Virinco - Facebook - Twitter

    Concatenating Row Values in Transact-SQL[/url]

  • I'm referring to V1 as an example of what i would list in the "SQL Server Network Name" textbox and whether I can use the same value for multiple instances installed on the cluster or whether it has to be a unique value for each instance:

    okbangas - why does that matter though? What's the affect of this?

Viewing 15 posts - 1 through 15 (of 22 total)

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