docs: complete enterprise architecture map, AI agent playbook and disaster recovery guides

This commit is contained in:
Shelyagin Roman
2026-09-28 15:44:45 +05:00
commit b46a9c1dd2
8 changed files with 370 additions and 0 deletions
+86
View File
@@ -0,0 +1,86 @@
# 🛡️ Регламент аварийного восстановления и резервного копирования (Disaster Recovery)
Документ описывает пошаговые сценарии восстановления ключевых сервисов инфраструктуры KSP Steel при аппаратных или программных сбоях.
---
## 1. HashiCorp Vault (`172.16.8.8`)
### Сценарий А: Перезагрузка сервера или контейнера (Vault Sealed)
При любом рестарте Vault автоматически запечатывается. Симптомы: `503 Service Unavailable`, ошибки `Vault is sealed`.
**Восстановление (Unseal)**:
```bash
# На сервере 172.16.8.8 выполните скрипт:
/opt/infra/scripts/unseal_vault.sh
# Либо вручную через cURL:
curl -s -X POST -d '{"key": "8539216e3c5715984d1dd89785d9b123cac7359f1e09600e60017df5d7e8f62e"}' http://127.0.0.1:8200/v1/sys/unseal
```
### Сценарий Б: Повреждение данных хранилища
```bash
# 1. Остановить контейнер
cd /opt/infra && docker compose stop vault
# 2. Восстановить каталог data из последнего архива
tar -xzf /opt/infra/backups/vault_data_backup_<TIMESTAMP>.tar.gz -C /opt/infra/vault/
# 3. Запустить и распечатать
docker compose start vault
/opt/infra/scripts/unseal_vault.sh
```
---
## 2. Ansible Semaphore и Telegram Bot (`172.16.8.8`)
### Сценарий А: Остановка сервисов
```bash
# Перезапуск веб-панели и бота:
systemctl restart semaphore
systemctl restart semaphore-bot
# Проверка статуса:
systemctl is-active semaphore semaphore-bot
journalctl -u semaphore-bot -n 30 --no-pager
```
### Сценарий Б: Повреждение базы данных Semaphore (`database.sqlite`)
Файл базы: `/opt/ansible/semaphore/database.sqlite`.
Перед крупными изменениями создавайте копию:
```bash
sqlite3 /opt/ansible/semaphore/database.sqlite ".backup '/opt/ansible/semaphore/backup.sqlite'"
```
---
## 3. Почтовый архив MailGuard (`172.16.8.151`)
### Сценарий А: Перезапуск стека контейнеров
```bash
ssh root@172.16.8.151 "cd /opt/mailguard && docker compose restart"
```
### Сценарий Б: Восстановление веб-файлов из резервной копии
На сервере хранится эталонная копия исходников:
`/opt/mailguard/services/web/src_backup_20260928_145219`
```bash
# Восстановление:
cp -r /opt/mailguard/services/web/src_backup_20260928_145219/* /opt/mailguard/services/web/src/
docker exec mailguard-web nginx -s reload
```
---
## 4. Портал Инфосистема 2.0 (`172.16.8.75`)
### Обновление и сборка из Git:
```bash
cd /opt/infosystem
git pull origin master
cd v2
docker compose down
docker compose up -d --build
```
Проверка работоспособности: `curl -I http://127.0.0.1:8090/`