Снимок ZFS в файл как Резервное копирование с вращением

У Вас есть несколько опций:

  • Компьютеру C нужна ссылка на ту же физическую сеть как A, и B идут.
  • Маршрутизатор Y должен иметь адрес в 192.168.0.0/16, и маршрутизатор Z нужен маршрут для 192.168.0.0/16 через маршрутизатор Y.
  • Создайте IP IP (или VPN) туннель между компьютером C и компьютером A; трафик маршрута для 192.168.0.0/16 через туннельный интерфейс.

Создание туннеля является, вероятно, Вашим лучшим выбором для изменения только компьютеров A и C. См. практическое руководство IP IP для шагов.

14
08.02.2014, 09:14
1 ответ

Если Вы храните снимки в файлах, в противоположность в файловой системе (например, с zfs receive), я боюсь, это не возможно.

ZFS на стороне получения

Если Вы используете ZFS на отправке, и на стороне получения можно избежать необходимости передавать целый снимок и только передавать различия снимка по сравнению с предыдущим:

ssh myserver 'zfs send -i pool/dataset@2014-02-04 pool/dataset@2014-02-05' | \
  zfs receive

ZFS знает о снимках и хранит взаимные блоки только однажды. Наличие файловой системы понимает, что снимки позволяют Вам удалить старые без проблем.

Другая файловая система на стороне получения

В Вашем случае Вы храните снимки в отдельных файлах, и Ваша файловая система не знает о снимках. Как Вы уже заметили, это повреждает вращение. Вы любой должен передать все снимки, которые потратят впустую пропускную способность и пространство памяти, но позволяет Вам удалить отдельные снимки. Они не зависят друг от друга. Можно сделать возрастающие снимки как это:

ssh myserver 'zfs send -i pool/dataset@2014-02-04 pool/dataset@2014-02-05' \
  > incremental-2014-02-04:05

Для восстановления возрастающего снимка, Вам нужны предыдущие снимки также. Это означает, что Вы не можете удалить старый incrementals.

Возможные решения

Вы могли сделать incrementals как показано в моем последнем примере и делать новое невозрастающее каждый месяц. Новые incrementals зависят от этого невозрастающего, и Вы свободны удалить старые снимки.

Или Вы могли изучить другие решения для резервного копирования. Существует rsnapshot, который использует rsync и жесткие ссылки. Это делает очень хорошее задание при вращении и является очень эффективной пропускной способностью, так как это требует полного резервного копирования только однажды.

Затем существует bareos. Это делает incrementals, которые являются bandwith-и экономящий место. Это имеет очень хорошую функцию; это может вычислить полное резервное копирование от ряда incrementals. Это позволяет Вам удалить старый incrementals. Но это - довольно сложная система и предназначенный для больших установок.

Лучшее решение, однако, состоит в том, чтобы использовать ZFS на стороне получения. Это будет эффективная пропускная способность, устройство хранения данных, эффективное и намного быстрее, чем другие решения. Единственное действительно недостаток, о котором я могу думать, состоит в том, что у Вас должен быть минимум 8 GiB память ECC на том поле (Вы могли бы согласиться с 4 GiB, если Вы не выполняете сервисов и только используете его для zfs receive).

12
27.01.2020, 19:51
  • 1
    да это, я знаю. Но что, если я удаляю (потому что я только хочу иметь историю 30 дней), файл dataset@2014-02-04? Затем мне только сделали изменения после 4-го февраля, но не каждый файл. –  Martin Grohmann 05.02.2014, 23:19
  • 2
    @MartinGrohmann я вижу то, что Вы имеете в виду теперь. Хорошо это - красота ZFS, можно удалить старые снимки на ZFS без проблем. В других файловых системах необходимо сохранить старые. Возможно, Вы более обеспечены с чем-то как rsnapshot затем. Или Вы могли запустить новое невозрастающее после одного месяца и затем удалить предыдущий incrementals. –  Marco 05.02.2014, 23:24
  • 3
    за Вашу справку; я просто нашел двуличность, Это - вероятно, способ пойти со способностью шифрования. двуличность –  Martin Grohmann 05.02.2014, 23:27
  • 4
    @MartinGrohmann является хорошей программой, но она страдает от той же проблемы. Если Вы только делаете incrementals, Ваше пространство продолжает расти. Вы не можете освободить пространство, не тратя впустую пропускную способность и делая новое полное резервное копирование. Или пойдите ZFS с обеих сторон или взгляните на bareos, он может вычислить новое полное резервное копирование от incrementals. Это позволяет Вам удалить старый incrementals, не повторно передавая все. –  Marco 05.02.2014, 23:33
  • 5
    Если пропускная способность из Вашего источника является проблемой, потенциальное решение (который я реализую для своего дома ZFS NAS теперь), должен всегда только отправлять incrementals в Вашу удаленную систему хранения, но один раз в месяц вращать удаленный freeBSD VPS (например, на цифровом океане), который может затем открыть последний полный снимок, zfs recv некоторый # incrementals в него, то сохранить результат как новый снимок. VPS только должен быть вокруг достаточно долго для создания нового основного резервного копирования. Цифровой океан имеет API, позволяющий легкое создание / разрушение их VPSes. И Ваша локальная система должна только отправить возрастающие резервные копии. –  stuckj 06.11.2016, 04:20

Теги

Похожие вопросы