Коэффициент Overcommit
Содержание
Понимание коэффициента overcommit ресурсов в NamespaceОпределение CRDСоздание коэффициента overcommit с помощью CLIСоздание/обновление коэффициента overcommit через веб-консольМеры предосторожностиПроцедураПонимание коэффициента overcommit ресурсов в Namespace
позволяет задавать коэффициент overcommit ресурсов (CPU и памяти) для каждого namespace. Это управляет соотношением между лимитами контейнеров (максимальное использование) и запросами (гарантированный минимум) внутри данного namespace, оптимизируя использование ресурсов.
Настраивая этот коэффициент, вы обеспечиваете, что заданные пользователем лимиты и запросы контейнеров остаются в разумных пределах, повышая общую эффективность использования ресурсов кластера.
Ключевые понятия
- Лимиты: максимальный ресурс, который контейнер может использовать. Превышение лимитов может привести к троттлингу (CPU) или завершению процесса (память).
- Запросы: гарантированный минимальный ресурс, необходимый контейнеру. Kubernetes планирует контейнеры исходя из этих запросов.
- Коэффициент Overcommit: Лимиты / Запросы. Этот параметр определяет допустимый диапазон для данного соотношения в namespace, балансируя гарантии ресурсов и предотвращая их чрезмерное потребление.
Основные возможности
- Повышение плотности использования ресурсов и стабильности приложений в namespace за счёт установки подходящего коэффициента overcommit для управления балансом между лимитами и запросами ресурсов.
Пример
Предположим, что коэффициент overcommit для namespace установлен в 2. При создании приложения и указании лимита CPU в 4c, соответствующее значение запроса CPU рассчитывается как:
CPU Request = CPU Limit / Overcommit ratio. Таким образом, запрос CPU будет 4c / 2 = 2c.
Определение CRD
Создание коэффициента overcommit с помощью CLI
Создание/обновление коэффициента overcommit через веб-консоль
Позволяет настроить коэффициент overcommit для namespace, чтобы управлять соотношением между лимитами и запросами ресурсов. Это гарантирует, что выделение ресурсов контейнеру остаётся в заданных пределах, улучшая использование ресурсов кластера.
Меры предосторожности
Если в кластере используется виртуализация узлов (например, виртуальные ноды), перед настройкой oversubscription для виртуальных машин отключите oversubscription на уровне кластера/namespace.
Процедура
-
Перейдите в Управление проектами и откройте Namespaces > Список Namespace.
-
Нажмите на целевой Namespace name.
-
Выберите Действия > Обновить Overcommit.
-
Выберите подходящий способ настройки коэффициента overcommit для установки коэффициента overcommit CPU или памяти для namespace.
- Нажмите Обновить.
Примечание: Изменения применяются только к вновь создаваемым Pod. Существующие Pod сохраняют свои исходные запросы до пересоздания.