Что есть - dedicated сервер с кучей СУБД (mysql, postgresql, mongo, redis), несколькими клиентскими аккаунтами (~150 шт.), всякими сервисами (nginx/bind/postfix/dovecot/apache и несколько uwsgi серверов). Всё это раз в день бекапится через backupninja на удалённый сервер по rsync.
Что хочется - решение из разряда "настроил и забыл", которое поможет с минимальным даунтаймом (в идеале - без него), в случае падения основного dedicated быстро перекинуть все запросы на дублирующий его - почту, web, прочее.
Проблема - есть ли какие-нибудь автоматизированные средства для поддержания второго сервера в полностью актуальном состоянии по сравнению с первым? Я такого не нагуглил. Остаётся только настраивать репликацию для каждой из СУБД + синхронизация ФС. Очень не нравится то, что это не очень быстро и просто настраивать, да и выглядит такая схема не достаточно надёжной. Какие еще есть варианты?
Отдельно интересует личный опыт, кто как решает для себя данную проблему.
Здравствуйте. А как именно они помогут? Куда делать копии - место есть. Размещать всю текущую инфраструктуру на AWS будет очень затратно по сравнению с имеющимися серверами у hetzner и collocation'а.
Как мне кажется, для получения более конкретных ответов, вам следует более конкретно задать вопрос. Например, для failover Postgresql можно использовать repmgr. Для почты можно использовать штатные средства DNS: MX записи на несколько релеев разнесенных по серверам. Для mysql - репликация + failover на уровне приложения. В nginx тоже есть штатное средство upstream backend например. И так далее. Если AWS для вас очень дорого, то можно посмотреть в сторону OpenVZ (2 сластера failover на уровне контейнеров например).