Вы можете установить процессор лимиты и запросы.
Как только вы установите их, даже если ограничения велики, среда выполнения kubelet и контейнера работает вместе, чтобы обеспечить соблюдение ограничений ЦП. Наряду с этим вы можете резервировать ресурсы для самого Kubernetes чтобы рабочая нагрузка не подвергала риску весь узел.
Как только вы определите их, ядро Linux станет ответственным за соблюдение ограничений и обеспечение справедливого распределения доступных ресурсов.
Если в вашем кластере есть наборы демонов, убедитесь, что у них тоже есть ресурсы и ограничения. Вы можете рассмотреть возможность запуска DaemonSets как гарантировано, так что их ресурс огражден.
Видеть Настройка качества обслуживания для модулей.
Взятые вместе, эти меры должны защитить ваши узлы от рабочей нагрузки, в то же время позволяя модулям приложений использовать доступный ЦП во время запуска.
Если вы обнаружите, что проблемы все еще существуют, вы можете предпринять дополнительный шаг: отложить каждый запуск на случайную величину. Вы можете сделать это без изменений приложения, запустив пользовательский начальный контейнер до запуска основного приложения. Эта случайная задержка помогает избежать громоподобное стадо проблемы, когда каждая JVM работает с одним и тем же шаблоном доступа к ресурсам в одно и то же время.