SQL Server 2005 cluster. Active-Active. We want to create two instances. The two nodes are named:
I read somewhere that there can only be ONE default instance in a 2005 cluster. So I interpret that as meaning that I can only have one instance named after a virtual server (example: mike-940-03) and the other instance has to be a slashed instance (example: mike-940-03/instance1). But what if I create another virtual server (example: mike-940-04). Can I install a default instance in that server? Can someone help me clarify this?
Also, if I'm using all slashed instance names, then what does it choose as the base name before the slash? In other words, what decides which virtual server name is used? Is it the management node? Is it one of the nodes?
My objective is to keep consistency in the naming on the cluster. If I have to use slashed instances, then I want all sql server instances to have a slash.
Sorry about the confusing explanation, but that's probably a symptom of MY confusion.
Nope. Think of it this way. If you have a three node cluster, and you shut two of them down, what is left? All of the virtual servers will be running on a single node. Since that is a possibility (however rare), you can not have two default instances running on the same cluster.
"Base name" or hostname is determined by the name of the virtual server. This is determined by the creation of the Virtual server at the OS level. We have overridden this name with a DNS alias, but that will only get you as far as the hostname, and can not replace the \instancename.
When you create a cluster using Windows, what you really do is create a single virtual server that is actually based on one or (nearly always) more than one physical servers. So for ease of discussion, let's assume you create a cluster (virtual server) named STOOGE using three physical servers, CURLY, MOE, and LARRY. You can still connect to CURLY, MOE, or LARRY if you really want to, but there are consequences to doing that so you really only want administrators to do such a thing, and then only if they understand the consequences of dealing directly with cluster resources. The rest of the world (your user base, applications, etc) will only see STOOGE and will neither know nor care whether a given snippet of code is physically running on CURLY, MOE, or LARRY at any given moment in time.
Since the STOOGE server is one Windows server, it can only support at most one un-named instance of SQL Server. Even though STOOGE could support an unnamed instance, it is a bad idea and I'll explain that a bit later.
Applications and services on a Windows cluster have a "preferred node" and a "failover path" through the cluster. The "preferred node" is the machine that you'd like to have the service or application run upon if it can. The "failover path" describes the order of the machines that you'd like the cluster to use for the service or application (so that the cluster can try to use the nodes in the order that you'd prefer). Applying this bit of info to your example, you could create nodes A, B, and C so that A preferred CURLY, B preferred MOE, and C preferred LARRY... Later on, when the budget allowed for more hardware you could add a new server SHIMP and make it the first server in the failover path for A, B, and C.
The possibilities are almost endless, and they depend almost 100% on your specific circumstances. The scenario that I've sketched out just gives you some ideas, but hopefully it helps you to understand the "moving pieces" well enough to sketch out a design that suits your needs.
One final observation that I'll throw out that might be the best single piece of advice I can give someone new to Windows Clustering... If you have an MS-PSS (Microsoft Premier Support Services) agreement in place, this is the time to use it! Your TAM or ADC will bend over backwards to get you off on the right foot with clustering, and whatever you do spend on consulting will usually come back to you at least a hundred fold! If you do not have an agreement, now would be a good time to investigate one, and even if you have to pay for consulting services it will almost certainly be worth your while! Ths really is a great time to "call in the big dogs" because you can learn so much, so fast that will make your life so much easier (and probably cheaper too) that you almost can't go wrong asking for expertise at this point!