Сценарии аварийного восстановления
Сценарии аварийного восстановления Назначение Описание типовых сценариев аварийного восстановления системы Printum: симптомы, порядок действий и ориентировочное время восстановления. Сценарий 1 — Отказ одного сервера ПринтМенеджера в кластере Симптомы Страница состояния HAProxy показывает один или несколько узлов как «DOWN». Часть заданий не обрабатывается; пользователи не замечают сбоя (если узлов ≥ 2). Порядок действий Проверить статус контейнеров на отказавшем сервере: cd /opt/printmanager && docker-compose ps Изучить логи: docker-compose logs --tail=200 Перезапустить контейнеры: docker-compose restart Если не помогает — восстановить из резервной копии (см. «Восстановление из резервной копии»). После восстановления проверить страницу состояния HAProxy. Ориентировочное время: 15–30 минут при перезапуске; 60–120 минут при восстановлении из резервной копии. Сценарий 2 — Отказ нескольких серверов ПринтМенеджера Симптомы Большинство заданий не обрабатываются. HAProxy показывает менее половины узлов в статусе «UP» (кластер утратил кворум). Порядок действий Восстановить наибольшее число серверов ПринтМенеджер (перезапуск контейнеров или восстановление из резервной копии). Убедиться, что активно ≥ (N/2 + 1) узлов (кворум), где N — общее число узлов. Проверить статус HAProxy и синхронизацию с Мониторингом. Ориентировочное время: 60–240 минут в зависимости от числа отказавших узлов. Сценарий 3 — Потеря базы данных PostgreSQL Симптомы Ошибки в логах ПринтМенеджер: django.db.utils.OperationalError: connection to server failed Веб-интерфейс Личного кабинета недоступен или отображает ошибки. Порядок действий Убедиться, что контейнер PostgreSQL запущен: sudo docker ps | grep postgres Если контейнер упал — перезапустить: docker-compose up -d db Если данные повреждены — восстановить базу из резервной копии. Для восстановления на чистый сервер выполнить команды (см. «Восстановление из резервной копии»): sudo tar xzvf printum_backup_.tar.gz sudo printum_backup_/restore.sh Подождать несколько минут для запуска системы. Ориентировочное время: 30–120 минут в зависимости от объёма данных. Важно: IP-адрес или hostname сервера должны совпадать с теми, что были при создании резервной копии. Сценарий 4 — Потеря NFS-хранилища (кластер) Симптомы Пользователи при попытке печати получают ошибку «Файл недоступен». Логи ПринтМенеджер содержат ошибки обращения к NFS-директории. Порядок действий Проверить доступность NFS-сервера с сервера ПринтМенеджер: попробовать смонтировать папку вручную. Убедиться в правильности параметров в /opt/printmanager/.env: sudo cat /opt/printmanager/.env Проверить DRIVER_OPTS_DEVICE, DRIVER_OPTS_O, DRIVER_OPTS_TYPE. После восстановления NFS перезапустить контейнеры: docker-compose restart Проверить, что задания в отложенной очереди обрабатываются. Ориентировочное время: 15–60 минут. Связанные страницы Восстановление из резервной копии Проверка резервных копий Резервное копирование — обзор