Каков наиболее подходящий способ постоянного зеркалирования всех настроек и данных с одной машины Linux на другую? У меня есть критически важный сервер, для которого я хотел бы иметь «горячий резерв» на случай, если какой-либо сбой компонента приведет к отключению его. У меня есть RAID и резервные источники питания, но сбой в памяти / процессоре / материнской плате все равно может отключить его. Достаточно ли использовать rsync ежечасно / ежедневно для копирования файловой системы на идентичный компьютер?
Это не «способ» сделать это, а целая куча способов, которые зависят от ваших потребностей. rsync может сделать достаточно копирования, чтобы восстановление было возможным, но это не обязательно ответ, который вам нужен.
Достаточно ли использовать rsync ежечасно / ежедневно для копирования файловой системы на идентичный компьютер?
Хороший вопрос, правда? Возникнут две проблемы:
Вы также должны следить за тем, например, что серверы баз данных не справляются только с резервными копиями клонов rsync, если вы не проявите особую осторожность - они очень чувствительны к множеству различных файлов, совпадающих, и если они работают в то время, когда вы rsync, могут возникнуть проблемы.
Вы можете улучшить пункт 2, используя моментальные снимки LVM, которые обеспечат постоянный момент захвата машины - что делает ваш клон эквивалентом жесткой перезагрузки при запуске, что не так уж плохо для восстановления.
Вы можете попробовать настроить rsync, чтобы минимизировать риск трех укусов, но полностью исключить его нельзя.
В любом случае, другие места для поиска - это общие файловые системы, такие как GlusterFS, или инструменты общего диска, такие как DRBD, которые дают вам различные компромиссы в отношении восстановления и надежности.
В конечном счете, однако, все дело в том, что нужно вашему бизнесу, и в компромиссе. Хорошие резервные копии для аварийного восстановления помогают решить проблему.
Единого решения для резервного копирования нет.
Что касается данных, не относящихся к БД, я согласен с Трэвисом. Кардиостимулятор / сердцебиение и DRBD - это то, что вам нужно.
Что касается настроек, это зависит от того, насколько красивы вы хотите получить:
сделайте ваш выбор.
Базы данных - еще один зверь. Копирование их файлов может работать, но я не рекомендую это делать. В наши дни большинство движков баз данных имеют встроенную репликацию. Посмотрите, подходит ли ваш и соответствует ли он вашим потребностям.
Я бы использовал что-то вроде Кардиостимулятор / сердцебиение + drbd для решения проблем доступности и синхронизации данных.
Pacemaker будет управлять ресурсами на уровне машины, такими как переключение сетевых ресурсов (перемещение IP-адресов между системами), запуск и остановка приложений (apache, mysql, postgres и т. Д.).
DRBD будет использоваться для репликации на уровне блоков на диске, чтобы гарантировать, что ваши данные будут как можно более актуальными между вашей основной машиной и горячим резервом.