Документация 0.4 Администрирование
Резервные копии и ключи
Что копируется #
| Что | В копии |
|---|---|
| Основная база (процессы, задания, журнал, очереди, пользователи, определения отчётов, лицензия) | tulpar.dump |
| База отчётов (записи отчётов, копия данных для SQL) | tulpar-reports.dump |
Пакеты процессов, сертификат HTTPS, orchestrator.json |
files\packages, files\certs, orchestrator.json |
| Скриншоты и файлы заданий | files\artifacts — только с -IncludeArtifacts |
| Ключ шифрования | не копируется — только его экспорт master.tkey, если он сделан |
Роли рабочих областей в базе отчётов в копию не входят: сервер создаёт их заново после восстановления.
Копия по расписанию #
Windows — разово:
& "C:\Program Files\Tulpar\Orchestrator\backup.ps1" -BackupDir D:\Backups\Tulpar
Ежедневно в 02:30 — задача планировщика от имени SYSTEM (PowerShell от администратора):
$action = New-ScheduledTaskAction -Execute 'powershell.exe' `
-Argument '-NoProfile -ExecutionPolicy Bypass -File "C:\Program Files\Tulpar\Orchestrator\backup.ps1" -BackupDir D:\Backups\Tulpar'
$trigger = New-ScheduledTaskTrigger -Daily -At 02:30
Register-ScheduledTask -TaskName 'Tulpar Backup' -Action $action -Trigger $trigger -User 'SYSTEM' -RunLevel Highest
Хранятся последние 14 копий (-Keep 14). Дату последней копии видно в «Состояние системы»; если копии нет 7 дней —
предупреждение и оповещение „Состояние сервера“. Копируйте папку копий на другой компьютер или NAS.
Linux (Docker):
cd /opt/tulpar && sh ./backup.sh /backups
echo '30 2 * * * root cd /opt/tulpar && sh ./backup.sh /backups >> /var/log/tulpar-backup.log 2>&1' | sudo tee /etc/cron.d/tulpar-backup
Ключ шифрования #
Пароли учётных данных и пароли ролей базы отчётов хранятся в базе зашифрованными (AES-256-GCM) мастер-ключом. На Windows ключ защищён DPAPI компьютера — на другом сервере его не прочитать без экспорта.
| Действие | Команда | Когда |
|---|---|---|
| Экспорт | Tulpar.Orchestrator.exe keys export --out D:\Сейф\tulpar-master.tkey |
Сразу после установки и после каждой замены ключа |
| Загрузка | Tulpar.Orchestrator.exe keys import --in D:\Сейф\tulpar-master.tkey |
На новом сервере после восстановления (служба остановлена) |
| Замена | Tulpar.Orchestrator.exe keys rotate |
По политике безопасности: новый ключ, все пароли перешифровываются (служба остановлена) |
Файл экспорта зашифрован вашим паролем (не короче 10 символов). Пока экспорт не сделан, «Состояние системы»
напоминает об этом. Следующая резервная копия кладёт файл экспорта в копию как master.tkey. После замены ключа
сразу сделайте новый экспорт — старый файл больше не подходит.
В Docker: docker compose exec orchestrator dotnet Tulpar.Orchestrator.dll keys export --out /var/lib/tulpar/exports/master.tkey,
затем docker compose cp orchestrator:/var/lib/tulpar/exports/master.tkey .
Восстановление на чистом сервере #
Windows:
- Установите PostgreSQL и сервер Tulpar (Установка сервера); мастер первого запуска проходить не нужно.
- Восстановите копию (база будет заменена; спрашиваются пароль
postgresи пароль файла ключа):
Скрипт останавливает службу, пересоздаёт обе базы и загружает дампы, возвращает пакеты и сертификат, загружает ключ изcd "C:\Program Files\Tulpar\Orchestrator" .\restore.ps1 -BackupPath D:\Backups\Tulpar\tulpar-20261116-023000master.tkeyкопии (или-KeyFile D:\Сейф\tulpar-master.tkey) и запускает службу. - Войдите прежним логином и проверьте «Состояние системы»: ключ шифрования в порядке, нет сообщений о недостающих ключах.
Linux (Docker): положите docker-compose.yml, .env и secrets/master.key прежнего сервера (или выполните
init-secrets.sh для новых — тогда нужен master.tkey в копии), затем:
docker compose up -d
sh ./restore.sh /backups/tulpar-20261116-023000
Идентификатор установки хранится в базе — после восстановления на другой машине лицензия продолжает действовать.