I have an Idea for fail-over high availability for my website but i am not sure if this is good, bad or a disaster in itself.
My main server hosts an ASP.net website that uses a SQL server database on another server.
Both servers are running mirrored raid drives, two network cards, 2 switches etc. The provider is guaranteeing 99.999% up time but something did go wrong and they took almost a a day before it resolved.
I am more concerned about issues like domain name / dns issues that are out of our direct control and may take 6-24hours to propagate.
Or for that matter wide spread disasters that might take out our main data center, power lines, network connectivity infrastructure, domain hijacking, and the rise of man eating undead ;) etc.
So My Idea is as follow: Host a second domain at another provider in another country. Call the domain something similar to the main site name.
Have a server for the site and a server for the SQL db hosted at this secondary provider. The webserver is setup and configured with the website exactly as the main site.
My main SQL server mirrors (using High Performance mirroring) to the secondary server at the secondary provider every 5 minutes.
Assume for some reason the main site is unreachable due to something big and nasty going on.
Change the DNS to point to the backup domain and get the word out on twitter, facebook etc that anybody who needs my site can use www.backupdomain.com until the dns updates propagate across the web.
Would this work and is there a better option that would handle issues like this?
Most of the research I have done pointed to fail over clusters, load balances,duplicate hardware, mirroring and the like, which I do realize will make the local hosting redundant, but how do i handle wider spread interruptions.
The budget is also limited so we can't spend millions on a super duper Google never die system. But something that can handle a really bad disruption and only take 30mins to 1 hour downtime would be perfect.
Tip, suggestions, links are all welcome.