Мы заметили, что в маленькой или средней компании технология контейнеризации, и в частности Kubernetes, не только усложняет работу ИТ-специалистам, но и приходится не по карману. Поэтому на рынке реальных внедрений этого продукта не так много, ведь большинству компаний не нужны системы управления контейнеризированными приложениями – это удел крупных разработок сложных систем, где издержки технологии микросервисов (трудоёмкость, высокая стоимость специалистов) точно окупятся.
Если в ваших проектах можно справиться со сложностью системы силами монолитной архитектуры, то это решение будет более предпочтительным, чем использование микросервисов. Либо, если стало сложно поддерживать код, то можно решить проблему, «нарезав» проект на микросервисы, у которых есть свой интерфейс, и управлять ими либо без оркестратора, либо менее сложным оркестратором. Вертикальное масштабирование может оставаться эффективным, если нет большого объёма данных и больших нагрузок: общий размер баз до 50 Гб, таблицы до 1 млн. записей, сетевые нагрузки до 50 запросов/сек. Придерживаться рамок монолитной архитектуры стоит и тогда, когда нет возможности распределять работу между разными командами. Если проблема в безопасности, её можно решить оборачиванием запросов к БД в хранимые процедуры. Есть и другие способы решать возникающие проблемы без перехода к Kubernetes.
Если бюджет не рассчитан на высокую оплату труда дополнительных специалистов, то стоит посмотреть в сторону использования виртуальных машин, которые создаются
с помощью системы управления конфигурациями Ansible и не требуют высокой квалификации обслуживающих сотрудников или более простых систем оркестрации. В практике нашей компании есть кейсы, когда мы снимали клиентов «с иглы» Kubernetes, и они до сих пор нам благодарны. Например, к нам обратился клиент с проблемами на сервере, находящемся на co-location: сервер постоянно сбоил, перезагружался, имел аппаратные проблемы, время простоя на продуктивной среде составляло до 30 минут в неделю. Архитектура изначально была настроена на Kubernetes и по мнению многих компаний, к которым клиент обращался до нас, ликвидация проблем вышла бы очень дорого.