# Автоматизированное создание окружений для R&D команд
## Тезисы
- Сравнение различных подходов для автоматизированного создания окружений для R&D команд
- Три подхода:
- Terragrunt multiple environments
- Kubernetes Namespaces as Environments
- Crossplane
- Для всех трех подходов используется Git as Source of Truth
## Детали
Вводные
- Больше 50 R&D команд
- Инфраструктура в Yandex Cloud
- GitLab - как Source of Truth и платформа для CI\CD
Рассмотрим и сравним три кейса:
1. Окружения описываются с помощью Terragrunt:
- Для R&D команд развернуты окружения DEV, STAGE описанные с помощью IaC (Terragrunt)
- Окружения представляют из себя разные folders в Yandex Cloud
- Окружения включают в себя IaaS и PaaS сервисы, в т.ч. числе Managed Service for Kubernetes, Managed Service for PostgreSQL, Managed Service for Elastic и тд.
- Управление окружениями осуществляется DevOps-инженерами
2. Окружения создаются динамически в кластере Kubernetes:
- Имеется кластер Managed Service for Kubernetes
- Для каждой из веток с помощью CI\CD пайплайна создается новый Kubernetes Namespace
- В каждом Namepspace разворачивается отдельное окружение для приложения
3. Создание окружений с помощью Crossplane
Расскажем про плюсы и минусы таких подходов, а также приведем примеры настройки для каждого из подходов
## План доклада
- Вводные задачи - что есть:
- Сколько команд
- Куда деплоимся
- Чем деплоимся
- Вводные задачи - что хотим
- Хотим чтобы было быстро\удобно\недорого
- Что рассмотрим
- Terragrunt
- Kubernetes Namespaces as Environments
- Сrossplane
- Terrugrunt
- Cхема
-