Резервное копирование всей NILFS в удаленное местоположение
Я надеюсь внедрить NILFS на моем МСП, но мне нужно немного помочь. Я должен сделать резервную копию текущей системы и всех снимков / контрольных точек на другом континенте, чтобы аудиторы были довольны. В настоящее время я использую систему домашнего приготовления (на основе Subversion), и я могу просто перенести ее на другой компьютер на другом континенте. Однако - как я могу удаленно сделать резервную копию файловой системы NILFS? Есть ли для него утилита NILFS или есть версия rsync для блочной копии linux, которую я могу использовать?
Заранее спасибо за помощь.
Ура,
Нил
1 ответ
Нет никакой утилиты для копирования снимков на разных континентах, и rsync определенно не будет работать. Я вижу два возможных варианта здесь:
использовать DRBD. Создайте кластер DRBD между вашими двумя сайтами. Протокол A позволяет поддерживать достаточно хорошую производительность в большой глобальной сети и ограниченной пропускной способности. Исходная файловая система NILFS будет полностью реплицирована по месту назначения с контрольными точками, снимками и всем остальным.
использовать репликацию снимков ZFS. Это отличается от NILFS, но вы можете получить снимок каждые 15 или 30 секунд, если это необходимо. Однако у вас не будет (как обеспечивает NILFS) полная контрольная точка для каждого файла, созданного и измененного.
[edit] Поскольку, по-видимому, вам нужна полная и непрерывная репликация, DRBD+NILFS2 кажется лучшим решением. Единственное ограничение, которое у вас будет, - когда вы выполняете синхронизацию на уровне блоков, конечно, вы можете использовать файловую систему только на одном конце одновременно (в основном на стороне "master").
Когда (и если) вам нужен доступ к файловой системе как на "основной", так и на "удаленной" стороне, вы должны сделать что-то вроде этого:
На мастере беги:
sync
Сразу после этого на рабе бегите:
drbd disconnect all
# check that you're offline...
drbd primary all
Затем вы можете смонтировать том на ведомой стороне (пока он еще используется на главной стороне). Разумеется, репликация приостанавливается, пока вы обращаетесь к тому с обеих сторон.
Когда вы закончите, просто переподключите обычным способом: на раб работает
drbd secondary all
drbd --discard-my-data connect all
на мастер-беге
drbd connect all
И через некоторое время вы должны вернуться в синхронизации.