Саша разбирается, как запускать окружения пользователей в облаке Selectel, и по итогам проектирует архитектуру треков «Авто-VPS» и «Исполнение файлов». Бэкенд-часть окружений — создание и удаление через API облака — по словам Саши, будет в «Исполнении файлов». Всё сильно взаимосвязано, поэтому сначала декомпозиция и архитектурные схемы: без них студенты запутаются.
Что уже известно
- VPS из Go — проверено. Наш Pulumi создаёт VPS через
@pulumi/openstack, а он собран изterraform-provider-openstackна gophercloud: вызовы API OpenStack Selectel из Go уже работают. - Контейнеры — нужно разобраться:
- Managed Kubernetes Selectel есть в Terraform-провайдере
selectel(selectel_mks_cluster_v1), поды бэк создавал бы через Kubernetes API; - Docker на своих VM: хосты поднимает Pulumi, контейнерами бэк управляет через Docker Engine API;
- serverless-контейнеры Selectel в документации не нашлись.
- Managed Kubernetes Selectel есть в Terraform-провайдере
Результат
- Сравнение вариантов: цена, время старта окружения, изоляция чужого кода, API для бэка.
- Архитектурные схемы и декомпозиция «Авто-VPS» на задачи: что делает бэк, что devops, что фронт. «Исполнение файлов» Саша декомпозирует отдельно — «Техгруминг исполнения файлов».