90% деплойментів Kubernetes — це повний оверкіл.

Я бачив команди, які витратили 6 місяців на налаштування K8s для застосунку на 500 користувачів.

Я DevOps-інженер. Я ОБОЖНЮЮ Kubernetes.

Але зараз розкажу, чому тобі, найімовірніше, він не потрібен.


Індустріальний комплекс Kubernetes

Чому всі пушать Kubernetes?

Resume-Driven Development

K8s виглядає круто в LinkedIn. "Kubernetes" — магічне слово, від якого в рекрутерів загоряються очі.

Інженери пушать K8s не тому, що це правильне рішення, а тому що це кар'єрний хід.

Vendor Lock-In

Консалтингові фірми обожнюють Kubernetes. Чому?

Складність = регулярний дохід.

Чим складніша твоя інфраструктура, тим більше тобі потрібні консультанти для її підтримки.

Індустрія сертифікацій

CKA сертифікація: ~$400 CKS сертифікація: ~$400 CKAD сертифікація: ~$400

Курси, буткемпи, пробні іспити... Освіта по Kubernetes — мільярдна індустрія.

Ніхто не заробляє на тому, щоб навчити тебе, що Docker Compose достатньо.

Маржа хмарних провайдерів

Managed Kubernetes коштує у 2-3 рази дорожче, ніж простіші рішення.

EKS, GKE, AKS — всі хочуть, щоб ти був на K8s, бо це збільшує твій рахунок за хмару.


Чесний чекліст

Тобі НЕ потрібен Kubernetes, якщо:

1. У твого застосунку менше 100K DAU

На цьому масштабі одна VM з Docker справляється з усім. Kubernetes додає операційний overhead, який не виправданий масштабом.

2. Твоя команда менше 5 інженерів

Kubernetes вимагає виділеної уваги. Якщо ні в кого немає часу стати K8s-експертом, ти налаштовуєш бомбу сповільненої дії.

3. Ви не деплоїте кілька разів на день

K8s сяє при continuous deployment. Якщо деплоїте раз на тиждень, складність того не варта.

4. Твій трафік передбачуваний

K8s auto-scaling приголомшливий для змінного навантаження. Якщо трафік стабільний, ти платиш податок на складність ні за що.

5. У тебе немає багатьох сервісів

Один моноліт? K8s — оверкіл. Переваги оркестрації з'являються при багатьох сервісах.


Що використовувати замість

Azure Container Apps / AWS App Runner

  • Елементарно просто
  • Auto-scaling з коробки
  • Жодних YAML-маніфестів для підтримки
  • Платиш за запит, не за кластер

Docker Compose на VM

Знаю, звучить божевільно.

Для більшості застосунків одна VM з Docker Compose працює. Нудно. Просто. Шипить фічі.

Нудне — це фіча, а не баг.

Platform-as-a-Service

Railway, Render, Fly.io — ці платформи беруть інфраструктуру на себе.

Нуль управління інфраструктурою. Шипи фічі замість підтримки кластерів.

Serverless

Для підходящих навантажень (event-driven, stateless), Lambda/Azure Functions простіше і дешевше, ніж підтримка контейнерів.


Реальна вартість Kubernetes

Перед вибором K8s порахуй СПРАВЖНЮ вартість:

Прямі витрати

  • Managed K8s сервіс: $200-2000/місяць мінімум
  • Worker-ноди: $500-5000/місяць залежно від масштабу
  • Load balancers, storage, networking: $200-1000/місяць

Приховані витрати

  • Крива навчання: 2-6 місяців, щоб команда стала профі
  • Час на підтримку: 5-10 годин/тиждень на догляд за кластером
  • Складність інцидентів: K8s-проблеми СКЛАДНО дебажити
  • Найм: K8s-інженери вимагають преміальних зарплат

Альтернативна вартість

Кожна година на K8s — це година НЕ витрачена на:

  • Продуктові фічі
  • Проблеми клієнтів
  • Бізнес-цінність

Твій Kubernetes-кластер — конкурентна перевага? Чи складність заради складності?


Коли Kubernetes МАЄ сенс

Я не анти-K8s. Я використовую його професійно. Ось коли це правильний вибір:

100+ мікросервісів

Коли є реальні потреби в оркестрації багатьох сервісів, K8s окупається.

Multi-Cloud вимоги

Треба запускати однакові workloads на AWS, Azure І GCP? K8s дає реальну переносимість.

Непередбачуваний масштаб

Якщо бувають сплески трафіку в 10 разів, K8s auto-scaling вартий складності.

Виділена Platform-команда

Якщо є інженери, чия РОБОТА — підтримувати інфраструктуру, K8s — чудовий інструмент для них.

Поміть патерн

Це проблеми ВЕЛИКИХ компаній. Не стартапів.

Якщо ти стартап з 10 людей з Kubernetes, ти, ймовірно, оптимізуєш не те.


Фреймворк прийняття рішень

У тебе 100+ мікросервісів?
├── Так → Розглянь K8s
└── Ні → Бувають непередбачувані 10x сплески?
    ├── Так → Розглянь K8s
    └── Ні → Потрібен multi-cloud?
        ├── Так → Розглянь K8s
        └── Ні → Є виділена platform-команда?
            ├── Так → K8s може бути ок
            └── Ні → ВИКОРИСТАЙ ЩОСЬ ПРОСТІШЕ

Розмова, яку треба провести

Наступного разу, коли хтось запропонує Kubernetes, запитай:

  1. Яку проблему K8s вирішує, яку не вирішують простіші рішення?
  2. Хто буде підтримувати кластер довгостроково?
  3. Яка повна вартість володіння за 3 роки?
  4. Які фічі можна було б зашипити на ці час/гроші?

Якщо відповіді розмиті — пропозиція resume-driven.


Моє зізнання

Я налаштовував Kubernetes-кластери, які не повинні були існувати.

Я робив це, бо було весело. Бо хотів навчитися. Бо добре виглядало в резюме.

Озираючись назад, простіші рішення служили б тим проєктам краще.

Найкраща інфраструктура — та, про яку не треба думати.

Іноді це Kubernetes. Зазвичай — ні.


Висновок

Kubernetes — неймовірний інструмент для проблем, які він вирішує.

Але він вирішує проблеми великих компаній.

Якщо ти не велика компанія, ти можеш імпортувати складність великих компаній без їхніх переваг.

Вибирай нудні технології. Шипи фічі. Хай хтось інший підтримує кластер.


Іноді найкраща архітектура — найпростіша.