В связи с тем, что btrfs начинает работу в Oracle EL 14th в этом месяце (вместе с рабочим fsck и чисткой из Linux 3.2), я думал о том, чтобы изменить свое текущее решение для резервного копирования, чтобы использовать его. Обратите внимание, что я думаю об этом для небольших объемов данных, менее 10 ТБ, это довольно статично (менее 1% изменяется ежедневно). Короче говоря, решение для резервного копирования SMB / SOHO.
Что должна сделать резервная копия:
- сделать LVM-снимок ext [234] / XFS / JFS на рабочем сервере
rsync
/ перенести измененные данные в btrfs на сервере резервного копирования- снимок файловой системы btrfs
- удалить старые снимки, когда свободного места становится мало
Плюсы:
- Все файлы легко доступны, не требуется распаковка или циклическое подключение
- Прошлые снимки также легко доступны ...
- ... так что я могу поделиться ими как общими только для чтения Samba (с поддержкой теневого копирования)
- Снимки занимают минимальное количество места благодаря функции копирования при записи (снимок без изменений занимает буквально несколько КБ на диске)
- Высокая согласованность резервного копирования: контрольные суммы для файлов, очистка всех данных и встроенная избыточность
Вопросов:
- Существует ли какое-либо решение для резервного копирования (в форме Bacula, BackupPC и т. Д.), Которое или легко может быть известно о файловой системе копирования при записи?
- Или мне нужно будет использовать
rsync
решение в домашних условиях ? - Что люди с блоками ZFS, выделенными для резервного копирования, делают для резервного копирования своих машин Linux?
cons
! Одним из них может быть то, что снимки Btrfs эквивалентны только инкрементным резервным копиям (нет физической копии для каждой резервной копии вашего файла на диске). Что может иметь важное значение при решении проблем с поверхностью диска. Обратите внимание, что вы можете принудительно выполнить одно дублирование с помощью встроенной поддержки RAID1, включенной в Btrfs.pro
- более двух копий на самом деле не нужно, если у вас есть контрольные суммы и вы активно чистите FS, три, вероятно, будут иметь поддержку RAID6. Как я уже сказал, это настройка для специальной системы резервного копирования, а не «резервных» копий внутри ФС на одном компьютере. Это будет «RAID не является резервной копией» и «снимки не являются резервной копией».cp -a
иrsync
для этого ...rsync -a --delete /home/user /mnt/butterfs/backups/ && snapper create
- помимо создания снимка после резервного копирования, что вы подразумеваете под COW-осведомленным?rsync
без,--inplace
вы получите несколько копий одних и тех же данных в удаленной файловой системе. (rsync обычно копирует данные во временный скрытый файл, а затем перемещает его по старому файлу, при этом в файловой системе Copy-On-Write вы получаете две копии неизмененных данных таким образом)Ответы:
На прошлой неделе я много занимался поиском чего-то подобного. Я не нашел решений, чтобы сделать все 4 шага. Существуют многочисленные блоги от домашних пользователей, которые пробуют резервные копии типа rsync to btrfs , и все основные вики Btrfs рассказывают, как делать снимки Btrfs.
Есть также довольно много людей, которые пытаются различными способами вращать снимки Btrfs . Тем не менее, вы первый человек, которого я видел, кто хочет вращать снимки на основе дискового пространства. Я сам играю с btrfs-snap, который создает набор часовых, еженедельных и ежемесячных снимков, и это приятно и просто.
Проект Dirvish, кажется, отвечает многим вашим требованиям. Некоторые разработчики пытаются интегрировать Dirvish с Btrfs . Тем не менее, проект Dirvish кажется немного застопорился .
В данный момент вы находитесь впереди кривой.
источник
По словам Ави Миллера (его доклад во время LinuxConf.AU), btrfs send / receive работает над. Это будет быстрее, чем rsync, так как для поиска изменений в файлах ему не нужно проходить по каталогам ... Хотя пока я не знаю, есть ли ожидаемая дата выпуска.
Однако в btrfs-progs встроена утилита, в которой перечислены все файлы, которые изменились между снимками экрана и т. Д. Btrfs subvolume find-new
источник
Я работаю в системе резервного копирования ОС, аналогичной BackupPC. Я думал об этом. То, что мешало мне на самом деле реализовать это, это то, что вы не можете жестко связать подобъемы. Вы также можете создавать только снимки вложенных томов -> один вложенный том для каждого клиента резервного копирования. Таким образом, функция дедупликации на уровне файлов не может сосуществовать с этим подходом. И эта дедупликация на уровне файлов обычно экономит много места. Вы хотите сделать резервную копию только одного сервера?
Если бы у btrfs была дедупликация на уровне блоков, этой проблемы, вероятно, можно было бы избежать, но обычно это было бы слишком медленно ...
Тогда такой подход, конечно, повлечет за собой тесную интеграцию с одной файловой системой (btrfs), так что это должно быть дополнительной функцией.
Я спрашиваю, потому что я думаю о добавлении такой функции коровы, но не знаю, если я должен из-за перечисленных выше недостатков.
Редактировать: UrBackup поддерживает резервные копии, как описано в вопросе, теперь с ядрами Linux> = 3.6 (с поддержкой перекрестных ссылок). Посмотрите, как это настроить.
источник
cp --reflink
) либо уже реализована, либо будет реализована в ближайшем будущем. Интернет дедупликации в FS либо медленно (lessfs) или нуждается огромное количество оперативной памяти (ZFS) , поэтому в зависимости от этого будет действительно быть плохой особенностью программного обеспечения резервного копирования. В любом случае, btrfs-ориентированное ПО для резервного копирования будет иметь большую аудиторию, в конце концов, оно должно быть следующим ext3.Вики-страница btrfs " btrfs «Варианты использования » перечислены некоторые инструменты: SnapBtr , Snapper, btrfs-time-machine, UrBackup.
Есть предложение для встроенного инструмента под названием autosnap :
Однако по состоянию на октябрь 2013 года вики заявляют, что «функциональность autosnap в настоящее время не включена в вышестоящую версию btrfs».
источник
У меня были похожие разочарования, поэтому я создал несколько сценариев, которые я называю snazzer . Вместе они предлагают снимки, обрезку, измерение и передачу через ssh (но на сегодняшний день могут отправлять / получать в / из локальных файловых систем). Измерения - это просто отчеты о sha512sum и PGP-сигнатурах путей моментальных снимков. Он не совсем готов к выпуску, но я хотел бы услышать отзывы, если у кого-то есть время, чтобы просмотреть его на этой ранней стадии.
На данный момент только для CLI, но я потратил некоторое время, чтобы упростить его использование в системах со многими подобъемами btrfs - обычно у меня есть отдельные подобъемы для
/var/cache
,/home
и т.д. , которые , возможно , должны быть исключены из мгновенных снимков или имеют больше / меньше агрессивные графики сокращения.Я боюсь, что алгоритм сокращения просто принимает решения о наличии набора снимков и их датах, поэтому нет ничего, что можно было бы сократить до тех пор, пока не будет соблюдено ограничение использования диска - что вы сначала удаляете? Сначала уменьшите количество часов или дневных? Возможно, бросьте самое старое, например. yearlies? Различные развертывания будут иметь разные приоритеты; и я не могу знать, является ли это единственным уровнем резервного копирования (в этом случае вы не должны сбрасывать самые старые резервные копии в случае юридических / страховых обязательств), или просто промежуточным (в этом случае, вероятно, эти годовые архивы хранятся где-то в безопасности) в другом месте).
Я буду добавлять поддержку ZFS и / или совместимость в какой-то момент; он написан в основном в оболочках posix-ish и perl из-за сильного стремления к «нулевым» зависимостям на данный момент, я надеюсь, что в какой-то момент у меня будет более чистая альтернативная реализация на python.
источник