Compose или Kubernetes
Вопрос
Команда из 5 человек, один продукт, нагрузка умеренная. Спорят: Compose на паре серверов или Kubernetes. Что посоветуешь и почему?
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Определить требования: доступность, число сервисов и узлов, частота деплоев, кто будет поддерживать
Compose: простота, низкий порог, всё видно в одном файле; минусы: один хост, ручное переключение при отказе
Kubernetes: несколько узлов, самовосстановление, rolling update, HPA, экосистема; минусы: сложность и стоимость сопровождения
Управляемый Kubernetes в облаке снимает часть сложности control plane, но не всю
Промежуточные варианты: PaaS, Nomad, Swarm
Решение обратимо, если образы и конфигурация через переменные окружения (12 factor)
Что могут спросить следом
- Что сломается первым при росте на Compose?
- Сколько стоит поддержка своего кластера?
Разбор
Начну с требований, а не с технологии. Какая нужна доступность: переживём ли час простоя при падении сервера? Сколько сервисов и как часто деплоим? Кто будет поддерживать платформу? Compose хорош простотой: один файл, всё понятно любому разработчику, отладка обычными средствами Docker. Минусы: он управляет одним хостом, при падении сервера всё лежит, пока кто-то не поднимет на другом, а обновление без простоя приходится собирать самому. Kubernetes даёт планирование по узлам, самовосстановление, rolling update, автомасштабирование и большую экосистему, но требует знаний и времени на сопровождение, и для команды из пяти человек это может быть заметной долей работы. Управляемый кластер в облаке снимает заботу о control plane, но сетевые политики, обновления и наблюдаемость остаются. Для умеренной нагрузки я бы начал с Compose или PaaS, а образы и конфигурацию сразу делал по 12 factor, чтобы переезд в Kubernetes был механическим, когда реально понадобятся несколько узлов и высокая доступность.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.