Передо мной была поставлена задача сделать резервное копирование вне сети через WAN. Оба хранилища - это хранилища NAS на базе FreeBSD, на которых работает ZFS.
Один или два раза в неделю 15–60 гигабайт данных с фотографий сбрасываются в офис NAS. Моя работа состоит в том, чтобы выяснить, как получить эти данные как можно более надежно, используя соединение VERY SLOW DSL (загрузка ~ 700 Кбит / с). Приемная коробка имеет гораздо лучшую форму: скорость 30 Мбит / с, скорость 5 Мбит / с.
Я знаю, что перенос с жесткого диска за пределы сайта переносит данные гораздо быстрее, но в данном случае это не вариант.
Мои варианты кажутся либо:
- ZFS инкрементная отправка через ssh
- Rsync
rsync - проверенное временем решение, обладающее важнейшей способностью возобновить отправку, если что-то прерывается. Недостатком является итерация по многим файлам и отсутствие знания дедупликации.
Отправка снимка ZFS может передавать немного меньше данных (он знает намного больше о файловой системе, может выполнять дедупликацию, может более эффективно упаковывать изменения метаданных, чем rsync) и имеет преимущество, заключающееся в правильном дублировании состояния файловой системы, а не просто копировании файлы по отдельности (что является более интенсивным диском).
Меня беспокоит производительность репликации ZFS [1] (хотя этой статье уже год). Я также обеспокоен возможностью перезапуска передачи, если что-то пойдет не так - возможности моментальных снимков, кажется, не включают это. Вся система должна быть полностью автономной.
[1] http://wikitech-static.wikimedia.org/articles/z/f/s/Zfs_replication.html
Используя любую из этих опций, я смогу де-расставить приоритеты трафика, направив его через указанный порт, а затем используя QOS на маршрутизаторах. Мне нужно избегать серьезного негативного влияния на пользователей обоих сайтов во время каждой передачи, так как это займет несколько дней.
Так что ... это мое мнение по этому вопросу. Я пропустил какие-либо хорошие варианты? Кто-нибудь еще настраивал что-то подобное?
Ответы:
Если вы можете передавать максимум 6 ГБ в день (при условии отсутствия накладных расходов и нулевого конкурирующего трафика) и вам необходимо перемещать «15–60 гигабайт» с частотой «один или два раза в неделю», это составляет 15–120 ГБ в неделю или от 2 до 17 ГБ в день. Поскольку необходимо планировать пиковый спрос, а 17 ГБ намного превышают даже ваш теоретический максимум в 6 ГБ, вполне вероятно, что у вас очень серьезная проблема с пропускной способностью. Что потребуется для обновления соединения? Если обновление соединения невозможно, рассмотрите возможность рассылки физического носителя по расписанию (например, еженедельно).
Предполагая, что вы можете получить статистику пропускной способности, чтобы сделать ее более понятной, rsync , вероятно, будет лучшим вариантом. Осведомленность о дедупликации была бы чрезвычайно полезна при репликации сильно избыточных данных (например, образов виртуальных машин), но она не принесла бы никакой пользы, если речь шла об уникальном цифровом контенте (аудио, видео, фото) ... если, конечно, пользователи не непреднамеренное хранение дубликатов копий идентичных файлов.
источник
После некоторого исследования я считаю, что вы правы в отправке снимков. ZFS
SEND
иRECEIVE
команды могут быть переданы в bzip2, а затем этот файл может быть rsync-на другой компьютер.Вот несколько источников, которые я использовал:
Oracle Solaris Руководство администратора ZFS страница 211 (или веб - версия здесь ) начинает говорить о об этом.
Я также нашел сообщение в блоге, которое дало простой пример этого. Этот блог также показал передачу потока битов через bzip2 и его отправку.
Я не нашел ни одного сообщения с опубликованными сценариями репликации, но я нашел кого-то, кто разместил их сценарий резервного копирования . Тем не менее, я не понимаю, так что это может быть мусором.
Многие на сайте говорили о создании cron-работы, чтобы делать это часто. Если это так, вы можете выполнять репликацию / резервное копирование с меньшим влиянием на пропускную способность и пользователей и быть хорошей функцией аварийного восстановления, поскольку внешние данные более актуальны. (То есть после начальной порции данных при начале работы.)
Опять же , я думаю , что вы имели право идеи отправки снимков там , кажется, много преимуществ использования
SEND
/RECEIVE
.EDIT: Просто смотрел video1 video2 , что может помогает suports использование
SEND
/RECEIVE
и переговоры о Rsync (начинается в 3m49s). Бен Роквуд был спикером, и вот ссылка на его блог .источник
Какова цель резервных копий и как они должны быть доступны?
Если ваши резервные копии в основном предназначены для аварийного восстановления, то снимки ZFS могут быть предпочтительнее, поскольку вы сможете вернуть файловую систему в то же состояние, в котором она находилась во время последнего добавления.
Однако если предполагается, что ваши резервные копии предоставляют пользователям доступ к файлам, которые могли быть случайно удалены, повреждены и т. Д., Тогда лучше использовать rsync. Конечные пользователи могут не понимать концепцию моментальных снимков или, возможно, ваш NAS не предоставляет конечным пользователям доступ к предыдущим снимкам. В любом случае вы можете использовать rsync для предоставления резервной копии, которая легко доступна пользователю через файловую систему.
С rsync вы можете использовать флаг --backup для сохранения резервных копий файлов, которые были изменены, а с помощью флага --suffix вы можете контролировать, как старые версии файлов переименовываются. Это позволяет легко создать резервную копию, где вы могли бы датировать старые версии файлов, такие как
Вы можете легко объединить это с помощью cronjob, содержащего команду find для очистки любых старых файлов по мере необходимости.
Оба решения должны сохранять достаточную метаинформацию о файлах для работы в качестве резервной копии (rsync предоставляет флаги --perms, --owner и т. Д.). Я использую rsync для резервного копирования больших объемов данных между центрами обработки данных и очень доволен настройкой.
источник
ZFS должна получить функцию «возобновляемой отправки», которая позволит продолжить прерванную репликацию примерно в марте этого года. Эта функция была завершена Мэттом Аренсом и некоторыми другими людьми, и вскоре должна быть обновлена.
источник
Может быть WAN устройство сжатия будет решением ...? мы используем Riverbed, и мы им очень довольны (например, NetApp SnapMirror очень хорошо сжимается, до 80-90%)
источник