Click here to monitor SSC
SQLServerCentral is supported by Red Gate Software Ltd.
 
Log in  ::  Register  ::  Not logged in
 
 
 
        
Home       Members    Calendar    Who's On


Add to briefcase

AlwaysON Multi Subnet Cluster, AG Listener Expand / Collapse
Author
Message
Posted Friday, May 03, 2013 8:00 AM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Thursday, April 10, 2014 12:38 PM
Points: 6, Visits: 218
Hello

I am not sure if this is a SQL issue or Windows Cluster issue, but am trying to rule out it being a SQL issue.

When I fail an availability group between subnets, I am finding that the DNS entry in DNS is staying. So what happens is the Availablity Group listener has 2 records in DNS, one for each IP. This causes the App to timeout at times, since DNS will return either of the two IP's.

Anyone ever run into this before?

Qsac
Post #1449216
Posted Monday, May 06, 2013 3:46 AM
Grasshopper

GrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopper

Group: General Forum Members
Last Login: Wednesday, April 09, 2014 4:24 AM
Points: 10, Visits: 111
.
Post #1449636
Posted Monday, May 06, 2013 3:46 AM
Grasshopper

GrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopper

Group: General Forum Members
Last Login: Wednesday, April 09, 2014 4:24 AM
Points: 10, Visits: 111
Hi Steve,
Have you solved the issue?
Post #1449637
Posted Monday, May 06, 2013 5:21 AM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Thursday, April 10, 2014 12:38 PM
Points: 6, Visits: 218
No I have not, please let me know if you have any insight.

Steve
Post #1449662
Posted Monday, May 06, 2013 6:44 AM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Thursday, April 10, 2014 12:38 PM
Points: 6, Visits: 218
I think I figured this out. It is done by design.

The App team has to add some new parameters to the connection string. Here is MS Link for more Info.

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

Thanks to all for the supports
Steve
Post #1449693
Posted Monday, May 06, 2013 7:02 AM
Grasshopper

GrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopper

Group: General Forum Members
Last Login: Wednesday, April 09, 2014 4:24 AM
Points: 10, Visits: 111
Brilliant!
Here's another good link for completion:
http://msdn.microsoft.com/en-us/library/ff878716.aspx

Thank you Steve
Post #1449702
Posted Monday, May 06, 2013 2:42 PM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: 2 days ago @ 10:15 AM
Points: 3, Visits: 112
I have had to do A LOT of research on this subject due to implementing a multi-subnet cluster here at my company. (For my situation, we're using Windows Server 2008 R2 SP1.) Your problem could be one of two things:

By default, when you create the Availability Group Listener, the RegisterAllProvidersIP setting will be set to 1. That means that both subnet's IPs will be attached to the DNS A-record (i.e. your listener's name). If you are using older database clients that don't support the MultiSubnetFailover option, these clients will try to arbitrarily connect to only one of those IPs. This will result in 50% of your requests timing out.

If you have RegisterAllProvidersIP set to 0, then only the online subnet's IP will be registered with DNS. This removes the 50% timeout problem above. However, keep in mind that you now need to consider your DNS replication settings and the HostRecordTTL property. When a failover occurs, the new, active node will make the update to the domain controller that it talks to. Since it's a different subnet, there's a good chance that this is a different domain controller than the previous, now "offline" node. Depending on which DNS you're looking at, you may or may not see the update immediately. Once DNS replication runs, all DNS records should match. That said, the local DNS cache on your client will rely on the HostRecordTTL property to know when to go out and get a fresh copy. The default for this value is 20 minutes, which means that you could wait up to 20 minutes to point to the new subnet's IP. Consider lowering this value to 5 minutes (or less) if you don't mind the extra network traffic to request DNS records.

The HostRecordTTL and RegisterAllProvidersIP settings are done on the Availability Group Listener cluster resource, not through DNS, AD, or the cluster itself.

Feel free to send me a message if you need any more info!

-Brandon
Post #1449885
Posted Tuesday, May 21, 2013 8:30 PM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Friday, July 12, 2013 9:24 AM
Points: 1, Visits: 69
Hi Brandon,

I'm running into the same exact issue. I'd like to offer a multi-subnet AlwaysOn AG environment to all my applications with no additional configuration on their end, similar to how Failover Cluster Instances in a traditional SQL cluster provides HA transparent to the application.

What settings did you settle on? I don't like the idea of 5 minute failovers but 50% timeouts wouldn't work at all :/

-Drew
Post #1455277
Posted Wednesday, May 22, 2013 11:15 PM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: 2 days ago @ 10:15 AM
Points: 3, Visits: 112
Hi Drew-
I would suggest a 2-5 minute HostRecordTTL and a RegisterAllProvidersIP set to 0 in your scenario.
Post #1455805
« Prev Topic | Next Topic »

Add to briefcase

Permissions Expand / Collapse