none
Multiple named instances within a single clustered SQL virtual server resource group

    Question

  • First, thanks for taking the time to read my question.

    here's my scenario.  I have been running SQL clusters for years now, about 10 years.  But along the way we find issues or ways we can do things better.  What I have found to be my biggest issue is the ABC drive letters in a cluster.  So I think I should start using mount points but I have not been able to find a resource that describes how to use a mount point for a new SQL clustered VS that DOES NOT require a lettered drive within the resource group.  I don't have the need for multiple mount points within a single SQL VS  (IE one for logs and data etc...), but rather I have the need for 30+ SQL VS each with their own mount point.  However to do this it requires a lettered drive within each resource group, what the hell does that accomplish...  Nothing.  So here are my ideas....

    Idea # 1  (Using Mount points on C)

    Since "C" is a local disk and not a SAN disk this seems like a logical solution.

    1. Create identical folders on the "C" drive of each node "c:\mountpoints" (similar to (ClusterSharedVolumes but I would not setup CSV)
    2. Create my resource group in cluster manager, and add my new SAN disk to this group.
    3. Create mount point for the new disk as "c:\mountpoints\sqlserver1  (dependancy is "C" drive)
    4. Install SQL server using a unique name, IP etc...
    5. I now have a clustered SQL VS using C:\mountpoints\sqlserver1 as my mount point 

    Repeat steps 2-5 29 times this would create....

    SQLSERVER2 (MountPoint is C:\MountPoints\salserver2)

    SQLSERVER3 (MountPoint is C:\MountPoints\salserver3) 

     Is this supported.  I wouldn't see why not.

    Idea # 2 (preferred) using SQL named instances

    • Create my resource group in cluster manager, and add my new SAN disk to this group.
    • Install SQL Server using a named instance, unique IP etc...  IE: SQLSERVER1\APP1
    • I now have a single resource group, a single Clustered SQL VS running as a named instance (APP1)
    • Here's the part I can't figure out...  How to add a named instance to an existing Clustered SQL Virtual server "SQLSERVER1".  IE: SQLSERVER1\APP2  and SQLSERVER1\APP3 and so on....

    Can I do Idea # 2?  Is Idea #1 supported?

    I find a lot of people do not use terms correctly on forums, especially "Instance".  This makes searching really difficult.  So to clarify for everyone, an instance is NOT your cluster group or each SQL server you install on a cluster.  An instance is a separate installation of SQL server using the same hostname.

    EXAMPLE...

    2 Node Cluster

    • ResourceGroup1
    • Windows name (Server1)
    • IP
    • SQL Server (Server1)
    • SQL Server Agent (Server1)
    • ResourceGroup2
    • Windows name (Server2)
    • IP
    • SQL Server (Server2)
    • SQL Server Agent (Server2)

    You can setup each SQL VS as a named instance.  IE Server1\APP1   (App1 IS your named instance and nothing else)

    Server1 and Server2 are Clustered SQL Virtual Servers.  They are NOT INSTANCES.

    hopes this helps!


    • Edited by jtroberts1 Thursday, October 03, 2013 3:49 PM
    Thursday, October 03, 2013 3:48 PM

Answers

  • "

    SQLSERVER2 (MountPoint is C:\MountPoints\salserver2)

    SQLSERVER3 (MountPoint is C:\MountPoints\salserver3) 

     Is this supported.  I wouldn't see why not.

    "

    That is not supported.  If you use mount points you still must have a dedicated drive letter for each instance.

    Moving forward you should use Hyper-V for consolidating large numbers of small SQL Server instances, or SMB if you really need more clustered instances than you have drive letters.

    David


    David http://blogs.msdn.com/b/dbrowne/

    • Marked as answer by jtroberts1 Thursday, October 03, 2013 4:45 PM
    Thursday, October 03, 2013 4:14 PM

All replies

  • Hi,

    you can use SMB file shares to get around the drive letter limitation.  Here's a good article on how to do it.

    http://www.sqlskills.com/blogs/jonathan/failover-clustering-without-a-san-sql-server-2012-and-smb-for-shared-storage/


    Thanks, Andrew
    My blog...

    Thursday, October 03, 2013 4:05 PM
  • "

    SQLSERVER2 (MountPoint is C:\MountPoints\salserver2)

    SQLSERVER3 (MountPoint is C:\MountPoints\salserver3) 

     Is this supported.  I wouldn't see why not.

    "

    That is not supported.  If you use mount points you still must have a dedicated drive letter for each instance.

    Moving forward you should use Hyper-V for consolidating large numbers of small SQL Server instances, or SMB if you really need more clustered instances than you have drive letters.

    David


    David http://blogs.msdn.com/b/dbrowne/

    • Marked as answer by jtroberts1 Thursday, October 03, 2013 4:45 PM
    Thursday, October 03, 2013 4:14 PM
  • Thanks David for the quick reply.  your answer is what I feared.  Hyper-v or similiar was my plan until licensing costs got in the way.  It's very simple to use clusters and license SQL by the CPU.
    Thursday, October 03, 2013 4:45 PM
  • Thanks Andrew.  I like the SMB option and thanks for the link.  I guess the real issue is HA for the SMB share.  I know that can be clustered, but the "what if's" come to mind....  what if the SMB goes offline during DB writes.  do I now have a corrupt DB.  sounds risky to me.

    I guess I could add the SMB share to the SQL resource group and make it a dependency.  But ow I'm back to the same issue with drive letters.  I could mount the SMB C:\MountPoints  that seems cleaner than my IDEA #1.  think that would be supported?

     thanks

    Thursday, October 03, 2013 4:52 PM
  • > It's very simple to use clusters and license SQL by the CPU.

    Licensing for a multi-node cluster is very similar to licensing for unlimited virtualization.  Both require Enterprise Edition licenses on the host machines.  In virtualization you have an additional option of licensing individual VMs, but that is only useful when most if the VMs running are not SQL Sever VMs.

    David


    David http://blogs.msdn.com/b/dbrowne/

    Thursday, October 03, 2013 5:00 PM