Зимой на KuBeer Talks я выступал с докладом:
Зимой на KuBeer Talks я выступал с докладом:
«Почему вам не нужен Kubernetes»
После выступления несколько человек подошли примерно с одинаковым вопросом:
«Ты серьёзно считаешь, что Kubernetes не нужен?»
Kubernetes за последние годы стал для индустрии ответом по умолчанию. Проект только стартует, требования ещё меняются, команда небольшая. В архитектуре уже появляются ingress, service mesh, Helm, GitOps, мониторинг, централизованное логирование — современная инженерная молитва.
Вокруг проектов уровня:
«обычный интернет-портал»
строится инфраструктура так, будто завтра сервис должен пережить многократный рост трафика, несколько серьёзных инцидентов и внезапную пятницу.
Условный «привет, мир» с формой заявки и нагрузкой:
«два человека в праздники»
Зачем?
Ответ обычно простой:
«так сейчас делают»
Цена обычно приходит позже — когда кластер начинает жить собственной жизнью, обновление неожиданно ломает работающую систему, а команда понимает:
Kubernetes — это уже отдельный пласт постоянной работы.
Обычно это выясняется во время инцидента. Или в момент, когда оказывается, что Kubernetes в компании по-настоящему понимают полтора человека.
Доклад в целом был про простую вещь:
технология должна соответствовать задаче и команде.
Kubernetes отлично работает там, где много сервисов, высокая нагрузка, сложная инфраструктура и большая команда.
Иногда это напоминает попытку завести 300-килограммовую гориллу в маленькую квартиру.
Завести получилось.
Теперь её нужно кормить, сопровождать, объяснять бизнесу, почему вместо новых возможностей команда уже третий месяц разбирается с инфраструктурой.
Особенно интересно это выглядит в небольших компаниях: несколько разработчиков, планы, диаграммы Ганта, встречи про скорость разработки.
Всё это в итоге держит один парень в футболке из Омска, которому теперь ещё и Kubernetes сопровождать.
За 20+ лет эксплуатации я увидел простую закономерность:
проблема обычно возникает в момент, когда амбиции, реальные задачи, компетенции команды и стоимость сопровождения перестают совпадать.
Иногда достаточно Docker Compose, Nomad, PaaS, managed Kubernetes или обычной VM.
В итоге всё обычно сводится к довольно скучным вопросам:
работает ли система
выдерживает ли нагрузку
умеет ли команда её поддерживать
придётся ли кому-то чинить всё это ночью
Ночами, если честно, лучше спать.
Для тех, кто любит спорить аргументированно — приложил презентацию с KuBeer Talks.