Стадия жизненного цикла модуля: Experimental
У модуля есть требования для установки

Как явно включить или отключить модуль…

Явно включить или выключить модуль можно одним из следующих способов:

  • С помощью веб-интерфейса Deckhouse. В разделе «Система» → «Управление системой» → «Deckhouse» → «Модули», откройте модуль adaptive-resource-management, включите (или выключите) переключатель «Модуль включен». Сохраните изменения.

    Пример:

    Интерфейс включения и выключения модуля
  • С помощью Deckhouse CLI (d8).

    Используйте команду d8 system module enable для включения модуля, или d8 system module disable для выключения модуля (требуется Deckhouse CLI (d8), настроенный на работу с кластером).

    Пример включения модуля adaptive-resource-management:

    d8 system module enable adaptive-resource-management
  • С помощью ModuleConfig adaptive-resource-management.

    Установите spec.enabled в true или false в ModuleConfig adaptive-resource-management (создайте его, при необходимости).

    Пример манифеста для включения модуля adaptive-resource-management:

    apiVersion: deckhouse.io/v1alpha1
    kind: ModuleConfig
    metadata:
      name: adaptive-resource-management
    spec:
      enabled: true

Как настроить модуль…

Настроить модуль можно одним из следующих способов:

  • С помощью веб-интерфейса Deckhouse.

    В разделе «Система» → «Управление системой» → «Deckhouse» → «Модули», откройте модуль adaptive-resource-management, включите переключатель «Дополнительные настройки». Заполните необходимые поля формы на вкладке «Конфигурация», или укажите настройки модуля в формате YAML на вкладке «YAML», не включая секцию settings. Сохраните изменения.

    Пример:

    Интерфейс настройки модуля

    Вы также можете отредактировать объект ModuleConfig adaptive-resource-management на вкладке «YAML» в окне настроек модуля («Система» → «Управление системой» → «Deckhouse» → «Модули», откройте модуль adaptive-resource-management), указав версию схемы в параметре spec.version и необходимые параметры модуля в секции spec.settings.

  • С помощью Deckhouse CLI (d8) (требуется Deckhouse CLI (d8), настроенный на работу с кластером).

    Отредактируйте существующий ModuleConfig adaptive-resource-management (подробнее о настройке Deckhouse читайте в документации), выполнив следующую команду:

    d8 k edit mc adaptive-resource-management

    Внесите необходимые изменения в секцию spec.settings. При необходимости укажите версию схемы в параметре spec.version. Сохраните изменения.

    Вы также можете создать файл манифеста ModuleConfig adaptive-resource-management, используя пример ниже. Заполните секцию spec.settings необходимыми параметрами модуля. При необходимости укажите версию схемы в параметре spec.version.

    Примените манифест с помощью следующей команды (укажите имя файла манифеста):

    d8 k apply -f <FILENAME>

    Пример файла манифеста ModuleConfig adaptive-resource-management:

    apiVersion: deckhouse.io/v1alpha1
    kind: ModuleConfig
    metadata:
      name: adaptive-resource-management
    spec:
      version: 1
      enabled: true
      settings: # Параметры модуля из раздела "Параметры" ниже.

Как сменить канал обновлений модуля…

Для смены канала обновлений модуля воспользуйтесь инструкцией.

Требования

К версии Kubernetes: 1.31 и выше.

К версии Deckhouse: 1.71 и выше.

Параметры

Версия схемы: 1

  • settings
    объект
    • settings.autovpa
      объект

      Настройки контроллера AutoVPA.

      Утилита, которая помогает определить оптимальные resource requests и limits для контейнеров, запущенных в кластере, на основе рекомендаций VPA.

      По умолчанию: {}

      • settings.autovpa.enabled
        булевый
        Включает контроллер AutoVPA.

        По умолчанию: false

      • settings.autovpa.namespaceLabelSelector
        объект

        Стандартный Kubernetes LabelSelector, определяющий пространства имен, которыми будет управлять AutoVPA.

        Если onlySpecialLabel также установлен в true, итоговый список пространств имен формируется как объединение пространств имен, подходящих под selector, и пространств имен с лейблом autovpa.deckhouse.io/enabled: "true".

        Если onlySpecialLabel установлен в false, управляются только пространства имен, подходящие под данный selector.

        • settings.autovpa.namespaceLabelSelector.matchExpressions
          массив объектов
          Список требований к лейблам.
          • settings.autovpa.namespaceLabelSelector.matchExpressions.key
            строка
            Ключ лейбла, к которому применяется selector.
          • settings.autovpa.namespaceLabelSelector.matchExpressions.operator
            строка
            Определяет отношение ключа к набору значений.

            Допустимые значения: In, NotIn, Exists, DoesNotExist

          • settings.autovpa.namespaceLabelSelector.matchExpressions.values
            массив строк
            Массив строковых значений. Обязателен для операторов In и NotIn.
        • settings.autovpa.namespaceLabelSelector.matchLabels
          объект
          Набор пар ключ-значение для лейблов. Пространство имен должно иметь все указанные лейблы, чтобы быть выбранным.
      • settings.autovpa.nodeSelector
        объект

        Аналогично параметру spec.nodeSelector у подов в K8s.

        Если параметр не задан или равен false, он будет определен автоматически.

      • settings.autovpa.onlySpecialLabel
        булевый

        При значении true AutoVPA будет управлять пространствами имен с лейблом autovpa.deckhouse.io/enabled: "true".

        Если одновременно задан namespaceLabelSelector, итоговый список пространств имен формируется как объединение: пространства имен, подходящие под selector, и пространства имен со специальным лейблом.

        При значении false и незаданном namespaceLabelSelector AutoVPA управляет всеми пространствами имен. При значении false и заданном namespaceLabelSelector управляются только пространства имен, подходящие под selector; специальный лейбл игнорируется.

        По умолчанию: false

      • settings.autovpa.tolerations
        массив объектов

        Аналогично параметру spec.tolerations у подов в K8s.

        Если параметр не задан или равен false, он будет определен автоматически.

        • settings.autovpa.tolerations.effect
          строка
        • settings.autovpa.tolerations.key
          строка
        • settings.autovpa.tolerations.operator
          строка
        • settings.autovpa.tolerations.tolerationSeconds
          целочисленный
        • settings.autovpa.tolerations.value
          строка