Пример 1
Kubernetes в AWS: вдвое меньше нод, перезапуски только в согласованном окне
Задача
Несколько EKS-кластеров в нескольких аккаунтах AWS росли органически: фиксированные группы нод под пиковую нагрузку, on-demand везде, пакетные задачи и долгоживущие сервисы на одних и тех же нодах. Один кластер запрашивал около 60 % CPU при использовании около 10 %. Любая автоматическая консолидация нод перезапускала сервисы в произвольное время.
Решение
Перевёл кластеры на Karpenter с консолидацией недозагруженных нод, вынес пакетные задачи в отдельные пулы с защитой от вытеснения политикой, добавил spot-пулы, к которым владельцы сервисов подключаются через toleration. Первый запуск консолидации дал цикл пересоздания ноды; после разбора причин консолидация и ротация нод ограничены одним согласованным окном в сутки, с правилами оповещения о возрасте нод. Все изменения через Terraform/Terragrunt и MR с ревью, раскатка по кластерам по одному с проверкой после каждого.
Результат
Число нод сократилось более чем вдвое, расходы на ноды соответственно. Сервисы перезапускаются только в окне; инциденты из-за консолидации прекратились.