Процесс обновление Sherpa Orchestrator (локальная версия)

Общая информация об обновлении

Обновление Sherpa Orchestrator включает следующие компоненты:

  • Обновление файлов приложения

  • Обновление структуры базы данных

  • Обновление зависимостей Node.js (если требуется)

  • Перезапуск сервисов

Резервное копирование перед обновлением

Всегда создавайте резервные копии перед обновлением!

Резервное копирование базы данных

# Создайте дамп базы данных
mysqldump -u root -p orchestrator > orchestrator_backup_$(date +%Y%m%d_%H%M%S).sql

# Создайте дамп архивной базы данных (если используется)
mysqldump -u root -p orchestrator_archive > orchestrator_archive_backup_$(date +%Y%m%d_%H%M%S).sql

Резервное копирование конфигурационных файлов

# Создайте резервную копию конфигурации
cp -r /opt/SherpaOrchestrator/backend/config /opt/SherpaOrchestrator/backend/config_backup_$(date +%Y%m%d_%H%M%S)

# Создайте резервную копию SSL-сертификатов
cp -r /opt/SherpaOrchestrator/backend/config/certs /opt/SherpaOrchestrator/backend/config/certs_backup_$(date +%Y%m%d_%H%M%S)

Резервное копирование логов и данных

Скачивание файлов обновления

Остановка сервисов перед обновлением

Создание резервной копии текущей установки

Распаковка и установка обновления

Восстановление конфигурации

Важно: После восстановления проверьте, что в backend/config/phinx.php указаны те же пароли БД, что и в config.ini (параметр 'pass' в секции environments). Иначе миграции при обновлении базы данных завершатся ошибкой.

Обновление базы данных

Обновление Node.js зависимостей (если требуется)

Запуск сервисов после обновления

Проверка работоспособности после обновления

Очистка после успешного обновления

Возможные проблемы при обновлении

Проблемы с базой данных

  • Проверьте корректность настроек в config.ini и phinx.php

  • Убедитесь, что пользователь БД имеет достаточные права

  • Проверьте логи миграций

Проблемы с веб-сервером

  • Проверьте синтаксис конфигурации Nginx: sudo nginx -t

  • Проверьте логи: /var/log/nginx/error.log

  • Проверьте пути к PHP-FPM socket

Проблемы с WebSocket

  • Проверьте логи PM2: sudo pm2 logs Websockets

  • Проверьте зависимости Node.js: npm list

  • Проверьте доступность портов

Роллбэк при неудачном обновлении

Если обновление прошло неудачно:

Рекомендации по обновлению

  1. Всегда делайте резервные копии перед обновлением

  2. Тестируйте обновление на тестовом окружении, если возможно

  3. Обновляйтесь в нерабочее время для минимизации простоев

  4. Документируйте процесс обновления для вашей команды

  5. Проверяйте логи после обновления на наличие ошибок

Last updated