HorizontalPodAutoscaler
apiVersion: autoscaling/v2
import "k8s.io/api/autoscaling/v2"
HorizontalPodAutoscaler
HorizontalPodAutoscaler — это конфигурация для горизонтального автомасштабирования под, которое автоматически управляет количеством реплик любого ресурса, реализующего подресурс масштабирования, на основе указанных метрик.
-
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 указывает на целевой ресурс для масштабирования и используется для подсчёта метрик для pods, а также для фактического изменения количества реплик.
CrossVersionObjectReference содержит достаточную информацию для идентификации ссылаемого ресурса.
-
scaleTargetRef.kind (string), необходимо
Тип ссылаемого объекта; Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
scaleTargetRef.name (string), необходимо
Имя ссылаемого объекта; Дополнительная информация: http://kubernetes.io/docs/user-guide/identifiers#names
-
scaleTargetRef.apiVersion (string)
API-версия ссылаемого объекта
-
-
minReplicas (int32)
minReplicas — минимальное количество реплик, до которого автомасштабирование может масштабироваться вниз. По умолчанию равно 1 pod. minReplicas может быть равно 0, если включена альфа-функция HPAScaleToZero, и настроена хотя бы одна внешняя метрика или метрика объекта. Масштабирование активно, пока доступно хотя бы одно значение метрики.
-
behavior (HorizontalPodAutoscalerBehavior)
behavior настраивает поведение масштабирования целевого объекта как в сторону увеличения, так и в сторону уменьшения (соответственно поля scaleUp и scaleDown). Если не задано, используются значения по умолчанию HPAScalingRules для увеличения и уменьшения.
HorizontalPodAutoscalerBehavior настраивает поведение масштабирования целевого объекта в обоих направлениях (scaleUp и scaleDown соответственно).
-
behavior.scaleDown (HPAScalingRules)
scaleDown — политика масштабирования вниз. Если не задано, используется значение по умолчанию: разрешено уменьшить количество pods до minReplicas, с периодом стабилизации 300 секунд (т.е. используется наилучшее значение за последние 300 секунд).
HPAScalingRules настраивает поведение масштабирования в одном направлении. Эти правила применяются после вычисления DesiredReplicas из метрик для HPA. Они могут ограничить скорость масштабирования, указав политики масштабирования. Они могут предотвратить колебания, указав период стабилизации, поэтому количество реплик не устанавливается мгновенно, вместо этого выбирается наиболее безопасное значение из периода стабилизации.
-
behavior.scaleDown.policies ([]HPAScalingPolicy)
Атомарно: будет заменено при слиянии
policies — список потенциальных политик масштабирования, которые могут быть использованы во время масштабирования. Должна быть указана хотя бы одна политика, в противном случае HPAScalingRules будут считаться недействительными.
HPAScalingPolicy — это отдельная политика, которая должна выполняться в течение указанного интервала.
-
behavior.scaleDown.policies.type (string), необходимо
Тип используется для указания политики масштабирования.
-
behavior.scaleDown.policies.value (int32), необходимо
Значение содержит величину изменения, разрешённую политикой. Она должна быть больше нуля.
-
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 секунд).
-
-
behavior.scaleUp (HPAScalingRules)
scaleUp — политика масштабирования вверх. Если не задано, используется более высокое из следующих значений:
- увеличить не более чем на 4 pods в 60 секунд
- удвоить количество pods в 60 секунд Стабилизация не используется.
HPAScalingRules настраивает поведение масштабирования в одном направлении. Эти правила применяются после вычисления DesiredReplicas из метрик для HPA. Они могут ограничить скорость масштабирования, указав политики масштабирования. Они могут предотвратить колебания, указав период стабилизации, поэтому количество реплик не устанавливается мгновенно, вместо этого выбирается наиболее безопасное значение из периода стабилизации.
-
behavior.scaleUp.policies ([]HPAScalingPolicy)
Атомарно: будет заменено при слиянии
policies — список потенциальных политик масштабирования, которые могут быть использованы во время масштабирования. Должна быть указана хотя бы одна политика, в противном случае HPAScalingRules будут считаться недействительными.
HPAScalingPolicy — это отдельная политика, которая должна выполняться в течение указанного интервала.
-
behavior.scaleUp.policies.type (string), необходимо
Тип используется для указания политики масштабирования.
-
behavior.scaleUp.policies.value (int32), необходимо
Значение содержит величину изменения, разрешённую политикой. Она должна быть больше нуля.
-
behavior.scaleUp.policies.periodSeconds (int32), необходимо
PeriodSeconds — длительность интервала, в течение которого политика должна выполняться. PeriodSeconds должно быть больше нуля и меньше или равно 1800 (30 минут).
-
-
behavior.scaleUp.selectPolicy (string)
selectPolicy используется для указания, какая политика должна использоваться. Если не задано, используется значение по умолчанию Max.
-
behavior.scaleUp.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 для данной метрики. При установке он передается как дополнительный параметр серверу метрик для более точного определения области метрик. При отсутствии используется только имя метрики для сбора метрик.
-
-
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 (строка), обязательно
Вид референта; Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
metrics.object.describedObject.name (строка), обязательно
Имя референта; Дополнительная информация: http://kubernetes.io/docs/user-guide/identifiers#names
-
metrics.object.describedObject.apiVersion (строка)
Версия API референта
-
-
metrics.object.metric (MetricIdentifier), обязательно
metric идентифицирует целевую метрику по имени и селектору
MetricIdentifier определяет имя и необязательно селектор для метрики
-
metrics.object.metric.name (строка), обязательно
name — это имя данной метрики
-
metrics.object.metric.selector (LabelSelector)
selector — это строковое представление стандартного селектора меток Kubernetes для данной метрики. При установке он передается как дополнительный параметр серверу метрик для более точного определения области метрик. При отсутствии используется только имя метрики для сбора метрик.
-
-
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
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. Оболочки предоставляются для многих из фабричных методов, которые предлагает пакет времени.
-
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 — имя контейнера в pod целевого масштабирования
-
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 указывает описание объекта, такие как тип, имя, apiVersion
CrossVersionObjectReference содержит достаточную информацию, чтобы вы могли идентифицировать ссылаемый ресурс.
-
currentMetrics.object.describedObject.kind (string), требуется
Тип ссылки; Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
currentMetrics.object.describedObject.name (string), требуется
Имя ссылки; Дополнительная информация: http://kubernetes.io/docs/user-guide/identifiers#names
-
currentMetrics.object.describedObject.apiVersion (string)
Версия 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, описывающей каждый pod в текущей целевой шкале (например, CPU или память). Такие метрики встроенные в Kubernetes и имеют специальные параметры масштабирования помимо тех, которые доступны для обычных метрик на под, используя источник "pods".
ResourceMetricStatus указывает текущее значение метрики ресурса, известной Kubernetes, как указано в запросах и ограничениях, описывающих каждый pod в текущей целевой шкале (например, CPU или память). Такие метрики встроенные в 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, управляемых этим autoscaler, как в последний раз увиденное autoscaler.
-
lastScaleTime (Time)
lastScaleTime — последнее время, когда HorizontalPodAutoscaler изменил количество pods, используемое autoscaler для управления частотой изменения количества pods.
Time — оболочка вокруг time.Time, которая поддерживает правильную сериализацию в YAML и JSON. Оболочки предоставлены для многих из фабричных методов, которые предлагает пакет time.
-
observedGeneration (int64)
observedGeneration — самая последняя наблюдаемая генерация этим autoscaler.
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-26.docs.kubernetes.io/docs/reference/kubernetes-api/workload-resources/horizontal-pod-autoscaler-v2/