Резервные копии
Что копируется, чем и как часто, что в копию не попадает и в каком порядке портал возвращают из неё после отказа машины.
Портал хранит данные двух разных видов, и копии с них снимаются по отдельности: записи — учётные записи, задачи с их историей, переписка в чатах, настройки типов задач, журналы — и файлы: всё, что положили в базу знаний, и всё, что задачи создали. Готовые команды и для того, и для другого идут в поставке.
Из чего состоит копия
| Что | Что внутри | Чем снимается |
|---|---|---|
| Записи портала | учётные записи, задачи и их история, переписка, настройки, журналы | pnpm backup:db |
| Файлы | база знаний, файлы задач и чатов, рабочие каталоги | pnpm backup:files |
| Файл настроек | адреса служб, ключи доступа к ним, секреты входа | копируется руками |
Команды не копируют файл настроек (.env), созданный при установке. Без него нельзя
восстановить адреса хранилища и ключи служб. Храните его копию вместе с остальными
секретами компании.
Куда, надолго ли и с какой проверкой
Копии складываются рядом с хранилищем — при установке это папка backups внутри него, и
путь настраивается. Записи сжимаются, файлы уходят одним сжатым архивом.
Каждый запуск удаляет копии старше семи дней; срок настраивается. Место под них
считайте отдельной строкой: копия файлов — архив всего хранилища, и лежит она по умолчанию
внутри него же. Архив сжат, но сильно меньше не станет — в базе знаний лежат PDF,
картинки и офисные файлы, которые уже сжаты сами. Закладывайте под копию столько же, сколько
занимают данные: запас в 30% из требований к
машинам её не вмещает.
Свежую копию записей портал сразу открывает и проверяет. Испорченную он не оставит, а остановится с ошибкой. Пока копия не готова целиком, она лежит под временным именем: работа, прерванная на середине, не подменит собой вчерашнюю копию.
По умолчанию копии лежат на той же машине и на том же диске, что и сам портал. От испорченного файла и от ошибки человека это спасает, от отказа диска не спасает. Увозите их с машины: на другой сервер, в хранилище копий компании, на ленту, куда принято у вас.
Настройте расписание копирования
Расписание задаётся отдельно при установке. Типовой вариант: копировать записи каждую ночь, а файлы раз в неделю, поскольку записи меняются чаще и занимают меньше места.
При отказе теряются данные, созданные после последней копии. При ночной копии записей это до суток работы, при недельной копии файлов — до недели загруженных документов. Хотите терять меньше, снимайте чаще; других рычагов здесь нет.
Что в копию файлов не кладётся
Служебные кэши поиска. Они целиком выводятся из самих файлов и записей портала, весят много и в копии не нужны: портал соберёт их заново.
Возврат из копии
Обе команды возврата — pnpm restore:db и pnpm restore:files — перезаписывают то, что
на портале сейчас, поэтому каждая сначала спрашивает подтверждение и ждёт слова yes.
Файлы возвращают из одного архива целиком, а не по подкаталогам. Внутри хранилища часть служебных файлов лежит в одном экземпляре, а задачи и чаты ссылаются на них; при раскладке по отдельным архивам каждая ссылка разворачивается в самостоятельную копию, и хранилище молча распухает. Команда из поставки делает правильно — если копируете своими средствами, делайте так же.
Проверьте копию до того, как она понадобится
Раз в квартал разверните последнюю копию на запасной машине и войдите в портал. Так вы проверите целостность данных и наличие сохранённого файла настроек.