arculaДокументация

Подключение

План защиты

План защиты — это решение, что и как бэкапить на сервере: какие базы, тома и каталоги, каким способом, как часто и в какие хранилища. Пока план не подтверждён, бэкапов нет.

Откуда он берётся

Агент обходит сервер и присылает, что нашёл. Панель предлагает план по найденному: опознанные базы и данные приложений уже отмечены, способ бэкапа подобран. Вы проверяете, меняете и нажимаете «Подтвердить план».

Дальше агент обходит сервер сам — по умолчанию раз в 6 часов — и по кнопке «Обнаружить сейчас» на вкладке «Настройки защиты». Обнаружение только читает: ничего не меняет на сервере и не читает значения паролей, только их имена.

Где его открыть

  • новый сервер — «Подтвердить план» в строке сервера;
  • сервер с планом — вкладка «Настройки защиты» → «Изменить план»;
  • из блока «Не входит в бэкап» на обзоре сервера — «Решить в плане защиты».

Что на странице плана

БлокЧто там
«Пропало с сервера»Есть в плане, но агент больше не находит
«Данные приложений»Базы, каталоги, тома Docker и прочее: что защищать и как копировать
«Настройки сервера»Пользователи, службы, расписания, конфиги Docker, Caddy, nginx, Let's Encrypt — чтобы поднять сервер заново
«Нужно решение»То, что агент не смог опознать или прочитать
«Как часто»Профиль частоты и норма — подробно
«Где храним»Хранилища: основное и резервные — подробно
«Агент на сервере»Как часто обходить сервер и лимит staging
«Сколько храним»Старые бэкапы удаляет очистка хранилища

Внизу — итог: «В бэкап: 12 из 15, ≈ 48 ГБ · обычный · в Основной и Резервный» — и кнопка «Подтвердить план» или «Сохранить план».

Данные приложений

У каждой строки — галочка, объём, способ в колонке «Как копировать» и кнопка «Почему»: по каким признакам агент это нашёл и какой способ предлагает. Что значат способы — Способы бэкапа.

  • Метки «предположение» и «не опознано» — насколько агент уверен. «Предположение» — опознано только по образу контейнера.
  • Вложенные каталоги показаны деревом. Вложенный копируется своей строкой; если снять с него галочку, он не попадёт и в копию родителя.
  • Журналы и кеш по умолчанию не отмечены: «обычно не нужны».
  • Ресурс без подходящего способа — «адаптера нет: не защищаем или копируем файлами». Если его отметить, это будет копия файлов живой базы — без согласованности.
  • У Vault можно выбрать «копия файлов» или «снимок Vault (raft)».

Нужно решение

Сюда попадает то, о чём агент не может решить сам:

ГруппаЧто это
«тома с неизвестными данными»Docker-том, про который не ясно, чей он и что в нём
«каталоги с неизвестными данными»Каталог с данными, который не удалось опознать
«остановленные контейнеры с данными»Контейнер не запущен, но у него есть данные
«данные во внешнем хранилище»Приложение хранит данные во внешнем S3 — агент их не копирует
«нет доступа на чтение»Агенту отказано в чтении каталога

По каждому пункту — выбор:

  • «решить позже» — в бэкап не входит, у сервера остаётся замечание, например «Том uploads не попадает в бэкап»;
  • «защищать — копия файлов» — войдёт в бэкап копией файлов без согласованности. Есть у именованных томов и каталогов;
  • «не защищаем» — с причиной по желанию. Замечание у сервера пропадает, пункт остаётся в «Не входит в бэкап» с вашей причиной.

Остановленный контейнер и внешние данные можно только отметить «не защищаем». Замечаний у сервера они не дают, но видны в «Не входит в бэкап». Для нескольких пунктов одной группы есть кнопки «для всех:».

Для тома базы данных копия файлов — крайний случай: надёжнее, чтобы агент опознал сервис и снимал базу дампом.

Когда обнаружение находит новый неопознанный том или каталог у сервера с планом, он попадает сюда, у сервера появляется замечание, а в уведомления уходит «Новое без защиты».

Новое

Метка «новое» — ресурс появился на сервере после последнего сохранённого плана: его нет ни в плане, ни среди исключённых. Например, вы запустили новый проект со своей базой.

  • Новое, для которого есть способ бэкапа, уже отмечено галочкой — как в первом плане. Журналы, кеш и ресурсы без способа — не отмечены.
  • В бэкап новое войдёт только после «Сохранить план». До этого агент работает по прежнему плану.
  • Над планом — сводка: «С последнего плана на сервере: новых 2, пропало 1, изменилось 0».

Пока новое не в плане, у сервера замечание «… — новое, не в плане защиты», а уведомления приходят один раз: «найдено и не защищено — … (новое после плана)». Подробнее — Статусы сервера.

Пропало с сервера

Ресурс есть в плане, но агент его больше не находит: том удалён, каталог переехал, контейнер убран. Копировать нечего.

При сохранении плана такие ресурсы уходят из него сами. Пока план не сохранён, агент пытается их копировать, и в журнале сервера появляются ошибки, например «Нет на сервере: /srv/old». Откройте план и нажмите «Сохранить план».

Не защищаем

Снятая галочка — «не защищаем». Причину можно написать в поле рядом; для группы — кнопка «не защищаем» и одна причина на всех снятых. Причина хранится в плане и видна на странице плана в строке ресурса.

На обзоре сервера блок «Не входит в бэкап» показывает:

  • «нет дампа» — обязательный компонент не попал в последний бэкап, например упал pg_dump. Это не ваше решение, а сбой: у сервера «Критично»;
  • пункты из «Нужно решение», о которых ещё не решено, — с подсказкой и временем, когда найдено;
  • пункты из «Нужно решение», отмеченные «не защищаем», — с вашей причиной.

Если там пусто — «Всё, что нашёл агент, входит в бэкап».

Ревизии

Каждое сохранение — новая ревизия плана: «ревизия 3» в заголовке страницы плана. У неподтверждённого плана там «предложение по найденному».

  • Агент получает новую ревизию со следующим сигналом, обычно в течение минуты, и хранит её у себя. Если панель недоступна, он работает по последней принятой.
  • Бэкап, который уже идёт, доделывается по своей ревизии. Новая действует со следующего запуска.
  • Новую ревизию создают и другие изменения: настройки отправки в хранилище, смена ключа или режима ключа хранилища. И сама панель — когда агент научился новому способу бэкапа: в журнале «агент научился согласованным способам: …».
  • Если план изменили в другой вкладке, сохранение не пройдёт: «План изменили в другой вкладке — откройте страницу заново.»

Агент на сервере

  • Обнаружение — как часто агент обходит сервер: каждый час, раз в 6 часов или раз в сутки.
  • Staging — место на диске сервера для дампов баз и настроек хоста, которые ждут отправки. По умолчанию 40 ГБ, не меньше 1 ГБ. Каталоги и тома restic читает прямо с диска, в staging их нет. Наборы удаляются сами после отправки во все хранилища.

Та же статья — в панели, в разделе «Справка».