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. 
Recommended Site Redundancy Options
dns;best practices;downtime;mirror
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.