VerticalPodAutoscaler
Scope: Namespaced
Описывает конфигурацию работы механизма Vertical Pod Autoscaler для указанного контроллера.
Vertical Pod Autoscaler автоматически управляет ресурсами подов контроллера на основании исторических и текущих данных по утилизации ресурсов.
- spec
Обязательный параметр
- spec.resourcePolicy
Определяет, как autoscaler рассчитывает рекомендации.
Может использоваться с целью ограничения рекомендаций для указанных контейнеров.
Если не указано, autoscaler рассчитывает рекомендации по ресурсам для всех контейнеров пода, без ограничений.
- spec.resourcePolicy.containerPolicies
Политики VPA для конкретных контейнеров.
ContainerResourcePolicy контролирует, как autoscaler рассчитывает рекомендуемые ресурсы для конкретного контейнера.
- spec.resourcePolicy.containerPolicies.containerName
Имя контейнера или
DefaultContainerResourcePolicy
(политика для контейнеров по умолчанию). - spec.resourcePolicy.containerPolicies.controlledResources
Указывает тип рекомендаций, которые будут рассчитаны (и, возможно, применены) VPA.
По умолчанию:
["cpu","memory"]
- Элемент массива
Имя ресурса.
Допустимые значения:
cpu
,memory
- spec.resourcePolicy.containerPolicies.controlledValues
Указывает, какие ресурсы контролируются.
По умолчанию:
"RequestsAndLimits"
Допустимые значения:
RequestsAndLimits
,RequestsOnly
- spec.resourcePolicy.containerPolicies.maxAllowed
Верхняя граница значений
cpu
иmemory
, которые могут быть рекомендованы для контейнера.По умолчанию она не определена.
- spec.resourcePolicy.containerPolicies.minAllowed
Нижняя граница значений
cpu
иmemory
, которые могут быть рекомендованы для контейнера.По умолчанию она не определена.
- spec.resourcePolicy.containerPolicies.mode
Включает или отключает работу VPA для контейнера.
По умолчанию:
"Auto"
Допустимые значения:
Auto
,Off
- spec.targetRef
Обязательный параметр
Указывает на объект (контроллер в Kubernetes), к подам которого применяются описываемые политики VPA.
Поддерживаются все распространенные типы контроллеров:
Deployment
,StatefulSet
,DaemonSet
,CronJobs
, а также любые пользовательские типы, реализующие подресурс scale.- spec.targetRef.apiVersion
Версия API объекта.
- spec.targetRef.kind
Обязательный параметр
Тип объекта.
- spec.targetRef.name
Обязательный параметр
Имя объекта.
- spec.updatePolicy
Определяет правила, как изменения будут применяться к подам.
Если не указано, все поля
PodUpdatePolicy
принимают значения по умолчанию.- spec.updatePolicy.updateMode
Режим работы VPA-контроллера:
Auto
— в данный момент режимы работы Auto и Recreate делают одно и то же. Однако, когда в Kubernetes появится Pod inplace resource update, данный режим будет делать именно его;Recreate
— разрешает VPA изменять ресурсы у запущенных подов, то есть перезапускать их. В случае работы одного пода (replicas: 1) перезапуск приведет к временной недоступности сервиса. В данном режиме VPA не пересоздает поды, которые были созданы без контроллера;Initial
— разрешает VPA изменять ресурсы подов, но только при их создании (не во время работы);Off
— запрещает VPA автоматическое изменение ресурсов. Autoscaler подсчитывает рекомендации и хранит их в поле status объектаVerticalPodAutoscaler
. Посмотреть, какие ресурсы рекомендует поставить VPA, можно с помощью командыkubectl describe vpa <vpa-name>
.
По умолчанию:
"Auto"
Допустимые значения:
Off
,Initial
,Recreate
,Auto
Описывает конфигурацию работы механизма Vertical Pod Autoscaler для указанного контроллера.
Vertical Pod Autoscaler автоматически управляет ресурсами подов контроллера на основании исторических и текущих данных по утилизации ресурсов.
- spec
Обязательный параметр
- spec.resourcePolicy
Определяет, как autoscaler рассчитывает рекомендации.
Может использоваться с целью ограничения рекомендаций для указанных контейнеров.
Если не указано, autoscaler рассчитывает рекомендации по ресурсам для всех контейнеров пода, без ограничений.
- spec.resourcePolicy.containerPolicies
Политики VPA для конкретных контейнеров.
ContainerResourcePolicy контролирует, как autoscaler рассчитывает рекомендуемые ресурсы для конкретного контейнера.
- spec.resourcePolicy.containerPolicies.containerName
Имя контейнера или
DefaultContainerResourcePolicy
(политика для контейнеров по умолчанию). - spec.resourcePolicy.containerPolicies.controlledResources
Указывает тип рекомендаций, которые будут рассчитаны (и, возможно, применены) VPA.
По умолчанию:
["cpu","memory"]
- Элемент массива
Имя ресурса.
Допустимые значения:
cpu
,memory
- spec.resourcePolicy.containerPolicies.controlledValues
Указывает, какие ресурсы контролируются.
По умолчанию:
"RequestsAndLimits"
Допустимые значения:
RequestsAndLimits
,RequestsOnly
- spec.resourcePolicy.containerPolicies.maxAllowed
Верхняя граница значений
cpu
иmemory
, которые могут быть рекомендованы для контейнера.По умолчанию она не определена.
- spec.resourcePolicy.containerPolicies.minAllowed
Нижняя граница значений
cpu
иmemory
, которые могут быть рекомендованы для контейнера.По умолчанию она не определена.
- spec.resourcePolicy.containerPolicies.mode
Включает или отключает работу VPA для контейнера.
По умолчанию:
"Auto"
Допустимые значения:
Auto
,Off
- spec.targetRef
Обязательный параметр
Указывает на объект (контроллер в Kubernetes), к подам которого применяются описываемые политики VPA.
Поддерживаются все распространенные типы контроллеров:
Deployment
,StatefulSet
,DaemonSet
,CronJobs
, а также любые пользовательские типы, реализующие подресурс scale.- spec.targetRef.apiVersion
Версия API объекта.
- spec.targetRef.kind
Обязательный параметр
Тип объекта.
- spec.targetRef.name
Обязательный параметр
Имя объекта.
- spec.updatePolicy
Определяет правила, как изменения будут применяться к подам.
Если не указано, все поля
PodUpdatePolicy
принимают значения по умолчанию.- spec.updatePolicy.updateMode
Режим работы VPA-контроллера:
Auto
— в данный момент режимы работы Auto и Recreate делают одно и то же. Однако, когда в Kubernetes появится Pod inplace resource update, данный режим будет делать именно его;Recreate
— разрешает VPA изменять ресурсы у запущенных подов, то есть перезапускать их. В случае работы одного пода (replicas: 1) перезапуск приведет к временной недоступности сервиса. В данном режиме VPA не пересоздает поды, которые были созданы без контроллера;Initial
— разрешает VPA изменять ресурсы подов, но только при их создании (не во время работы);Off
— запрещает VPA автоматическое изменение ресурсов. Autoscaler подсчитывает рекомендации и хранит их в поле status объектаVerticalPodAutoscaler
. Посмотреть, какие ресурсы рекомендует поставить VPA, можно с помощью командыkubectl describe vpa <vpa-name>
.
По умолчанию:
"Auto"
Допустимые значения:
Off
,Initial
,Recreate
,Auto
Описывает конфигурацию работы механизма Vertical Pod Autoscaler для указанного контроллера.
Vertical Pod Autoscaler автоматически управляет ресурсами подов контроллера на основании исторических и текущих данных по утилизации ресурсов.
- spec
Обязательный параметр
- spec.resourcePolicy
Определяет, как autoscaler рассчитывает рекомендации.
Может использоваться с целью ограничения рекомендаций для указанных контейнеров.
Если не указано, autoscaler рассчитывает рекомендации по ресурсам для всех контейнеров пода, без ограничений.
- spec.resourcePolicy.containerPolicies
Политики VPA для конкретных контейнеров.
ContainerResourcePolicy контролирует, как autoscaler рассчитывает рекомендуемые ресурсы для конкретного контейнера.
- spec.resourcePolicy.containerPolicies.containerName
Имя контейнера или
DefaultContainerResourcePolicy
(политика для контейнеров по умолчанию). - spec.resourcePolicy.containerPolicies.controlledResources
Указывает тип рекомендаций, которые будут рассчитаны (и, возможно, применены) VPA.
По умолчанию:
["cpu","memory"]
- Элемент массива
Имя ресурса.
Допустимые значения:
cpu
,memory
- spec.resourcePolicy.containerPolicies.controlledValues
Указывает, какие ресурсы контролируются.
По умолчанию:
"RequestsAndLimits"
Допустимые значения:
RequestsAndLimits
,RequestsOnly
- spec.resourcePolicy.containerPolicies.maxAllowed
Верхняя граница значений
cpu
иmemory
, которые могут быть рекомендованы для контейнера.По умолчанию она не определена.
- spec.resourcePolicy.containerPolicies.minAllowed
Нижняя граница значений
cpu
иmemory
, которые могут быть рекомендованы для контейнера.По умолчанию она не определена.
- spec.resourcePolicy.containerPolicies.mode
Включает или отключает работу VPA для контейнера.
По умолчанию:
"Auto"
Допустимые значения:
Auto
,Off
- spec.targetRef
Обязательный параметр
Указывает на объект (контроллер в Kubernetes), к подам которого применяются описываемые политики VPA.
Поддерживаются все распространенные типы контроллеров:
Deployment
,StatefulSet
,DaemonSet
,CronJobs
, а также любые пользовательские типы, реализующие подресурс scale.- spec.targetRef.apiVersion
Версия API объекта.
- spec.targetRef.kind
Обязательный параметр
Тип объекта.
- spec.targetRef.name
Обязательный параметр
Имя объекта.
- spec.updatePolicy
Определяет правила, как изменения будут применяться к подам.
Если не указано, все поля
PodUpdatePolicy
принимают значения по умолчанию.- spec.updatePolicy.updateMode
Режим работы VPA-контроллера:
Auto
— в данный момент режимы работы Auto и Recreate делают одно и то же. Однако, когда в Kubernetes появится Pod inplace resource update, данный режим будет делать именно его;Recreate
— разрешает VPA изменять ресурсы у запущенных подов, то есть перезапускать их. В случае работы одного пода (replicas: 1) перезапуск приведет к временной недоступности сервиса. В данном режиме VPA не пересоздает поды, которые были созданы без контроллера;Initial
— разрешает VPA изменять ресурсы подов, но только при их создании (не во время работы);Off
— запрещает VPA автоматическое изменение ресурсов. Autoscaler подсчитывает рекомендации и хранит их в поле status объектаVerticalPodAutoscaler
. Посмотреть, какие ресурсы рекомендует поставить VPA, можно с помощью командыkubectl describe vpa <vpa-name>
.
По умолчанию:
"Auto"
Допустимые значения:
Off
,Initial
,Recreate
,Auto