Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 SQL Server 2008 Forums
 High Availability (2008)
 Active Active 2k8 - Instance name

Author  Topic 

Bruce Sherwood
Starting Member

12 Posts

Posted - 2010-09-02 : 19:50:43
I seem to be having trouble grasping a concept. Every where I have read the whole topic of ACTIVE/ACTIVE SQL cluster instances hits a communication wall.

Yes, it does appear you can create ACTIVE/ACTIVE failover clusters with SQL 2008 "Standard Edition". By this I mean each cluster node (physical server) can run a separate SQL server instance. This does not mean it is running on both physical servers at the same time, but just one at a time and failing over to the other when required.

That is all well and good.

The part that gets me is I was under the impression that each SQL instance was sitting in its own virtual environment. If so why cant it be the 'default' non-named instance? Is this just some limitation of the actual service instances installed to the physical servers? Or am I just not getting it?

My experimentation so far says that there can only be one 'default' instance in a fail over cluster, and all other instances must be NAMED instances (regardless of the fact you reach them by a separate server name and IP address).

tkizer
Almighty SQL Goddess

38200 Posts

Posted - 2010-09-03 : 00:36:05
You can only have one default instance and each named instance name must be unique. It's because of a limitation of Windows and naming things in the registry and wherever else the settings are stored.

Why does this matter though?

Tara Kizer
Microsoft MVP for Windows Server System - SQL Server
http://weblogs.sqlteam.com/tarad/

Subscribe to my blog
Go to Top of Page

Bruce Sherwood
Starting Member

12 Posts

Posted - 2010-09-03 : 14:28:26
In reality it appears to be a limitation with how Microsoft implements each clustered SQL instance.

Basically the keyword is 'instance'. Each instance gets its own copies of the SERVICES for SQL Server, SQL Agent, fulltext, etc. You can not have two copies of an installed service with the same name.

So I guess my confusion (coming into this as a noob) comes from thinking in terms of a virtualization platform (like VMWare) in which every instance is an independent named and isolated environment. Where you can have a default SQL instance running and where it is sitting means nothing.

Obviously lesson learned.

"Why does this matter though?" Because there are applications that can benefit from 'raised availability' but do not support named instances. Sure, they are usually home grown, but that does not make their importance an lower.
Go to Top of Page

russell
Pyro-ma-ni-yak

5072 Posts

Posted - 2010-09-03 : 14:35:03
there is nothing stopping you from running multiple instances of your homegrown apps.

if you want your apps to be cluster aware, you'll have to build that in yourself.

as for VMs, the VM has a name, and each VM can host a default instance of SQL.

I'm not sure what you're confused (or concerned) about.

"Instance" when we're talking about SQL Server, means an installation of SQL Server. Obviously multiple instances on the same host need their own name.

Think of each VM as a host in this case.
Go to Top of Page

tkizer
Almighty SQL Goddess

38200 Posts

Posted - 2010-09-03 : 19:37:04
I can't imagine any home grown app caring about the server name or instance name. If they did, you could always mask it with a SQL alias unless they are doing something with @@SERVERNAME or similar.

I think maybe some of the confusion is with the virtual terms involved with clustering and virtualization platform. They are different but similar.

Tara Kizer
Microsoft MVP for Windows Server System - SQL Server
http://weblogs.sqlteam.com/tarad/

Subscribe to my blog
Go to Top of Page
   

- Advertisement -