VPA работает не с контроллером Pod’а, а с самим Pod’ом — измеряя и изменяя параметры его контейнеров. Вся настройка происходит с помощью Custom Resource’а VerticalPodAutoscaler.

В общем случае конфигурация модуля не требуется. У модуля есть только настройки nodeSelector/tolerations.

Модуль включен по умолчанию в наборах модулей: Default, Managed. Модуль выключен по умолчанию в наборе модулей Minimal.

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

Обратите внимание, что при установке Deckhouse для явного включения/отключения и настройки модуля используется параметр configOverrides ресурса InitConfiguration, а не ModuleConfig.

Чтобы явно включить или выключить модуль vertical-pod-autoscaler при установке Deckhouse, укажите verticalPodAutoscalerEnabled: true или verticalPodAutoscalerEnabled: false в секции configOverrides.

Чтобы задать настройки модуля при установке Deckhouse, используйте секцию verticalPodAutoscaler параметра configOverrides.

Чтобы явно включить или выключить модуль vertical-pod-autoscaler, установите spec.enabled в true или false в ModuleConfig/vertical-pod-autoscaler.

Пример включения модуля vertical-pod-autoscaler:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: vertical-pod-autoscaler
spec:
  enabled: true

Пример выключения модуля vertical-pod-autoscaler:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: vertical-pod-autoscaler
spec:
  enabled: false

Чтобы настроить модуль используйте custom resource ModuleConfig с именем vertical-pod-autoscaler (подробнее о настройке Deckhouse…).

Пример ресурса ModuleConfig/vertical-pod-autoscaler для настройки модуля:

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

Параметры

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

  • nodeSelectorобъект

    Структура, аналогичная spec.nodeSelector Kubernetes pod.

    Если ничего не указано или указано false — будет использоваться автоматика.

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

    Структура, аналогичная spec.tolerations в Kubernetes Pod.

    Если ничего не указано или указано false — будет использоваться автоматика.

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