Files
pet-project-server/docs/adr/ADR-2025-12-07-app-data-on-separate-disk.md
2026-05-24 15:40:28 +03:00

2.8 KiB
Raw Permalink Blame History

Данные приложений на отдельном диске

  • Дата: 2025-12-07

Контекст

Исторически данные приложений лежали прямо в домашних директориях их системных пользователей (/home/<app-user>/…), то есть на системном диске рядом с ОС. В конце 2025 встал вопрос обновления ОС (Ubuntu 22.04 уже устарела), и стало ясно: пока данные привязаны к системному диску, любое обновление или пересборка системы рискует этими данными и тяжело откатывается.

Возникла мысль развязать данные приложений и жизненный цикл ОС.

Рассмотренные варианты

  • Данные на системном диске (как было). Просто, но данные связаны с ОС: обновление/пересборка системы затрагивает и их.
  • Отдельный диск под данные (выбран). Данные переживают пересборку ОС, диск можно отцепить от одного сервера и прицепить к другому.

Решение

Вынесли все данные приложений на отдельный диск, смонтированный в /mnt/applications; каждое приложение держит там свои data / config / backups, а base_dir/data_dir указывают на этот путь (коммиты 47a6320, 7e67409, ae7c20a, 8dfd061).

Последствия

  • + Данные развязаны с жизненным циклом ОС — систему можно обновлять и пересобирать, не трогая данные.
  • + Диск можно отцепить от старого сервера и прицепить к новому. Это легло в основу метода обновления ОС (ADR-2025-12-13).
  • - Появилась зависимость от монтирования внешнего диска (UUID, mount-конфигурация): если диск не смонтирован, приложения не поднимутся. Позже, при переезде в Timeweb, монтирование пришлось сделать опциональным (ADR-2026-05-23, фаза 1 — один диск, фаза 2 — отдельный «холодный» диск под крупные данные).