INFO
Архитектуру трека Саша разбирает в «Техгруминге окружений», сам трек он не реализует — ТЗ уточнится. Ниже только то, о чём уже договорились. По словам Саши, бэкенд-часть окружений войдёт в «Исполнение файлов»; как делить треки, решит тот же техгруминг.
Роли
- Валентин (бэк) — создание и жизненный цикл окружений пользователей.
- Денис (devops) — площадка, на которой окружения живут.
Договорились
- Окружение пользователя создаёт и удаляет бэкенд через API облака, без Pulumi: например, gophercloud — SDK OpenStack для Go.
- К окружениям пользователей относимся как к внешним сервисам: в них исполняется чужой код.
- Отдельный сервис-оператор следит за последней активностью пользователя и состоянием окружения.
Открытые вопросы
- Контейнеры (Docker, Kubernetes) или виртуальные машины. От этого зависит API: для контейнеров в Kubernetes — Kubernetes API, для машин — OpenStack через gophercloud. VPS из Go проверены — наш Pulumi уже создаёт их через gophercloud; контейнеры разбирает Саша — «Техгруминг окружений».
- Кто создаёт приватную сеть окружений: бэкенд на лету или devops заранее.