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.

          По умолчанию: ["ResourceCPU","ResourceMemory"]

          • Элемент массивастрока

            Имя ресурса.

        • 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.

          По умолчанию: ["ResourceCPU","ResourceMemory"]

          • Элемент массивастрока

            Имя ресурса.

        • 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.

          По умолчанию: ["ResourceCPU","ResourceMemory"]

          • Элемент массивастрока

            Имя ресурса.

        • 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