На виртуальных машинах у VMware есть такое явление как "fault tolerance". Если коротко, суть в том, что она на другом хосте держит полную запущенную копию виртуальной машины, периодически синхронизируя её с оригиналом. И в случае чиха основной машины можно в продакшн ввести копию.
Подробности можно вкурить тут (вторую ссылку укоротил, так как там в URL-е кириллица присутствует):
www.vmgu.ru/articles/vmware-fault-tolerance-main
goo.gl/hNU2vt
А в более общем случае, для обработки такого рода отказов существуют технологии кластеризации. Многие БД и прочие такие сервисы умеют работать в кластере. Соответственно, отказ одного узла кластера не приводит к отвалу всего сервиса.