Основная информация по резервному копированию¶
Введение¶
Резервное копирование (бэкап) — это создание копий данных (файлов, систем, баз данных) на отдельном носителе или в облаке для защиты от утери, повреждения или атак.
В отношении воркспейса применяется термин "резервное копирование моделей." Это процесс по выгрузке данных модели из оперативной памяти на постоянный носитель (диск сервера). Как мы понимаем, модель развернутая на воркспейсе и доступная пользователям (модель в онлайн режиме или активная модель) развернута в оперативной памяти. Все изменения в модели производятся именно в памяти и при сбое питания или перезапуске сервера данные будут потеряны. Поэтому в самом воркспейсе есть медаль периодического бэкапа модели. Он настраивается и управляется через админ панель воркспейса. Полноценным бэкапом это не является так как выгрузка производится только на локальный системный диск и данный механизм предназначен только для нормального функционирования воркспейса. Бэкап модели предназначен для восстановления модели на работающем воркспейсе. От сбоев в работе системы и самого воркспейса он не защищает.
Таким образом для нормального функционирования системы требуется организация резервного копирования самой системы и данных воркспейса на диске. Данный раздел посвящен организации таких мер в сети.
В данном разделе мы будем говорить о резервном копировании воркспейса, но при этом затронем и резервное копирование логин центра. Воркспейс требует для своей работы логин центра и часто применяется схема совместной установки логин центра и воркспейса на одном сервере.
Структура каталога¶
Если воркспейс (и/или логин центр) установлен по стандартным рекомендация на отдельном разделе с переносом каталогов LXC и Docker структура каталогов на диске имеет следующий вид.
Warning
Это типовая структура каталогов. В вашей системе могут отсутствовать каталоги относящиеся к логин центру в случае если воркспейс стоит отдельно или каталоги резервных копий при обновлении если данная процедура еще не выполнялась. Более подробно смотрите ниже описание назначения каталогов.

Каталоги логин центра:
- docker - внутренне хранилище данных службы docker. Может отсутствовать если каталог docker не был перенесен на отдельный том. Не обязателен для резервного копирования.
- login-center - основной каталог данных логин центра
- login-center-backup - каталог резервной копии логин центра. Создается для хранения резервной копии логин центра при обновлении. Нужен только для быстрого отката на предыдущую версию. Может отсутствовать если не выполнялось обновление. Не обязателен для резервного копирования.
- login-center-install - каталог с дистрибутивом логин центра. Для
восстановления логин центра нам обязательно нужен дистрибутив. Если данный
каталог отсутствует значит дистрибутив лежит по другому пути. Его нужно найти
и разместить здесь. Дистрибутив логин центра нам нужен только при установке
или обновлении логин центра. Во время работы логин центра он управляется через
команду
manage. Но дистрибутив содержит docker образы необходимые для работы логин центра. При восстановлении на новом сервере они будут отсутствовать и нам нужен дистрибутив.
Каталоги воркспейса:
- lxc - каталог с lxc контейнером воркспейса. Может отсутствовать если не был выполнен перенос каталога lxc. Для резервного копирования не обязателен. При остановке воркспейса контейнер в данном каталоге уничтожается, а при запуске создается заново из дистрибутива воркспейса. Нам он не нужен при запуске воркспейса.
- workspace1 - основной каталог данных воркспейса. Директории в данном каталоге подключаются внутрь lxc контейнера воркспейса и в нем воркспейс сохраняет все данные моделей.
- workspace-backup - каталог резервных копий при обновлении воркспейса.
Аналогично логин центру не нужен для резервного копирования. Мы его используем
при проведении обновлений для быстрого отката на предыдущую версию. Так как при
обновлении воркспейса могут проходить миграции меняющие структуру базы данных
если обновление пошло не по плану, мы не сможем поднять воркспейс из
дистрибутива предыдущей версии. В этом случае нам понадобится данная резервная
копия что бы вернуть каталог
workspace1к состоянию до обновления и запустить из дистрибутива до обновления или выполнить повторную попытку обновить воркспейс. После обновления воркспейса и внесения пользователями изменений в моделях, данная резервная копия уже не актуальна. Каталог так же может отсутствовать в вашей системе если обновлений еще не проводилось. - workspace-install - каталог с дистрибутивами воркспейса. Как было сказано
ранее, контейнер lxc каждый раз разворачивается из дистрибутива. К созданному
lxc контейнеру монтируются каталоги данных из директории
workspace1. Без дистрибутива мы не сможем восстановить воркспейс. Обязательно к резервному копированию.
Warning
Обязательно следует проверить манифест воркспейса на предмет переноса директории хранения бэкапов моделей. У воркспейса есть такая возможность указать каталог на отдельно разделе для хранения бэкапов моделей. Следует проверить секцию манифеста container.Synced Folders если она имеет подобный вид:
Требуется указанный в переменной externalPath путь так же включить в план
резервного копирования, а при восстановлении воркспейса на новом сервер
запланировать воссоздание аналогичной структуры каталогов.
Состав резервной копии¶
Таким образом состав резервной копии должен включать:
- Логин центр
- login-center
- login-center-install
- Воркспейс
- workspace1
- workspace-install