Spec-Zone.ru › Kubernetes 1.24

HorizontalPodAutoscaler v2beta2

HorizontalPodAutoscaler — это конфигурация для горизонтального автомасштабирования Pods, которая автоматически управляет количеством реплик любого ресурса, реализующего подресурс scale, на основе указанных метрик.

apiVersion: autoscaling/v2beta2

import "k8s.io/api/autoscaling/v2beta2"

Горизонтальное автомасштабирование Pods

HorizontalPodAutoscaler — это конфигурация для горизонтального автомасштабирования Pods, которая автоматически управляет количеством реплик любого ресурса, реализующего подресурс scale, на основе указанных метрик.

  • apiVersion: autoscaling/v2beta2

  • kind: HorizontalPodAutoscaler

  • metadata (ObjectMeta)

    metadata — стандартные метаданные объекта. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

  • spec (HorizontalPodAutoscalerSpec)

    spec — описание желаемого поведения автомасштабирования. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status.

  • status (HorizontalPodAutoscalerStatus)

    status — текущая информация об автомасштабировании.

Параметры горизонтального автомасштабирования Pods

HorizontalPodAutoscalerSpec описывает желаемое поведение горизонтального автомасштабирования Pods.

  • maxReplicas (int32), необходимо

    maxReplicas — максимальное количество реплик, до которого может масштабироваться автомасштабирование. Оно не может быть меньше minReplicas.

  • scaleTargetRef (CrossVersionObjectReference), необходимо

    scaleTargetRef указывает на целевой ресурс для масштабирования и используется для Pods, для которых собираются метрики, а также для фактического изменения количества реплик.

    CrossVersionObjectReference содержит достаточную информацию для идентификации целевого ресурса.

    • scaleTargetRef.kind (строка), необходимо

      Тип целевого объекта; Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"

    • scaleTargetRef.name (строка), необходимо

      Имя целевого объекта; Дополнительная информация: http://kubernetes.io/docs/user-guide/identifiers#names

    • scaleTargetRef.apiVersion (строка)

      API версия целевого объекта

  • minReplicas (int32)

    minReplicas — минимальное количество реплик, до которого может масштабироваться автомасштабирование вниз. По умолчанию 1 Pod. minReplicas может быть равно 0, если включена альфа-функция HPAScaleToZero, и настроена хотя бы одна метрика Object или External. Масштабирование активно, пока доступно хотя бы одно значение метрики.

  • behavior (HorizontalPodAutoscalerBehavior)

    behavior настраивает поведение масштабирования цели как вверх, так и вниз (соответственно scaleUp и scaleDown). Если не задано, используются значения по умолчанию для HPAScalingRules для увеличения и уменьшения количества реплик.

    HorizontalPodAutoscalerBehavior настраивает поведение масштабирования цели как вверх, так и вниз (соответственно scaleUp и scaleDown).

    • behavior.scaleDown (HPAScalingRules)

      scaleDown — политика масштабирования вниз. Если не задано, по умолчанию масштабирование вниз допускается до minReplicas Pods с периодом стабилизации в 300 секунд (т.е. используется наилучшее рекомендация за последние 300 секунд).

      HPAScalingRules настраивает поведение масштабирования для одного направления. Эти правила применяются после расчета DesiredReplicas из метрик для HPA. Они могут ограничивать скорость масштабирования, определяя политики масштабирования. Они могут предотвращать колебания, определяя период стабилизации, так что количество реплик не устанавливается мгновенно, а выбирается наилучшее значение из периода стабилизации.

      • behavior.scaleDown.policies ([]HPAScalingPolicy)

        policies — список потенциальных политик масштабирования, которые могут использоваться во время масштабирования. Должна быть указана хотя бы одна политика, в противном случае HPAScalingRules будут считаться невалидными.

        HPAScalingPolicy — одиночная политика, которая должна быть верна для указанного интервала времени.

        • behavior.scaleDown.policies.type (строка), необходимо

          Тип используется для указания политики масштабирования.

        • behavior.scaleDown.policies.value (int32), необходимо

          Значение содержит величину изменения, разрешённую политикой. Она должна быть больше нуля

        • behavior.scaleDown.policies.periodSeconds (int32), необходимо

          PeriodSeconds определяет период времени, для которого политика должна оставаться верной. PeriodSeconds должно быть больше нуля и меньше или равно 1800 (30 минут).

      • behavior.scaleDown.selectPolicy (строка)

        selectPolicy используется для указания, какая политика должна использоваться. Если не указано, используется значение по умолчанию MaxPolicySelect.

      • behavior.scaleDown.stabilizationWindowSeconds (int32)

        StabilizationWindowSeconds — количество секунд, в течение которых следует учитывать предыдущие рекомендации при масштабировании вверх или вниз. StabilizationWindowSeconds должно быть больше или равно нулю и меньше или равно 3600 (один час). Если не задано, используются значения по умолчанию: - Для масштабирования вверх: 0 (т.е. стабилизация не выполняется). - Для масштабирования вниз: 300 (т.е. период стабилизации равен 300 секундам).

    • behavior.scaleUp (HPAScalingRules)

      scaleUp — политика масштабирования вверх. Если не задано, используется максимальное из следующих значений:

      • не более чем на 4 Pods за 60 секунд
      • удвоение количества Pods за 60 секунд. Стабилизация не используется.

      HPAScalingRules настраивает поведение масштабирования для одного направления. Эти правила применяются после расчета DesiredReplicas из метрик для HPA. Они могут ограничивать скорость масштабирования, определяя политики масштабирования. Они могут предотвращать колебания, определяя период стабилизации, так что количество реплик не устанавливается мгновенно, а выбирается наилучшее значение из периода стабилизации.

      • behavior.scaleUp.policies ([]HPAScalingPolicy)

        policies — список потенциальных политик масштабирования, которые могут использоваться во время масштабирования. Должна быть указана хотя бы одна политика, в противном случае HPAScalingRules будут считаться невалидными.

        HPAScalingPolicy — одиночная политика, которая должна быть верна для указанного интервала времени.

        • behavior.scaleUp.policies.type (строка), необходимо

          Тип используется для указания политики масштабирования.

        • behavior.scaleUp.policies.value (int32), необходимо

          Значение содержит величину изменения, разрешённую политикой. Она должна быть больше нуля

        • behavior.scaleUp.policies.periodSeconds (int32), необходимо

          PeriodSeconds определяет период времени, для которого политика должна оставаться верной. PeriodSeconds должно быть больше нуля и меньше или равно 1800 (30 минут).

      • behavior.scaleUp.selectPolicy (строка)

        selectPolicy используется для указания, какая политика должна использоваться. Если не указано, используется значение по умолчанию MaxPolicySelect.

      • behavior.scaleUp.stabilizationWindowSeconds (int32)

        StabilizationWindowSeconds — количество секунд, в течение которых следует учитывать предыдущие рекомендации при масштабировании вверх или вниз. StabilizationWindowSeconds должно быть больше или равно нулю и меньше или равно 3600 (один час). Если не задано, используются значения по умолчанию: - Для масштабирования вверх: 0 (т.е. стабилизация не выполняется). - Для масштабирования вниз: 300 (т.е. период стабилизации равен 300 секундам).

  • metrics ([]MetricSpec)

    metrics содержит спецификации, которые используются для расчета желаемого количества реплик (будет использоваться максимальное количество реплик по всем метрикам). Желаемое количество реплик вычисляется умножением отношения между целевым значением и текущим значением на текущее количество Pods. Таким образом, используемые метрики должны уменьшаться по мере увеличения количества Pods и наоборот. Обратитесь к отдельным типам источников метрик для получения дополнительной информации о том, как каждый тип метрик должен реагировать. Если не задано, по умолчанию будет установлена метрика, соответствующая среднему использованию ЦП на уровне 80%.

    MetricSpec определяет, как масштабировать на основе одной метрики (должен быть установлен только type и один другой соответствующий параметр).

    • metrics.type (string), required

      type — тип источника метрики. Он должен быть одним из "ContainerResource", "External", "Object", "Pods" или "Resource", каждый из которых сопоставляется с соответствующим полем в объекте. Примечание: тип "ContainerResource" доступен, когда включена функция HPAContainerMetrics.

    • metrics.containerResource (ContainerResourceMetricSource)

      container resource относится к метрике ресурса (такой, как указанные в запросах и ограничениях), известной Kubernetes, описывающей один контейнер в каждом под в текущей цели масштабирования (например, ЦП или память). Такие метрики встроены в Kubernetes и имеют специальные параметры масштабирования помимо тех, которые доступны для обычных метрик на основе под с использованием источника «pods». Это функция alpha и может быть включена с помощью флага функции HPAContainerMetrics.

      ContainerResourceMetricSource указывает, как масштабировать по метрике ресурса, известной Kubernetes, как указано в запросах и ограничениях, описывая каждый под в текущей цели масштабирования (например, ЦП или память). Значения будут усредняться перед сравнением с целевым значением. Такие метрики встроены в Kubernetes и имеют специальные параметры масштабирования помимо тех, что доступны для обычных метрик на основе под с использованием источника «pods». Должен быть установлен только один тип «target».

      • metrics.containerResource.container (string), required

        container — имя контейнера в под целевого масштабирования

      • metrics.containerResource.name (string), required

        name — имя ресурса.

      • metrics.containerResource.target (MetricTarget), required

        target указывает целевое значение для данной метрики

        MetricTarget определяет целевое значение, среднее значение или среднюю загрузку определённой метрики

        • metrics.containerResource.target.type (string), required

          type — представляет собой тип метрики: Загрузка, Значение или СреднееЗначение

        • metrics.containerResource.target.averageUtilization (int32)

          averageUtilization — целевое значение среднего значения метрики ресурса по всем соответствующим под, представленное в процентах от запрошенного значения ресурса для под. В настоящее время допустимо только для типа источника метрики ресурса

        • metrics.containerResource.target.averageValue (Quantity)

          averageValue — целевое значение среднего значения метрики по всем соответствующим под (как количество)

        • metrics.containerResource.target.value (Quantity)

          value — целевое значение метрики (как количество).

    • metrics.external (ExternalMetricSource)

      external относится к глобальной метрике, которая не ассоциирована ни с каким объектом Kubernetes. Она позволяет автомасштабирование на основе информации, поступающей от компонентов, работающих вне кластера (например, длины очереди в службе облачного обмена сообщениями или QPS от балансировщика нагрузки, работающего вне кластера).

      ExternalMetricSource указывает, как масштабироваться по метрике, не связанной ни с каким объектом Kubernetes (например, длине очереди в службе облачного обмена сообщениями или QPS от балансировщика нагрузки, работающего вне кластера).

      • metrics.external.metric (MetricIdentifier), required

        metric определяет целевую метрику по имени и селектору

        MetricIdentifier определяет имя и (необязательный) селектор для метрики

        • metrics.external.metric.name (string), required

          name — имя заданной метрики

        • metrics.external.metric.selector (LabelSelector)

          selector — строковое представление стандартного селектора меток Kubernetes для данной метрики. Если задан, он передаётся в качестве дополнительного параметра серверу метрик для более точной фокусировки на метрики. Если не задан, используются только metricName для сбора метрик.

      • metrics.external.target (MetricTarget), required

        target указывает целевое значение для данной метрики

        MetricTarget определяет целевое значение, среднее значение или среднюю загрузку определённой метрики

        • metrics.external.target.type (string), required

          type — представляет собой тип метрики: Загрузка, Значение или СреднееЗначение

        • metrics.external.target.averageUtilization (int32)

          averageUtilization — целевое значение среднего значения метрики ресурса по всем соответствующим под, представленное в процентах от запрошенного значения ресурса для под. В настоящее время допустимо только для типа источника метрики ресурса

        • metrics.external.target.averageValue (Quantity)

          averageValue — целевое значение среднего значения метрики по всем соответствующим под (как количество)

        • metrics.external.target.value (Quantity)

          value — целевое значение метрики (как количество).

    • metrics.object (ObjectMetricSource)

      object относится к метрике, описывающей один объект Kubernetes (например, количество запросов в секунду на объекте Ingress).

      ObjectMetricSource указывает, как масштабировать по метрике, описывающей один объект Kubernetes (например, количество запросов в секунду на объекте Ingress).

      • metrics.object.describedObject (CrossVersionObjectReference), required

        CrossVersionObjectReference содержит достаточную информацию, чтобы определить целевой ресурс.

        • metrics.object.describedObject.kind (string), required

          Тип целевого ресурса; Более подробная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"

        • metrics.object.describedObject.name (string), required

          Имя целевого ресурса; Более подробная информация: http://kubernetes.io/docs/user-guide/identifiers#names

        • metrics.object.describedObject.apiVersion (string)

          API-версия целевого ресурса

      • metrics.object.metric (MetricIdentifier), required

        metric определяет целевую метрику по имени и селектору

        MetricIdentifier определяет имя и (необязательный) селектор для метрики

        • metrics.object.metric.name (string), required

          name — имя заданной метрики

        • metrics.object.metric.selector (LabelSelector)

          selector — строковое представление стандартного селектора меток Kubernetes для данной метрики. Если задан, он передаётся в качестве дополнительного параметра серверу метрик для более точной фокусировки на метрики. Если не задан, используются только metricName для сбора метрик.

      • metrics.object.target (MetricTarget), required

        target указывает целевое значение для данной метрики

        MetricTarget определяет целевое значение, среднее значение или среднюю загрузку определённой метрики

        • metrics.object.target.type (string), required

          type — представляет собой тип метрики: Загрузка, Значение или СреднееЗначение

        • metrics.object.target.averageUtilization (int32)

          averageUtilization — целевое значение среднего значения метрики ресурса по всем соответствующим под, представленное в процентах от запрошенного значения ресурса для под. В настоящее время допустимо только для типа источника метрики ресурса

        • metrics.object.target.averageValue (Quantity)

          averageValue — целевое значение среднего значения метрики по всем соответствующим под (как количество)

        • metrics.object.target.value (Quantity)

          value — целевое значение метрики (как количество).

    • metrics.pods (PodsMetricSource)

      pods относится к метрике, описывающей каждый под в текущей цели масштабирования (например, количество обработанных транзакций в секунду). Значения будут усредняться перед сравнением с целевым значением.

      PodsMetricSource указывает, как масштабировать по метрике, описывающей каждый под в текущей цели масштабирования (например, количество обработанных транзакций в секунду). Значения будут усредняться перед сравнением с целевым значением.

      • metrics.pods.metric (MetricIdentifier), required

        metric определяет целевую метрику по имени и селектору

        MetricIdentifier определяет имя и (необязательный) селектор для метрики

        • metrics.pods.metric.name (string), required

          name — имя заданной метрики

        • metrics.pods.metric.selector (LabelSelector)

          selector — строковое представление стандартного селектора меток Kubernetes для данной метрики. Если задан, он передаётся в качестве дополнительного параметра серверу метрик для более точной фокусировки на метрики. Если не задан, используются только metricName для сбора метрик.

      • metrics.pods.target (MetricTarget), required

        target указывает целевое значение для данной метрики

        MetricTarget определяет целевое значение, среднее значение или среднюю загрузку определённой метрики

        • metrics.pods.target.type (string), required

          type — представляет собой тип метрики: Загрузка, Значение или СреднееЗначение

        • metrics.pods.target.averageUtilization (int32)

          averageUtilization — целевое значение среднего значения метрики ресурса по всем соответствующим под, представленное в процентах от запрошенного значения ресурса для под. В настоящее время допустимо только для типа источника метрики ресурса

        • metrics.pods.target.averageValue (Quantity)

          averageValue — целевое значение среднего значения метрики по всем соответствующим под (как количество)

        • metrics.pods.target.value (Quantity)

          value — целевое значение метрики (как количество).

    • metrics.resource (ResourceMetricSource)

      resource относится к метрике ресурса (такой как те, которые указаны в запросах и ограничениях), известной Kubernetes, описывающей каждый pod в текущей целевой шкале (например, CPU или память). Такие метрики встроенные в Kubernetes и имеют специальные параметры масштабирования помимо тех, которые доступны для обычных метрик на под по источнику «pods».

      ResourceMetricSource указывает, как масштабировать на основе метрики ресурса, известной Kubernetes, как указано в запросах и ограничениях, описывая каждый pod в текущей целевой шкале (например, CPU или память). Значения усредняются перед сравнением с целевым значением. Такие метрики встроенные в Kubernetes и имеют специальные параметры масштабирования помимо тех, которые доступны для обычных метрик на под по источнику «pods». Должен быть установлен только один тип «target».

      • metrics.resource.name (string), required

        name — имя ресурса.

      • metrics.resource.target (MetricTarget), required

        target определяет целевое значение для данной метрики

        MetricTarget определяет целевое значение, среднее значение или среднюю загрузку определенной метрики

        • metrics.resource.target.type (string), required

          type представляет собой тип метрики: Utilization, Value или AverageValue

        • metrics.resource.target.averageUtilization (int32)

          averageUtilization — целевое значение среднего значения метрики ресурса по всем соответствующим pods, представленное в процентах от запрошенного значения ресурса для pods. В настоящее время допустимо только для типа источника метрики ресурса

        • metrics.resource.target.averageValue (Quantity)

          averageValue — целевое значение среднего значения метрики по всем соответствующим pods (как количество).

        • metrics.resource.target.value (Quantity)

          value — целевое значение метрики (как количество).

