HorizontalPodAutoscaler
apiVersion: autoscaling/v2
import "k8s.io/api/autoscaling/v2"
HorizontalPodAutoscaler
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 описывает желаемое поведение HorizontalPodAutoscaler.
-
maxReplicas (int32), required
maxReplicas — максимальное количество реплик, до которого может масштабироваться автоматическое масштабирование. Оно не может быть меньше minReplicas.
-
scaleTargetRef (CrossVersionObjectReference), required
scaleTargetRef указывает на целевой ресурс для масштабирования и используется для подсчёта метрик для под и для фактического изменения количества реплик.
CrossVersionObjectReference содержит достаточную информацию для идентификации ссылаемого ресурса.
-
scaleTargetRef.kind (string), required
kind — тип ссылаемого объекта; Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
scaleTargetRef.name (string), required
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)
Атомарно: будет заменено при слиянии
policies — список потенциальных политик масштабирования, которые могут использоваться при масштабировании. Должна быть указана хотя бы одна политика, в противном случае HPAScalingRules будут считаться недействительными.
HPAScalingPolicy — отдельная политика, которая должна выполняться в течение указанного промежутка времени.
-
behavior.scaleDown.policies.type (string), required
type используется для указания политики масштабирования.
-
behavior.scaleDown.policies.value (int32), required
value содержит величину изменения, разрешённую политикой. Она должна быть больше нуля.
-
behavior.scaleDown.policies.periodSeconds (int32), required
periodSeconds — интервал времени, в течение которого должна выполняться политика. PeriodSeconds должен быть больше нуля и меньше или равен 1800 (30 мин).
-
-
behavior.scaleDown.selectPolicy (string)
selectPolicy используется для указания, какая политика должна использоваться. Если не указано, используется значение по умолчанию Max.
-
behavior.scaleDown.stabilizationWindowSeconds (int32)
stabilizationWindowSeconds — количество секунд, в течение которых должны рассматриваться предыдущие рекомендации при масштабировании вверх или вниз. StabilizationWindowSeconds должно быть больше или равно нулю и меньше или равно 3600 (одному часу). Если не задано, используются значения по умолчанию: - Для увеличения: 0 (т.е. стабилизация не выполняется). - Для уменьшения: 300 (т.е. период стабилизации 300 секунд).
-
-
behavior.scaleUp (HPAScalingRules)
scaleUp — политика масштабирования вверх. Если не указана, используется большее из:
- не больше 4 под на 60 секунд
- удвоение количества под за 60 секунд
HPAScalingRules настраивает поведение масштабирования в одном направлении. Эти правила применяются после расчёта DesiredReplicas на основе метрик для HPA. Они могут ограничивать скорость масштабирования, указывая политики масштабирования. Они могут предотвращать скачки, указывая период стабилизации, таким образом, количество реплик не устанавливается мгновенно, а выбирается наиболее безопасное значение из периода стабилизации.
-
behavior.scaleUp.policies ([]HPAScalingPolicy)
Атомарно: будет заменено при слиянии
policies — список потенциальных политик масштабирования, которые могут использоваться при масштабировании. Должна быть указана хотя бы одна политика, в противном случае HPAScalingRules будут считаться недействительными.
HPAScalingPolicy — отдельная политика, которая должна выполняться в течение указанного промежутка времени.
-
behavior.scaleUp.policies.type (string), required
type используется для указания политики масштабирования.
-
behavior.scaleUp.policies.value (int32), required
value содержит величину изменения, разрешённую политикой. Она должна быть больше нуля.
-
behavior.scaleUp.policies.periodSeconds (int32), required
periodSeconds — интервал времени, в течение которого должна выполняться политика. PeriodSeconds должен быть больше нуля и меньше или равен 1800 (30 мин).
-
-
behavior.scaleUp.selectPolicy (string)
selectPolicy используется для указания, какая политика должна использоваться. Если не указано, используется значение по умолчанию Max.
-
behavior.scaleUp.stabilizationWindowSeconds (int32)
stabilizationWindowSeconds — количество секунд, в течение которых должны рассматриваться предыдущие рекомендации при масштабировании вверх или вниз. StabilizationWindowSeconds должно быть больше или равно нулю и меньше или равно 3600 (одному часу). Если не задано, используются значения по умолчанию: - Для увеличения: 0 (т.е. стабилизация не выполняется). - Для уменьшения: 300 (т.е. период стабилизации 300 секунд).
-
-
metrics ([]MetricSpec)
Атомарно: будет заменено при слиянии
metrics содержит спецификации для расчёта желаемого количества реплик (используется максимальное количество реплик по всем метрикам). Желаемое количество реплик рассчитывается путём умножения отношения между целевым значением и текущим значением на текущее количество под. Следовательно, используемые метрики должны уменьшаться по мере увеличения количества под и наоборот. Подробнее о том, как должен реагировать каждый тип метрики, смотрите в документации по индивидуальным источникам метрик. Если не указано, по умолчанию будет установлена метрика на 80% средней загрузки ЦП.
MetricSpec описывает, как масштабироваться на основе одной метрики (должны быть установлены только
typeи одно другое соответствующее поле).
-
metrics.type (string), required
type — это тип источника метрики. Он должен быть одним из "ContainerResource", "External", "Object", "Pods" или "Resource", каждый из которых сопоставляется с соответствующим полем в объекте. Примечание: тип "ContainerResource" доступен, когда включен флаг функциональности HPAContainerMetrics
-
metrics.containerResource (ContainerResourceMetricSource)
containerResource ссылается на метрику ресурса (например, те, которые указаны в запросах и ограничениях), известную Kubernetes, описывающую один контейнер в каждом pod текущей целевой задачи масштабирования (например, CPU или память). Такие метрики встроены в Kubernetes и имеют специальные параметры масштабирования в дополнение к тем, которые доступны для обычных метрик на каждый pod, используя источник "pods". Это функция альфа-версии, и ее можно включить с помощью флага функциональности HPAContainerMetrics.
ContainerResourceMetricSource указывает, как масштабировать метрику ресурса, известную Kubernetes, как указано в запросах и ограничениях, описывающую каждый pod в текущей целевой задаче масштабирования (например, CPU или память). Значения будут усреднены перед сравнением с целевым значением. Такие метрики встроены в Kubernetes и имеют специальные параметры масштабирования в дополнение к тем, которые доступны для обычных метрик на каждый pod, используя источник "pods". Должен быть установлен только один тип "target".
-
metrics.containerResource.container (string), required
container — это имя контейнера в pods целевого объекта масштабирования
-
metrics.containerResource.name (string), required
name — это имя рассматриваемого ресурса.
-
metrics.containerResource.target (MetricTarget), required
target указывает целевое значение для данной метрики
MetricTarget определяет целевое значение, среднее значение или среднее использование конкретной метрики
-
metrics.containerResource.target.type (string), required
type представляет, является ли тип метрики Utilization, Value или AverageValue
-
metrics.containerResource.target.averageUtilization (int32)
averageUtilization — это целевое значение среднего значения метрики ресурса по всем соответствующим pod, представленное в виде процента от запрошенного значения ресурса для pod. В настоящее время это допустимо только для типа источника метрики Resource
-
metrics.containerResource.target.averageValue (Quantity)
averageValue — это целевое значение среднего значения метрики по всем соответствующим pod (как величина)
-
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 представляет, является ли тип метрики Utilization, Value или AverageValue
-
metrics.external.target.averageUtilization (int32)
averageUtilization — это целевое значение среднего значения метрики ресурса по всем соответствующим pod, представленное в виде процента от запрошенного значения ресурса для pod. В настоящее время это допустимо только для типа источника метрики Resource
-
metrics.external.target.averageValue (Quantity)
averageValue — это целевое значение среднего значения метрики по всем соответствующим pod (как величина)
-
metrics.external.target.value (Quantity)
value — это целевое значение метрики (как величина).
-
-
-
metrics.object (ObjectMetricSource)
object ссылается на метрику, описывающую один объект kubernetes (например, hits-per-second для объекта Ingress).
ObjectMetricSource указывает, как масштабировать метрику, описывающую объект kubernetes (например, hits-per-second для объекта Ingress).
-
metrics.object.describedObject (CrossVersionObjectReference), required
describedObject указывает описания объекта, такие как kind, name, apiVersion
CrossVersionObjectReference содержит достаточно информации, чтобы идентифицировать ссылаемый ресурс.
-
metrics.object.describedObject.kind (string), required
kind — это тип референта; Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
metrics.object.describedObject.name (string), required
name — это имя референта; Дополнительная информация: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
-
metrics.object.describedObject.apiVersion (string)
apiVersion — это версия 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 представляет, является ли тип метрики Utilization, Value или AverageValue
-
metrics.object.target.averageUtilization (int32)
averageUtilization — это целевое значение среднего значения метрики ресурса по всем соответствующим pod, представленное в виде процента от запрошенного значения ресурса для pod. В настоящее время это допустимо только для типа источника метрики Resource
-
metrics.object.target.averageValue (Quantity)
averageValue — это целевое значение среднего значения метрики по всем соответствующим pod (как величина)
-
metrics.object.target.value (Quantity)
value — это целевое значение метрики (как величина).
-
-
-
metrics.pods (PodsMetricSource)
pods ссылается на метрику, описывающую каждый pod в текущей целевой задаче масштабирования (например, transactions-processed-per-second). Значения будут усреднены перед сравнением с целевым значением.
PodsMetricSource указывает, как масштабировать метрику, описывающую каждый pod в текущей целевой задаче масштабирования (например, 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 — это целевое значение среднего значения метрики ресурса по всем соответствующим pod, представленное в виде процента от запрошенного значения ресурса для pod. В настоящее время это допустимо только для типа источника метрики Resource
-
metrics.pods.target.averageValue (Quantity)
averageValue — это целевое значение среднего значения метрики по всем соответствующим pod (как величина)
-
metrics.pods.target.value (Quantity)
value — это целевое значение метрики (как величина).
-
-
-
-
metrics.resource (ResourceMetricSource)
resource относится к метрике ресурса (например, тем, которые указаны в запросах и ограничениях) известной Kubernetes, описывающей каждый pod в текущей цели масштабирования (например, CPU или память). Такие метрики встроены в Kubernetes и имеют особые параметры масштабирования помимо доступных для обычных метрик по pod с использованием источника "pods".
ResourceMetricSource указывает, как масштабировать на основе метрики ресурса, известной Kubernetes, как указано в запросах и ограничениях, описывающих каждый pod в текущей цели масштабирования (например, CPU или память). Значения будут усреднены перед сравнением с целевым значением. Такие метрики встроены в Kubernetes и имеют особые параметры масштабирования помимо доступных для обычных метрик по pod с использованием источника "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 — это целевое значение среднего значения метрики ресурса по всем соответствующим pod, представленное в процентах от запрошенного значения ресурса для pod. В настоящее время допустимо только для типа источника метрики "Resource".
-
metrics.resource.target.averageValue (Quantity)
averageValue — это целевое значение среднего значения метрики по всем соответствующим pod (в качестве количества).
-
metrics.resource.target.value (Quantity)
value — это целевое значение метрики (в качестве количества).
-
-
-
HorizontalPodAutoscalerStatus
HorizontalPodAutoscalerStatus описывает текущее состояние горизонтального автомасштабирования pod.
-
desiredReplicas (int32), required
desiredReplicas — желаемое количество реплик pod, управляемых этим автомасштабированием, как было вычислено автомасштабированием в последний раз.
-
conditions ([]HorizontalPodAutoscalerCondition)
Patch strategy: merge on key
typeMap: 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. Обёртки предоставляются для многих фабричных методов, предлагаемых пакетом 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 — это имя контейнера в pods целевого объекта масштабирования
-
currentMetrics.containerResource.current (MetricValueStatus), required
current содержит текущее значение для данной метрики
MetricValueStatus содержит текущее значение для метрики
-
currentMetrics.containerResource.current.averageUtilization (int32)
currentAverageUtilization — это текущее значение среднего значения метрики ресурса по всем соответствующим pods, представленное в виде процента от запрошенного значения ресурса для pods.
-
currentMetrics.containerResource.current.averageValue (Quantity)
averageValue — это текущее значение среднего значения метрики по всем соответствующим pods (как величина)
-
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 — это текущее значение среднего значения метрики ресурса по всем соответствующим pods, представленное в виде процента от запрошенного значения ресурса для pods.
-
currentMetrics.external.current.averageValue (Quantity)
averageValue — это текущее значение среднего значения метрики по всем соответствующим pods (как величина)
-
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 (например, hits-per-second для объекта Ingress).
ObjectMetricStatus указывает текущее значение метрики, описывающей объект kubernetes (например, hits-per-second для объекта Ingress).
-
currentMetrics.object.current (MetricValueStatus), required
current содержит текущее значение для данной метрики
MetricValueStatus содержит текущее значение для метрики
-
currentMetrics.object.current.averageUtilization (int32)
currentAverageUtilization — это текущее значение среднего значения метрики ресурса по всем соответствующим pods, представленное в виде процента от запрошенного значения ресурса для pods.
-
currentMetrics.object.current.averageValue (Quantity)
averageValue — это текущее значение среднего значения метрики по всем соответствующим pods (как величина)
-
currentMetrics.object.current.value (Quantity)
value — это текущее значение метрики (как величина).
-
-
currentMetrics.object.describedObject (CrossVersionObjectReference), required
DescribedObject указывает описания объекта, такие как kind, name, apiVersion
CrossVersionObjectReference содержит достаточно информации, чтобы вы могли идентифицировать указанный ресурс.
-
currentMetrics.object.describedObject.kind (string), required
kind — это тип референта; Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
currentMetrics.object.describedObject.name (string), required
name — это имя референта; Дополнительная информация: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
-
currentMetrics.object.describedObject.apiVersion (string)
apiVersion — это версия 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 в текущей целевой масштабируемой единице (например, transactions-processed-per-second). Значения будут усреднены, прежде чем сравниваться с целевым значением.
PodsMetricStatus указывает текущее значение метрики, описывающей каждый pod в текущей целевой масштабируемой единице (например, transactions-processed-per-second).
-
currentMetrics.pods.current (MetricValueStatus), required
current содержит текущее значение для данной метрики
MetricValueStatus содержит текущее значение для метрики
-
currentMetrics.pods.current.averageUtilization (int32)
currentAverageUtilization — это текущее значение среднего значения метрики ресурса по всем соответствующим pods, представленное в виде процента от запрошенного значения ресурса для pods.
-
currentMetrics.pods.current.averageValue (Quantity)
averageValue — это текущее значение среднего значения метрики по всем соответствующим pods (как величина)
-
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, описывающей каждый под в текущей целевой шкале (например, процессор или память). Такие метрики встроенны в Kubernetes и имеют специальные параметры масштабирования помимо тех, которые доступны для обычных метрик на под с помощью источника "pods".
ResourceMetricStatus указывает текущее значение метрики ресурса, известной Kubernetes, как указано в запросах и ограничениях, описывающей каждый под в текущей целевой шкале (например, процессор или память). Такие метрики встроенны в Kubernetes и имеют специальные параметры масштабирования помимо тех, которые доступны для обычных метрик на под с помощью источника "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 — имя ресурса.
-
-
-
currentReplicas (int32)
currentReplicas — текущее количество реплик pods, управляемых этим автоматическим масштабированием, как это было в последний раз видно автоматическим масштабированием.
-
lastScaleTime (Time)
lastScaleTime — последнее время, когда HorizontalPodAutoscaler изменил количество pods, используемое автоматическим масштабированием для управления частотой изменения количества pods.
Time — оболочка вокруг time.Time, которая поддерживает правильную сериализацию в YAML и JSON. Оболочки предоставляются для многих фабричных методов, которые предлагает пакет time.
-
observedGeneration (int64)
observedGeneration — самая последняя генерация, наблюдаемая этим автоматическим масштабированием.
Список горизонтальных автомасштабируемых pods
HorizontalPodAutoscalerList — это список объектов горизонтального автоматического масштабирования pods.
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscalerList
-
metadata (ListMeta)
metadata — стандартные метаданные списка.
-
items ([]HorizontalPodAutoscaler), required
items — список объектов горизонтального автоматического масштабирования pods.
© 2024 The Kubernetes Authors | Documentation Distributed under CC BY 4.0
Copyright © 2024 The Linux Foundation ®. All rights reserved.
https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/horizontal-pod-autoscaler-v2/