Назад | Перейти на главную страницу

DRBD или аналогичный RAID по сети в медленных / ограниченных сетях

Я ищу способы создать какую-то репликацию файлов без слишком большой потери производительности при файловых операциях. Настоящий RAID не вариант из-за ограничений нетехнического характера.

Насколько я понимаю, DRBD пытается действовать как настоящий RAID1, сразу распределяя изменения. Из того, что я читал, это имеет смысл только в том случае, если серверы действительно расположены близко друг к другу (одна и та же стойка). Однако я могу жить с некоторым лагом (например, 15-30 минут) между репликацией файловой системы и частичной потерей данных в случае отказа HD.

Вы можете указать мне какое-нибудь направление? Есть ли репликация файлов не в реальном времени? Или мне лучше просто снова и снова вызывать rsync? Существуют ли какие-либо тесты для сравнения DRBD с разными задержками с системами Software-RAID.

Еще две идеи для вас:

  • Использовать DRBD в режиме «A» (= асинхронный режим) и увеличьте количество буферов (максимум должен быть около 8 МБ). Это позволит drbd немного отставать.
  • Использовать rsync, но также используйте режим rsync-server для своих целей. Таким образом, процесс подсчета контрольной суммы ускорится.

Вы также можете использовать NBD с MDADM, я просто оцениваю аналогичный сценарий для клиента, но я еще не пришел к проведению тестов.

Возможно, решением будет GlusterFS. http://www.gluster.org/

По моему опыту, он достаточно хорошо справляется с медленными сетями.

Если задержка и некоторая потеря данных не вызывает беспокойства, вы можете написать свой собственный небольшой сценарий rsync, например:

rsync -av --delete /etc /root /home /usr /etc /var /opt user@nfs.example.org:/

И запускать каждые 15 минут. Однако это может быть слишком медленным при сборе и передаче всех данных, и это может быть не выполнено до следующего запуска. Хотя, когда rsync запускался хотя бы один раз, в последующих запусках он выполняется довольно быстро.

Вы также можете попробовать rsnapshot: http://www.debian-administration.org/articles/217

«Как и многие другие решения для резервного копирования, rsnapshot - это сценарий, построенный на основе OpenSSH и Rsync - последний используется для синхронизации содержимого каталогов без использования чрезмерной полосы пропускания, а первый - для обеспечения шифрования и безопасности обмена данными».