HorizontalPodAutoscalerStatus

HorizontalPodAutoscalerStatus описывает текущий статус горизонтального автомасштабирования pod.

  • currentReplicas (int32), required

    currentReplicas — текущее количество реплик pods, управляемых этим автомасштабированием, как это было видно последним автомасштабированием.

  • desiredReplicas (int32), required

    desiredReplicas — желаемое количество реплик pods, управляемых этим автомасштабированием, как рассчитанное последним автомасштабированием.

  • conditions ([]HorizontalPodAutoscalerCondition)

    conditions — набор условий, необходимых для масштабирования целевой области этим автомасштабированием, и указывает, выполнены ли эти условия.

    HorizontalPodAutoscalerCondition описывает состояние HorizontalPodAutoscaler в определенный момент.

    • conditions.status (string), required

      status — состояние условия (True, False, Unknown)

    • conditions.type (string), required

      type описывает текущее состояние

    • conditions.lastTransitionTime (Time)

      lastTransitionTime — последнее время, когда состояние перешло из одного статуса в другой

      Time — это оболочка вокруг time.Time, которая поддерживает правильную сериализацию в YAML и JSON. Оболочки предоставляются для многих из фабричных методов, предлагаемых пакетом time.

    • conditions.message (string)

      message — удобочитаемое объяснение, содержащее подробности о переходе.

    • conditions.reason (string)

      reason — причина последнего перехода состояния.

  • currentMetrics ([]MetricStatus)

    currentMetrics — последнее прочитанное состояние метрик, используемых этим автомасштабированием.

    MetricStatus описывает последнее прочитанное состояние одной метрики.

    • currentMetrics.type (string), required

      type — тип источника метрики. Будет одним из "ContainerResource", "External", "Object", "Pods" или "Resource", каждый из которых соответствует соответствующему полю в объекте. Примечание: тип "ContainerResource" доступен, когда включен шлюз функций HPAContainerMetrics

    • currentMetrics.containerResource (ContainerResourceMetricStatus)

      container resource относится к метрике ресурса (таким, как те, которые указаны в запросах и ограничениях), известной Kubernetes, описывающей один контейнер в каждом pod в текущей целевой шкале (например, CPU или память). Такие метрики встроенные в Kubernetes и имеют особые параметры масштабирования, помимо тех, что доступны для обычных метрик на pod с использованием источника "pods".

      ContainerResourceMetricStatus указывает текущее значение метрики ресурса, известной Kubernetes, как указано в запросах и ограничениях, описывающей один контейнер в каждом pod в текущей целевой шкале (например, CPU или память). Такие метрики встроенные в Kubernetes и имеют особые параметры масштабирования, помимо тех, что доступны для обычных метрик на pod с использованием источника "pods".

      • currentMetrics.containerResource.container (string), required

        Container — имя контейнера в pod целевой шкалы

      • currentMetrics.containerResource.current (MetricValueStatus), required

        current содержит текущее значение для данной метрики

        MetricValueStatus содержит текущее значение для метрики

        • currentMetrics.containerResource.current.averageUtilization (int32)

          currentAverageUtilization — текущее значение среднего значения метрики ресурса по всем соответствующим pod, представленное в процентах от запрошенного значения ресурса для pod.

        • currentMetrics.containerResource.current.averageValue (Quantity)

          averageValue — текущее значение среднего значения метрики по всем соответствующим pod (в виде значения).

        • currentMetrics.containerResource.current.value (Quantity)

          value — текущее значение метрики (в виде значения).

      • currentMetrics.containerResource.name (string), required

        Name — имя ресурса.

    • currentMetrics.external (ExternalMetricStatus)

      external относится к глобальной метрике, которая не связана ни с каким объектом Kubernetes. Она позволяет автоматическое масштабирование на основе информации, поступающей от компонентов, работающих вне кластера (например, длина очереди в службе облачного обмена сообщениями или QPS от балансировщика нагрузки, работающего вне кластера).

      ExternalMetricStatus указывает текущее значение глобальной метрики, не связанной ни с каким объектом Kubernetes.

      • currentMetrics.external.current (MetricValueStatus), required

        current содержит текущее значение для данной метрики

        MetricValueStatus содержит текущее значение для метрики

        • currentMetrics.external.current.averageUtilization (int32)

          currentAverageUtilization — текущее значение среднего значения метрики ресурса по всем соответствующим pod, представленное в процентах от запрошенного значения ресурса для pod.

        • currentMetrics.external.current.averageValue (Quantity)

          averageValue — текущее значение среднего значения метрики по всем соответствующим pod (в виде значения).

        • currentMetrics.external.current.value (Quantity)

          value — текущее значение метрики (в виде значения).

      • currentMetrics.external.metric (MetricIdentifier), required

        metric определяет целевую метрику по имени и селектору

        MetricIdentifier определяет имя и (необязательный) селектор для метрики

        • currentMetrics.external.metric.name (string), required

          name — имя данной метрики

        • currentMetrics.external.metric.selector (LabelSelector)

          selector — строковое представление стандартного селектора меток Kubernetes для данной метрики. При установке он передается как дополнительный параметр в сервер метрик для более конкретного определения области метрик. При отсутствии используется только metricName для сбора метрик.

    • currentMetrics.object (ObjectMetricStatus)

      object относится к метрике, описывающей один объект Kubernetes (например, количество запросов в секунду для объекта Ingress).

      ObjectMetricStatus указывает текущее значение метрики, описывающей объект Kubernetes (например, количество запросов в секунду для объекта Ingress).

      • currentMetrics.object.current (MetricValueStatus), required

        current содержит текущее значение для данной метрики

        MetricValueStatus содержит текущее значение для метрики

        • currentMetrics.object.current.averageUtilization (int32)

          currentAverageUtilization — текущее значение среднего значения метрики ресурса по всем соответствующим pod, представленное в процентах от запрошенного значения ресурса для pod.

        • currentMetrics.object.current.averageValue (Quantity)

          averageValue — текущее значение среднего значения метрики по всем соответствующим pod (в виде значения).

        • currentMetrics.object.current.value (Quantity)

          value — текущее значение метрики (в виде значения).

      • currentMetrics.object.describedObject (CrossVersionObjectReference), required

        CrossVersionObjectReference содержит достаточную информацию, чтобы идентифицировать целевой ресурс.

        • currentMetrics.object.describedObject.kind (string), required

          Вид целевого объекта; Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"

        • currentMetrics.object.describedObject.name (string), required

          Имя целевого объекта; Подробнее: http://kubernetes.io/docs/user-guide/identifiers#names

        • currentMetrics.object.describedObject.apiVersion (string)

          Версия API целевого объекта

      • currentMetrics.object.metric (MetricIdentifier), required

        metric определяет целевую метрику по имени и селектору

        MetricIdentifier определяет имя и (необязательный) селектор для метрики

        • currentMetrics.object.metric.name (string), required

          name — имя данной метрики

        • currentMetrics.object.metric.selector (LabelSelector)

          selector — строковое представление стандартного селектора меток Kubernetes для данной метрики. При установке он передается как дополнительный параметр в сервер метрик для более конкретного определения области метрик. При отсутствии используется только metricName для сбора метрик.

    • currentMetrics.pods (PodsMetricStatus)

      pods относится к метрике, описывающей каждый pod в текущей целевой шкале (например, количество обработанных транзакций в секунду). Значения усредняются перед сравнением с целевым значением.

      PodsMetricStatus указывает текущее значение метрики, описывающей каждый pod в текущей целевой шкале (например, количество обработанных транзакций в секунду).

      • currentMetrics.pods.current (MetricValueStatus), required

        current содержит текущее значение для данной метрики

        MetricValueStatus содержит текущее значение для метрики

        • currentMetrics.pods.current.averageUtilization (int32)

          currentAverageUtilization — текущее значение среднего значения метрики ресурса по всем соответствующим pod, представленное в процентах от запрошенного значения ресурса для pod.

        • currentMetrics.pods.current.averageValue (Quantity)

          averageValue — текущее значение среднего значения метрики по всем соответствующим pod (в виде значения).

        • currentMetrics.pods.current.value (Quantity)

          value — текущее значение метрики (в виде значения).

      • currentMetrics.pods.metric (MetricIdentifier), required

        metric определяет целевую метрику по имени и селектору

        MetricIdentifier определяет имя и (необязательный) селектор для метрики

        • currentMetrics.pods.metric.name (string), required

          name — имя данной метрики

        • currentMetrics.pods.metric.selector (LabelSelector)

          selector — строковое представление стандартного селектора меток Kubernetes для данной метрики. При установке он передается как дополнительный параметр в сервер метрик для более конкретного определения области метрик. При отсутствии используется только metricName для сбора метрик.

    • currentMetrics.resource (ResourceMetricStatus)

      resource относится к метрике ресурса (например, указанной в запросах и ограничениях), известной Kubernetes, описывающей каждый pod в текущей цели масштабирования (например, CPU или память). Такие метрики встроенные в Kubernetes и имеют особые опции масштабирования помимо тех, которые доступны обычным метрикам на pod с помощью источника "pods".

      ResourceMetricStatus указывает текущее значение метрики ресурса, известного Kubernetes, как указано в запросах и ограничениях, описывающей каждый pod в текущей цели масштабирования (например, CPU или память). Такие метрики встроенные в Kubernetes и имеют особые опции масштабирования помимо тех, которые доступны обычным метрикам на pod с помощью источника "pods".

      • currentMetrics.resource.current (MetricValueStatus), required

        current содержит текущее значение для данной метрики

        MetricValueStatus содержит текущее значение для метрики

        • currentMetrics.resource.current.averageUtilization (int32)

          currentAverageUtilization — текущее значение среднего значения метрики ресурса по всем соответствующим pods, представленное как процент от запрошенного значения ресурса для pods.

        • currentMetrics.resource.current.averageValue (Quantity)

          averageValue — текущее значение среднего значения метрики по всем соответствующим pods (как количество)

        • currentMetrics.resource.current.value (Quantity)

          value — текущее значение метрики (как количество).

      • currentMetrics.resource.name (string), required

        Name — имя ресурса.

  • lastScaleTime (Time)

    lastScaleTime — последнее время, когда HorizontalPodAutoscaler масштабировал количество pods, используемое автомасштабированием для управления частотой изменения количества pods.

    Time — оболочка вокруг time.Time, которая поддерживает правильную сериализацию в YAML и JSON. Оболочки предоставляются для многих фабричных методов пакета time.

  • observedGeneration (int64)

    observedGeneration — самая последняя наблюдаемая генерация этим автомасштабированием.

Список HorizontalPodAutoscaler

Список HorizontalPodAutoscaler — это список объектов горизонтального автомасштабирования pods.

  • apiVersion: autoscaling/v2beta2

  • kind: HorizontalPodAutoscalerList

  • metadata (ListMeta)

    metadata — стандартные метаданные списка.

  • items ([]HorizontalPodAutoscaler), required

    items — список объектов горизонтального автомасштабирования pods.

© 2022 The Kubernetes Authors | Documentation Distributed under CC BY 4.0
Copyright © 2022 The Linux Foundation ®. All rights reserved.
https://v1-24.docs.kubernetes.io/docs/reference/kubernetes-api/workload-resources/horizontal-pod-autoscaler-v2beta2/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API