Skip to content
5 / 10

Квоты и мультиарендность: как поделить кластер между командами

Общий кластер без ограничений живёт до первого сервиса, который «случайно» запросил сорок ядер или создал десять тысяч подов. Разделение строится на трёх уровнях. ResourceQuota ограничивает пространство имён по суммарным запросам и лимитам процессора и памяти, по числу объектов и по объёму хранилища — это защита кластера от одной команды. LimitRange задаёт значения по умолчанию и границы для отдельного контейнера: без него под без указанных ресурсов получает класс BestEffort и будет вытеснен первым, а под с гигантским лимитом займёт узел целиком. PriorityClass определяет, чьи поды вытесняются при нехватке ресурсов — критичные системные компоненты должны быть выше прикладных. Дополняют картину сетевые политики между пространствами имён и отдельные сервисные аккаунты с минимальными правами. Полная изоляция арендаторов в одном кластере недостижима: ядро общее, поэтому для действительно недоверенных нагрузок нужны отдельные кластеры или изолирующая среда выполнения.

Квоты и мультиарендность: как поделить кластер между командами | JScriptiser