Внешняя копия и восстановление¶
Локальные резервные копии защищают вас от потерянного контейнера или неудачного обновления. Внешняя репликация и проверенный набор для восстановления защищают вас от потери всей машины, программ-вымогателей или пожара. Эта страница охватывает репликацию во внешнее хранилище, придание этой копии защиты от подделки, доказательство того, что вы можете восстановить, и восстановление, когда самого BombVault больше нет.
Внешняя репликация¶
Сохраняйте быструю локальную резервную копию и добавьте одну или несколько внешних реплик. Задайте репозиторий для каждого домена на вкладке Настройки, Внешнее. BombVault реплицирует туда новые снимки через restic copy по принципу максимальных усилий, поэтому сбой внешней копии никогда не проваливает локальную резервную копию. Локальный репозиторий остаётся основным.
- Несколько внешних целей на домен. Каждый домен (контейнеры, VM, flash, config и наборы файлов) может реплицироваться сразу в несколько внешних назначений, а не только в одно, поэтому вы можете держать, например, rest-server на машине друга и бакет S3 параллельно. Добавляйте дополнительные цели в Настройки, Внешнее, каждую со своим репозиторием, классом хранения S3, флагом append-only, хранением и бюджетом роста. Существующая настройка одной внешней копии переносится нетронутой как первая цель, и каждая цель домена реплицируется по расписанию внешней копии этого домена.
- Расписание внешней копии для каждого домена (редактируется рядом со всеми остальными расписаниями в Настройки, Расписания): оставьте его пустым, чтобы реплицировать после каждой локальной резервной копии, или задайте частоту (например
weekly Sun 03:00), чтобы отправлять во внешнее хранилище реже, чем вы резервируете локально. Кнопка Реплицировать сейчас покрывает запуски по требованию. - Хранение внешней копии живёт в Настройки, Внешнее, поэтому вы можете хранить внешние копии дольше как архив. Оставьте политику со всеми нулями, чтобы никогда автоматически не обрезать внешние снимки.
- Ограничения пропускной способности (Настройки, Внешнее) ограничивают скорость выгрузки/загрузки restic, чтобы репликация не насыщала ваш WAN.
- Индикатор репликации показывает, какой домен реплицируется, пока это происходит (на его странице и на Панели). Это активный индикатор, а не полоса процентов, потому что
restic copyне выдаёт машиночитаемого прогресса.
Восстановление прямо из внешней копии
У каждого браузера резервных копий есть переключатель Локально / Внешнее, поэтому, если локальный репозиторий потерян или повреждён, вы можете перечислить и восстановить прямо из внешней реплики. Удаление действует по источнику: удаление резервной копии затрагивает только ту копию, которую вы просматриваете.
Неизменяемая (append-only) внешняя копия¶
Пометьте внешний репозиторий как append-only, чтобы программа-вымогатель или скомпрометированный хост не могли удалить или переписать ваши резервные копии. Дальняя сторона (restic/rest-server, работающий в режиме --append-only) обеспечивает это. BombVault лишь проверяет это и никогда не показывает зелёный только на основании заявления о конфигурации.
Мастер управляемой настройки внешней копии проводит вас от выбора бэкенда (rest-server / rclone / S3) через готовый к вставке фрагмент развёртывания rest-server, тест соединения, переключатель неизменяемости (который сразу запускает тест на подделку) и стратегию хранения, поэтому append-only внешняя копия достижима без ручного редактирования конфигов.
Неизменяемые репозитории никогда не очищаются с этой машины
Неизменяемая внешняя копия намеренно никогда не очищает старые снимки. Задайте для неё тревогу бюджета роста, чтобы вас оповестили, прежде чем размер репозитория выйдет из-под контроля.
Тест на подделку¶
BombVault периодически доказывает гарантию append-only, фактически пытаясь выполнить удаление в отношении внешнего репозитория, нацеленное на несуществующий объект:
- Отказ означает защищено.
- Принятие означает не защищено.
- Неубедительный результат (сервер недоступен, ошибка аутентификации) никогда не переворачивает сохранённый вердикт.
Настоящий переворот из защищённого в незащищённое запускает одно оповещение.
Учебные DR¶
BombVault предлагает два уровня доказательства того, что ваши резервные копии действительно восстановимы, а не просто присутствуют.
- Учебные восстановления для проверки (локальные). BombVault периодически выполняет
restic check --read-data-subset(ограниченно, никогда не полное восстановление, забивающее диск) и показывает бейдж последний раз подтверждено восстановимым по каждому домену. Частота живёт в Настройки, Расписания; бейдж в Настройки, Целостность. - Учебные DR (внешние). BombVault восстанавливает реальную цель из внешнего репозитория в одноразовую песочницу, проверяет её файл за файлом и байт за байтом, затем очищает. Это доказывает, что вы можете восстановить из внешнего хранилища, а не только то, что репозиторий отвечает.
Оценочная карта защиты от программ-вымогателей на Панели сводит это в зелёную / жёлтую / красную позицию по каждому домену, с чек-листом с отметками возраста (внешняя копия настроена, append-only проверено, репликация актуальна, учебное восстановление пройдено, шифрование включено, стратегия очистки задана). Каждая красная строка ведёт прямо к исправлению, и карточка становится зелёной только на проверенных фактах.
Панель получателя (принимающая сторона)¶
Всё выше, это отправляющая сторона. На машине, которая принимает неизменяемые внешние копии от другого BombVault, панель получателя даёт вам независимый мониторинг этих репозиториев только для чтения на принимающем оборудовании, поэтому молчаливый сбой на дальнем конце не остаётся незамеченным.
Включите переключатель Получатель в Настройках, чтобы открыть вкладку Получатель. По умолчанию она отключена; включайте её только на машине, которая действительно принимает неизменяемые внешние резервные копии. Затем зарегистрируйте полученный репозиторий (только для чтения, открытый ключом отправляющего экземпляра), чтобы получить:
- Инвентарь снимков, сгруппированный по источникам, чтобы вы могли точно видеть, какие контейнеры, VM и наборы файлов прибыли.
- Последнее получение по каждому источнику, чтобы вы знали, насколько свеж каждый из них.
- Независимый запуск
restic checkна принимающем оборудовании, чтобы целостность проверялась там, где данные фактически лежат, а не только на отправителе. - Выключатель мертвеца: оповещение, когда источник перестаёт отправлять в заданном вами окне.
- Оповещения о целостности: оповещение, когда проверка на принимающей стороне не проходит.
Получатель строго только для чтения. Он никогда не пишет в полученный репозиторий, поэтому никогда не может нарушить гарантию append-only, на которую полагается отправитель.
Управляемое восстановление¶
Отдельная вкладка Восстановление проводит свежую или пересобранную установку через сценарий аварии, в одном месте:
- Сначала восстанавливает собственные настройки BombVault, поэтому пути резервных копий, внешние цели и учётные данные, которые нужны остальному потоку, приходят предзаполненными (применяются через самоперезапуск по сокету Docker, поэтому работающая база данных настроек никогда не перезаписывается под открытым дескриптором).
- Проверяет, что BombVault может прочитать ваши резервные копии (подводный камень с ключом шифрования сразу впереди).
- Позволяет вам указать на ваш существующий репозиторий (локальный или внешний).
- Находит контейнеры, VM и наборы файлов, хранящиеся в нём.
- Восстанавливает их все (оставляя остановленными, чтобы вы запускали их обдуманно), с вашим набором для восстановления в одном клике.
Плановая миграция против аварии
Управляемое восстановление восстанавливает собственные настройки BombVault из резервной копии. Для планового переезда на новую машину вы можете вместо этого перенести конфигурацию напрямую с помощью карточки Экспорт и импорт настроек (переносимый файл JSON). См. Конфигурация.
Восстановление из репозитория другого BombVault¶
Отдельная карточка на вкладке Восстановление открывает репозиторий другого экземпляра BombVault (общий ресурс, смонтированный под /mnt, или удалённый URL) с APP_KEY этого экземпляра, в одноразовой сессии только для чтения. Просматривайте хранящиеся там контейнеры, VM и наборы файлов, выберите снимок и восстановите его, и восстановленный объект становится обычным локальным контейнером, VM или набором файлов. Ничто никогда не записывается в другой репозиторий, а ваши собственные настройки резервного копирования остаются нетронутыми (сессия живёт в памяти и истекает сама собой). Перемещение контейнера с сервера A на сервер B больше не означает перенаправление настроек репозитория и их откат после. Живая федерация сервер-к-серверу явно вне области; это намеренный одноразовый вытяг.
Набор для восстановления ключа шифрования¶
Это та часть, которая делает аварийное восстановление возможным даже когда нет работающего BombVault.
Один клик загружает мастер-ключ, производный пароль restic и точные расположения репозиториев и команды, поэтому вы можете восстановить прямо с помощью CLI restic на любой машине. Напоминание на Панели пилит вас, пока вы его не сохраните.
Храните набор для восстановления вне сервера
Набор содержит секрет, который расшифровывает ваши резервные копии. Держите его в надёжном месте отдельно от сервера (менеджер паролей, распечатанная копия в сейфе). Если вы потеряете и BombVault, и APP_KEY без набора для восстановления, ваши зашифрованные резервные копии не могут быть восстановлены.
Поскольку определения восстановления живут внутри каждого репозитория (<repo>/def, <repo>/vm-def), скопированная папка репозитория полностью самодостаточна, поэтому набор плюс репозиторий, это всё, что нужно для восстановления на голом железе.