Резервное копирование всей 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

И через некоторое время вы должны вернуться в синхронизации.

Другие вопросы по тегам