Take the 2-minute tour ×
Webmasters Stack Exchange is a question and answer site for pro webmasters. It's 100% free, no registration required.

I am developing a site for a client who is emphasizing "no downtime allowed".

Now even cloud hosting doesn't provide a 100% up-time promise, so I've been thinking about mirrored hosting, where if one host goes down, the other takes over. I am unsure how I'd go about setting the DNS to switch on an outage and this is running low budget, as it's a non-profit organization.

If anyone has experience doing this, I'd like to know the best way to go about it.

The site is LAMP. I did think about adding disallow in the robots.txt for the duplicate site to avoid SEO penalties, but other than that am running blind, so any advice would be gladly received.

share|improve this question

4 Answers 4

up vote 2 down vote accepted

In your case, the solution should be at least 2 servers with the same content and a frontend proxy which proxies the traffic to the servers and handles failover in case one server is down.

But it is a quite complex configuration and you probably need to hire a sysadm to configure and manage it unless you know what you are doing.

share|improve this answer
1  
We have an experienced sysadmin available who can do this, but I'm one of those types who loves to figure stuff out for himself first. Or in this case, be shown the way so I can go off and figure it out. Eventually the sysadmin will have the reigns anyway, but I'll have learned a lot more if I can figure it all before I hand over to him. I appreciate your answer here. –  Paul Dec 4 '10 at 23:56
    
I agree with your approach. :) –  Simone Carletti Dec 5 '10 at 14:19

I understand that the client is always right, but I think it would be in your (and his) best interest that this is an unattainable goal. There are reasons why hosts don't promised 100% uptime: because they can't anticipate the future.

I once had a client like this that started complaining when his website went down for the first time in 6 months. I explained to the client that web hosts are much like power companies. When the power goes out, what do you do?

  1. Call into the power company to explain your outage/complain
  2. Nothing and wait for the power to come back on

Most hosts promise a 99.x% uptime per month. The client needs to understand that that's usually under an hour a month and sometimes that downtime doesn't all sites. Is the amount of sales they lose during those couple of minutes a month justify paying double for hosting? And in your case, the client is a non-profit with a low budget, so that question seems to answer itself.

The other issue is that no solution is perfect for this job. Sure, you could name fallbacks for DNS, but that only works if the DNS server goes down. And you could play around with some complex proxy settings, but that costs money that your client has made clear it doesn't/can't spend.

share|improve this answer

Its a simple solution. Buy hosting service from two different providers. Preferably in different geographic regions.

For DNS of your site example.com use the two different IP addresses from the providers.

Example. ISP #1 assigns you IP aaa.bbb.ccc.ddd IPS #2 assigns you IP www.xxx.yyy.zzz

Then your DNS entry would look like

aaa.bbb.ccc.ddd example.com www.xxx.yyy.zzz example.com

When you do a nslookup you will get 2 IPs instead of one. In this case your requests would be load balanced between the two sites and if one is down the other would be available.

There will be a challenge with the DB though, but you sysad should be able to figure it out :)

-Sysadmin

share|improve this answer
    
Appreciated. Actually, the database shouldn't be that difficult, as I'm planning on using Amazon's web services. –  Paul Dec 6 '10 at 1:56

I found the answer on another question, I feel pretty silly as I already knew this--I was just looking for something more complex when the answer was in fact simple.

Each provider should provide a list of the DNS servers to use while registering your domain. It may look something like this:

NS1.ACME.COM
NS2.ACME.COM
NS1.EXAMPLE.COM
NS2.EXAMPLE.COM

You enter all 4 of these DNS servers in when you register your domain (or in the editing of your domain properties). As a result, if acme.com's DNS servers go down, then example.com's servers will take over.

share|improve this answer
1  
The problem with that is you're assuming the DNS server is the one going down. The most likely scenario is your site going down while the DNS server stays up. In that case your still will still be down and in order to make the switch happen, you're going to have to take down the DNS server. Even then DNS gets cached and can take hours or even days depending on how often they refresh the cache. –  Davy8 Dec 4 '10 at 15:58

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.