Spec-Zone.ru › Kubernetes 1.28

HorizontalPodAutoscaler

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

apiVersion: autoscaling/v2

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

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

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

  • apiVersion: autoscaling/v2

  • 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 — текущая информация об автомасштабировании.

HorizontalPodAutoscalerSpec

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

  • maxReplicas (int32), обязательное поле

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

  • scaleTargetRef (CrossVersionObjectReference), обязательное поле

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

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

    • scaleTargetRef.kind (string), обязательное поле

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

    • scaleTargetRef.name (string), обязательное поле

      name — имя ссылаемого объекта; Дополнительная информация: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

    • scaleTargetRef.apiVersion (string)

      apiVersion — версия API ссылаемого объекта

  • minReplicas (int32)

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

  • behavior (HorizontalPodAutoscalerBehavior)

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

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

    • behavior.scaleDown (HPAScalingRules)

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

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

      • behavior.scaleDown.policies ([]HPAScalingPolicy)

        Atomic: will be replaced during a merge

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

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

        • behavior.scaleDown.policies.type (string), обязательное поле

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

        • behavior.scaleDown.policies.value (int32), обязательное поле

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

        • behavior.scaleDown.policies.periodSeconds (int32), обязательное поле

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

      • behavior.scaleDown.selectPolicy (string)

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

      • behavior.scaleDown.stabilizationWindowSeconds (int32)

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

  • метрики ([]MetricSpec)

    Атомарно: будет заменено во время слияния

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

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

    • metrics.type (строка), обязательно

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

    • metrics.containerResource (ContainerResourceMetricSource)

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

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

      • metrics.containerResource.container (строка), обязательно

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

      • metrics.containerResource.name (строка), обязательно

        name — имя интересующего ресурса.

      • metrics.containerResource.target (MetricTarget), обязательно

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

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

        • metrics.containerResource.target.type (строка), обязательно

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

        • metrics.containerResource.target.averageUtilization (int32)

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

        • 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), обязательно

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

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

        • metrics.external.metric.name (строка), обязательно

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

        • metrics.external.metric.selector (LabelSelector)

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

      • metrics.external.target (MetricTarget), обязательно

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

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

        • metrics.external.target.type (строка), обязательно

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

        • metrics.external.target.averageUtilization (int32)

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

        • 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), обязательно

        describedObject указывает описание объекта, такие как kind,name apiVersion

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

        • metrics.object.describedObject.kind (строка), обязательно

          kind — тип референта; Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

        • metrics.object.describedObject.name (строка), обязательно

          name — имя референта; Дополнительная информация: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

        • metrics.object.describedObject.apiVersion (строка)

          apiVersion — версия API референта

      • metrics.object.metric (MetricIdentifier), обязательно

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

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

        • metrics.object.metric.name (строка), обязательно

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

        • metrics.object.metric.selector (LabelSelector)

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

      • metrics.object.target (MetricTarget), обязательно

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

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

        • metrics.object.target.type (строка), обязательно

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

        • metrics.object.target.averageUtilization (int32)

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

        • metrics.object.target.averageValue (Quantity)

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

        • metrics.object.target.value (Quantity)

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

    • metrics.pods (PodsMetricSource)

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

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

      • 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 указывает, является ли тип метрики Utilization, Value или AverageValue

        • metrics.pods.target.averageUtilization (int32)

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

        • metrics.pods.target.averageValue (Quantity)

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

        • metrics.pods.target.value (Quantity)

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

    • metrics.resource (ResourceMetricSource)

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

      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. В настоящее время действует только для типа источника метрики Resource

        • metrics.resource.target.averageValue (Quantity)

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

        • metrics.resource.target.value (Quantity)

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

HorizontalPodAutoscalerStatus

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

  • desiredReplicas (int32), required

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

  • conditions ([]HorizontalPodAutoscalerCondition)

    Patch strategy: merge on key type

    Map: unique values on key type will be kept during a merge

    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. Оболочки предоставляются для многих из фабричных методов, которые предлагает пакет времени.

    • conditions.message (string)

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

    • conditions.reason (string)

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

  • currentMetrics ([]MetricStatus)

    Атомарно: будет заменено во время слияния

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

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

    • currentMetrics.type (string), необходимо

      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), необходимо

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

      • currentMetrics.containerResource.current (MetricValueStatus), необходимо

        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), необходимо

        name — имя рассматриваемого ресурса.

    • currentMetrics.external (ExternalMetricStatus)

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

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

      • currentMetrics.external.current (MetricValueStatus), необходимо

        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), необходимо

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

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

        • currentMetrics.external.metric.name (string), необходимо

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

        • currentMetrics.external.metric.selector (LabelSelector)

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

    • currentMetrics.object (ObjectMetricStatus)

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

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

      • currentMetrics.object.current (MetricValueStatus), необходимо

        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), необходимо

        DescribedObject указывает описание объекта, такого как kind, name, apiVersion

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

        • currentMetrics.object.describedObject.kind (string), необходимо

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

        • currentMetrics.object.describedObject.name (string), необходимо

          name — имя ссылаемого объекта; Дополнительная информация: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

        • currentMetrics.object.describedObject.apiVersion (string)

          apiVersion — версия API ссылаемого объекта

      • currentMetrics.object.metric (MetricIdentifier), необходимо

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

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

        • currentMetrics.object.metric.name (string), необходимо

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

        • currentMetrics.object.metric.selector (LabelSelector)

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

    • currentMetrics.pods (PodsMetricStatus)

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

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

      • currentMetrics.pods.current (MetricValueStatus), необходимо

        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), необходимо

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

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

        • currentMetrics.pods.metric.name (string), необходимо

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

        • currentMetrics.pods.metric.selector (LabelSelector)

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

    • currentMetrics.resource (ResourceMetricStatus)

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

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

      • currentMetrics.resource.current (MetricValueStatus), required

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

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

        • currentMetrics.resource.current.averageUtilization (int32)

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

        • currentMetrics.resource.current.averageValue (Quantity)

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

        • currentMetrics.resource.current.value (Quantity)

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

      • currentMetrics.resource.name (string), required

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

  • currentReplicas (int32)

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

  • lastScaleTime (Time)

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

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

  • observedGeneration (int64)

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

HorizontalPodAutoscalerList

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

  • apiVersion: autoscaling/v2

  • kind: HorizontalPodAutoscalerList

  • metadata (ListMeta)

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

  • items ([]HorizontalPodAutoscaler), required

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

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

Spec-Zone.ru

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