×
描述

HorizontalPodAutoscaler 是水平 Pod 自动缩放器的配置,它根据指定的指标自动管理任何实现基于缩放子资源的资源的副本数量。

类型

对象

规范

属性 类型 描述

apiVersion

字符串

APIVersion 定义了对象的此表示形式的版本化模式。服务器应将识别的模式转换为最新的内部值,并可能拒绝无法识别的值。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

Kind 是一个字符串值,表示此对象所代表的 REST 资源。服务器可以从客户端提交请求的端点推断出此值。不可更新。采用驼峰命名法。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

元数据 (metadata)

ObjectMeta

metadata 是标准的对象元数据。更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

规范 (spec)

对象

HorizontalPodAutoscalerSpec 描述了水平 Pod 自动伸缩器的期望功能。

状态 (status)

对象

HorizontalPodAutoscalerStatus 描述了水平 Pod 自动伸缩器的当前状态。

.spec

描述

HorizontalPodAutoscalerSpec 描述了水平 Pod 自动伸缩器的期望功能。

类型

对象

必需 (Required)
  • scaleTargetRef

  • maxReplicas

属性 类型 描述

行为 (behavior)

对象

HorizontalPodAutoscalerBehavior 配置了目标在向上和向下方向(分别为 scaleUp 和 scaleDown 字段)的伸缩行为。

maxReplicas

整数 (integer)

maxReplicas 是自动伸缩器可以向上伸缩到的副本数量的上限。它不能小于 minReplicas。

指标 (metrics)

数组 (array)

metrics 包含用于计算所需副本数量的规范(将使用所有指标中的最大副本数量)。所需副本数量是通过将目标值与当前值之间的比率乘以当前 Pod 数量来计算的。因此,使用的指标必须随着 Pod 数量的增加而减少,反之亦然。有关每种类型的指标必须如何响应的更多信息,请参阅各个指标源类型。如果未设置,则默认指标将设置为 80% 的平均 CPU 利用率。

metrics[]

对象

MetricSpec 指定了如何根据单个指标进行伸缩(一次只能设置type和另一个匹配的字段)。

minReplicas

整数 (integer)

minReplicas 是自动伸缩器可以向下伸缩到的副本数量的下限。默认为 1 个 Pod。如果启用了 alpha 功能网关 HPAScaleToZero 并且至少配置了一个对象或外部指标,则允许 minReplicas 为 0。只要至少有一个指标值可用,伸缩就会处于活动状态。

scaleTargetRef

对象

CrossVersionObjectReference 包含足够的信息,可以让您识别引用的资源。

.spec.behavior

描述

HorizontalPodAutoscalerBehavior 配置了目标在向上和向下方向(分别为 scaleUp 和 scaleDown 字段)的伸缩行为。

类型

对象

属性 类型 描述

scaleDown

对象

HPAScalingRules 配置了一个方向的伸缩行为。这些规则是在根据 HPA 的指标计算 DesiredReplicas 后应用的。它们可以通过指定伸缩策略来限制伸缩速度。它们可以通过指定稳定窗口来防止震荡,这样副本数量就不会立即设置,而是选择稳定窗口中最安全的值。

scaleUp

对象

HPAScalingRules 配置了一个方向的伸缩行为。这些规则是在根据 HPA 的指标计算 DesiredReplicas 后应用的。它们可以通过指定伸缩策略来限制伸缩速度。它们可以通过指定稳定窗口来防止震荡,这样副本数量就不会立即设置,而是选择稳定窗口中最安全的值。

.spec.behavior.scaleDown

描述

HPAScalingRules 配置了一个方向的伸缩行为。这些规则是在根据 HPA 的指标计算 DesiredReplicas 后应用的。它们可以通过指定伸缩策略来限制伸缩速度。它们可以通过指定稳定窗口来防止震荡,这样副本数量就不会立即设置,而是选择稳定窗口中最安全的值。

类型

对象

属性 类型 描述

策略 (policies)

数组 (array)

policies 是在伸缩期间可以使用的一系列潜在伸缩策略。必须至少指定一个策略,否则 HPAScalingRules 将被丢弃为无效。

policies[]

对象

HPAScalingPolicy 是一个必须在指定的过去时间间隔内成立的单个策略。

selectPolicy

字符串

selectPolicy 用于指定应使用哪个策略。如果未设置,则使用默认值 Max。

stabilizationWindowSeconds

整数 (integer)

stabilizationWindowSeconds 是在向上或向下伸缩时应考虑过去建议的秒数。StabilizationWindowSeconds 必须大于或等于零,小于或等于 3600(一小时)。如果未设置,则使用默认值:- 对于向上伸缩:0(即不进行稳定)。- 对于向下伸缩:300(即稳定窗口为 300 秒)。

.spec.behavior.scaleDown.policies

描述

policies 是在伸缩期间可以使用的一系列潜在伸缩策略。必须至少指定一个策略,否则 HPAScalingRules 将被丢弃为无效。

类型

数组 (array)

.spec.behavior.scaleDown.policies[]

描述

HPAScalingPolicy 是一个必须在指定的过去时间间隔内成立的单个策略。

类型

对象

必需 (Required)
  • 类型 (type)

  • 值 (value)

  • periodSeconds

属性 类型 描述

periodSeconds

整数 (integer)

periodSeconds 指定策略应成立的时间窗口。PeriodSeconds 必须大于零且小于或等于 1800(30 分钟)。

类型 (type)

字符串

type 用于指定伸缩策略。

值 (value)

整数 (integer)

value 包含策略允许的更改量。它必须大于零。

.spec.behavior.scaleUp

描述

HPAScalingRules 配置了一个方向的伸缩行为。这些规则是在根据 HPA 的指标计算 DesiredReplicas 后应用的。它们可以通过指定伸缩策略来限制伸缩速度。它们可以通过指定稳定窗口来防止震荡,这样副本数量就不会立即设置,而是选择稳定窗口中最安全的值。

类型

对象

属性 类型 描述

策略 (policies)

数组 (array)

policies 是在伸缩期间可以使用的一系列潜在伸缩策略。必须至少指定一个策略,否则 HPAScalingRules 将被丢弃为无效。

policies[]

对象

HPAScalingPolicy 是一个必须在指定的过去时间间隔内成立的单个策略。

selectPolicy

字符串

selectPolicy 用于指定应使用哪个策略。如果未设置,则使用默认值 Max。

stabilizationWindowSeconds

整数 (integer)

stabilizationWindowSeconds 是在向上或向下伸缩时应考虑过去建议的秒数。StabilizationWindowSeconds 必须大于或等于零,小于或等于 3600(一小时)。如果未设置,则使用默认值:- 对于向上伸缩:0(即不进行稳定)。- 对于向下伸缩:300(即稳定窗口为 300 秒)。

.spec.behavior.scaleUp.policies

描述

policies 是在伸缩期间可以使用的一系列潜在伸缩策略。必须至少指定一个策略,否则 HPAScalingRules 将被丢弃为无效。

类型

数组 (array)

.spec.behavior.scaleUp.policies[]

描述

HPAScalingPolicy 是一个必须在指定的过去时间间隔内成立的单个策略。

类型

对象

必需 (Required)
  • 类型 (type)

  • 值 (value)

  • periodSeconds

属性 类型 描述

periodSeconds

整数 (integer)

periodSeconds 指定策略应成立的时间窗口。PeriodSeconds 必须大于零且小于或等于 1800(30 分钟)。

类型 (type)

字符串

type 用于指定伸缩策略。

值 (value)

整数 (integer)

value 包含策略允许的更改量。它必须大于零。

.spec.metrics

描述

metrics 包含用于计算所需副本数量的规范(将使用所有指标中的最大副本数量)。所需副本数量是通过将目标值与当前值之间的比率乘以当前 Pod 数量来计算的。因此,使用的指标必须随着 Pod 数量的增加而减少,反之亦然。有关每种类型的指标必须如何响应的更多信息,请参阅各个指标源类型。如果未设置,则默认指标将设置为 80% 的平均 CPU 利用率。

类型

数组 (array)

.spec.metrics[]

描述

MetricSpec 指定了如何根据单个指标进行伸缩(一次只能设置type和另一个匹配的字段)。

类型

对象

必需 (Required)
  • 类型 (type)

属性 类型 描述

容器资源 (containerResource)

对象

ContainerResourceMetricSource 指示如何根据 Kubernetes 已知的资源指标进行伸缩,如请求和限制中指定的那样,描述当前伸缩目标中的每个 Pod(例如 CPU 或内存)。在与目标进行比较之前,这些值将被平均。此类指标内置于 Kubernetes 中,并且除了使用“pods”源的普通每个 Pod 指标可用的那些伸缩选项之外,还具有特殊的伸缩选项。只应设置一个“target”类型。

外部指标 (external)

对象

ExternalMetricSource 指示如何根据与任何 Kubernetes 对象无关的指标进行伸缩(例如,云消息服务中的队列长度或集群外部运行的负载均衡器的 QPS)。

对象

对象

ObjectMetricSource 指示如何根据描述 Kubernetes 对象的指标进行伸缩(例如,Ingress 对象上的每秒命中次数)。

Pod 指标 (pods)

对象

PodsMetricSource 指示如何根据描述当前伸缩目标中每个 Pod 的指标进行伸缩(例如,每秒处理的事务)。在与目标值进行比较之前,这些值将被平均。

资源 (resource)

对象

ResourceMetricSource 指示如何根据 Kubernetes 已知的资源指标进行伸缩,如请求和限制中指定的那样,描述当前伸缩目标中的每个 Pod(例如 CPU 或内存)。在与目标进行比较之前,这些值将被平均。此类指标内置于 Kubernetes 中,并且除了使用“pods”源的普通每个 Pod 指标可用的那些伸缩选项之外,还具有特殊的伸缩选项。只应设置一个“target”类型。

类型 (type)

字符串

type 是指标源的类型。它应该是“ContainerResource”、“External”、“Object”、“Pods”或“Resource”之一,每个都映射到对象中的匹配字段。注意:“ContainerResource”类型在启用功能网关 HPAContainerMetrics 时可用。

.spec.metrics[].containerResource

描述

ContainerResourceMetricSource 指示如何根据 Kubernetes 已知的资源指标进行伸缩,如请求和限制中指定的那样,描述当前伸缩目标中的每个 Pod(例如 CPU 或内存)。在与目标进行比较之前,这些值将被平均。此类指标内置于 Kubernetes 中,并且除了使用“pods”源的普通每个 Pod 指标可用的那些伸缩选项之外,还具有特殊的伸缩选项。只应设置一个“target”类型。

类型

对象

必需 (Required)
  • 名称 (name)

  • 目标 (target)

  • 容器 (container)

属性 类型 描述

容器 (container)

字符串

container 是伸缩目标 Pod 中容器的名称。

名称 (name)

字符串

name 是所讨论资源的名称。

目标 (target)

对象

MetricTarget 定义了特定指标的目标值、平均值或平均利用率。

.spec.metrics[].containerResource.target

描述

MetricTarget 定义了特定指标的目标值、平均值或平均利用率。

类型

对象

必需 (Required)
  • 类型 (type)

属性 类型 描述

averageUtilization

整数 (integer)

averageUtilization 是所有相关 Pod 上资源指标平均值的 target 值,表示为 Pod 资源请求值的百分比。目前仅对资源指标源类型有效。

averageValue

数量 (Quantity)

averageValue 是所有相关 Pod 上指标平均值的 target 值(作为数量)。

类型 (type)

字符串

type 表示指标类型是 Utilization、Value 还是 AverageValue。

值 (value)

数量 (Quantity)

value 是指标的目标值(作为数量)。

.spec.metrics[].external

描述

ExternalMetricSource 指示如何根据与任何 Kubernetes 对象无关的指标进行伸缩(例如,云消息服务中的队列长度或集群外部运行的负载均衡器的 QPS)。

类型

对象

必需 (Required)
  • 指标

  • 目标 (target)

属性 类型 描述

指标

对象

MetricIdentifier 定义指标的名称和可选选择器。

目标 (target)

对象

MetricTarget 定义了特定指标的目标值、平均值或平均利用率。

.spec.metrics[].external.metric

描述

MetricIdentifier 定义指标的名称和可选选择器。

类型

对象

必需 (Required)
  • 名称 (name)

属性 类型 描述

名称 (name)

字符串

name 是给定指标的名称。

选择器

LabelSelector

selector 是给定指标的标准 Kubernetes 标签选择器的字符串编码形式。设置后,它将作为附加参数传递给指标服务器,以实现更具体的指标范围。未设置时,仅使用 metricName 收集指标。

.spec.metrics[].external.target

描述

MetricTarget 定义了特定指标的目标值、平均值或平均利用率。

类型

对象

必需 (Required)
  • 类型 (type)

属性 类型 描述

averageUtilization

整数 (integer)

averageUtilization 是所有相关 Pod 上资源指标平均值的 target 值,表示为 Pod 资源请求值的百分比。目前仅对资源指标源类型有效。

averageValue

数量 (Quantity)

averageValue 是所有相关 Pod 上指标平均值的 target 值(作为数量)。

类型 (type)

字符串

type 表示指标类型是 Utilization、Value 还是 AverageValue。

值 (value)

数量 (Quantity)

value 是指标的目标值(作为数量)。

.spec.metrics[].object

描述

ObjectMetricSource 指示如何根据描述 Kubernetes 对象的指标进行伸缩(例如,Ingress 对象上的每秒命中次数)。

类型

对象

必需 (Required)
  • 描述的对象

  • 目标 (target)

  • 指标

属性 类型 描述

描述的对象

对象

CrossVersionObjectReference 包含足够的信息,可以让您识别引用的资源。

指标

对象

MetricIdentifier 定义指标的名称和可选选择器。

目标 (target)

对象

MetricTarget 定义了特定指标的目标值、平均值或平均利用率。

.spec.metrics[].object.describedObject

描述

CrossVersionObjectReference 包含足够的信息,可以让您识别引用的资源。

类型

对象

必需 (Required)
  • kind

  • 名称 (name)

属性 类型 描述

apiVersion

字符串

apiVersion 是引用的 API 版本。

kind

字符串

kind 是引用的类型;更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

名称 (name)

字符串

name 是引用的名称;更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names

.spec.metrics[].object.metric

描述

MetricIdentifier 定义指标的名称和可选选择器。

类型

对象

必需 (Required)
  • 名称 (name)

属性 类型 描述

名称 (name)

字符串

name 是给定指标的名称。

选择器

LabelSelector

selector 是给定指标的标准 Kubernetes 标签选择器的字符串编码形式。设置后,它将作为附加参数传递给指标服务器,以实现更具体的指标范围。未设置时,仅使用 metricName 收集指标。

.spec.metrics[].object.target

描述

MetricTarget 定义了特定指标的目标值、平均值或平均利用率。

类型

对象

必需 (Required)
  • 类型 (type)

属性 类型 描述

averageUtilization

整数 (integer)

averageUtilization 是所有相关 Pod 上资源指标平均值的 target 值,表示为 Pod 资源请求值的百分比。目前仅对资源指标源类型有效。

averageValue

数量 (Quantity)

averageValue 是所有相关 Pod 上指标平均值的 target 值(作为数量)。

类型 (type)

字符串

type 表示指标类型是 Utilization、Value 还是 AverageValue。

值 (value)

数量 (Quantity)

value 是指标的目标值(作为数量)。

.spec.metrics[].pods

描述

PodsMetricSource 指示如何根据描述当前伸缩目标中每个 Pod 的指标进行伸缩(例如,每秒处理的事务)。在与目标值进行比较之前,这些值将被平均。

类型

对象

必需 (Required)
  • 指标

  • 目标 (target)

属性 类型 描述

指标

对象

MetricIdentifier 定义指标的名称和可选选择器。

目标 (target)

对象

MetricTarget 定义了特定指标的目标值、平均值或平均利用率。

.spec.metrics[].pods.metric

描述

MetricIdentifier 定义指标的名称和可选选择器。

类型

对象

必需 (Required)
  • 名称 (name)

属性 类型 描述

名称 (name)

字符串

name 是给定指标的名称。

选择器

LabelSelector

selector 是给定指标的标准 Kubernetes 标签选择器的字符串编码形式。设置后,它将作为附加参数传递给指标服务器,以实现更具体的指标范围。未设置时,仅使用 metricName 收集指标。

.spec.metrics[].pods.target

描述

MetricTarget 定义了特定指标的目标值、平均值或平均利用率。

类型

对象

必需 (Required)
  • 类型 (type)

属性 类型 描述

averageUtilization

整数 (integer)

averageUtilization 是所有相关 Pod 上资源指标平均值的 target 值,表示为 Pod 资源请求值的百分比。目前仅对资源指标源类型有效。

averageValue

数量 (Quantity)

averageValue 是所有相关 Pod 上指标平均值的 target 值(作为数量)。

类型 (type)

字符串

type 表示指标类型是 Utilization、Value 还是 AverageValue。

值 (value)

数量 (Quantity)

value 是指标的目标值(作为数量)。

.spec.metrics[].resource

描述

ResourceMetricSource 指示如何根据 Kubernetes 已知的资源指标进行伸缩,如请求和限制中指定的那样,描述当前伸缩目标中的每个 Pod(例如 CPU 或内存)。在与目标进行比较之前,这些值将被平均。此类指标内置于 Kubernetes 中,并且除了使用“pods”源的普通每个 Pod 指标可用的那些伸缩选项之外,还具有特殊的伸缩选项。只应设置一个“target”类型。

类型

对象

必需 (Required)
  • 名称 (name)

  • 目标 (target)

属性 类型 描述

名称 (name)

字符串

name 是所讨论资源的名称。

目标 (target)

对象

MetricTarget 定义了特定指标的目标值、平均值或平均利用率。

.spec.metrics[].resource.target

描述

MetricTarget 定义了特定指标的目标值、平均值或平均利用率。

类型

对象

必需 (Required)
  • 类型 (type)

属性 类型 描述

averageUtilization

整数 (integer)

averageUtilization 是所有相关 Pod 上资源指标平均值的 target 值,表示为 Pod 资源请求值的百分比。目前仅对资源指标源类型有效。

averageValue

数量 (Quantity)

averageValue 是所有相关 Pod 上指标平均值的 target 值(作为数量)。

类型 (type)

字符串

type 表示指标类型是 Utilization、Value 还是 AverageValue。

值 (value)

数量 (Quantity)

value 是指标的目标值(作为数量)。

.spec.scaleTargetRef

描述

CrossVersionObjectReference 包含足够的信息,可以让您识别引用的资源。

类型

对象

必需 (Required)
  • kind

  • 名称 (name)

属性 类型 描述

apiVersion

字符串

apiVersion 是引用的 API 版本。

kind

字符串

kind 是引用的类型;更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

名称 (name)

字符串

name 是引用的名称;更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names

.status

描述

HorizontalPodAutoscalerStatus 描述了水平 Pod 自动伸缩器的当前状态。

类型

对象

必需 (Required)
  • 期望副本数

属性 类型 描述

状态

数组 (array)

conditions 是此自动缩放器对其目标进行缩放所需的条件集,并指示是否满足这些条件。

conditions[]

对象

HorizontalPodAutoscalerCondition 描述了水平 Pod 自动缩放器在某一点的状态。

当前指标

数组 (array)

currentMetrics 是此自动缩放器使用的指标的最后读取状态。

currentMetrics[]

对象

MetricStatus 描述单个指标的最后读取状态。

当前副本数

整数 (integer)

currentReplicas 是此自动缩放器管理的 Pod 的当前副本数,为自动缩放器最后看到的数量。

期望副本数

整数 (integer)

desiredReplicas 是此自动缩放器管理的 Pod 的期望副本数,为自动缩放器最后计算的数量。

上次缩放时间

时间

lastScaleTime 是水平 Pod 自动缩放器上次缩放 Pod 数量的时间,自动缩放器用它来控制更改 Pod 数量的频率。

观察到的世代

整数 (integer)

observedGeneration 是此自动缩放器观察到的最新世代。

.status.conditions

描述

conditions 是此自动缩放器对其目标进行缩放所需的条件集,并指示是否满足这些条件。

类型

数组 (array)

.status.conditions[]

描述

HorizontalPodAutoscalerCondition 描述了水平 Pod 自动缩放器在某一点的状态。

类型

对象

必需 (Required)
  • 类型 (type)

  • 状态 (status)

属性 类型 描述

上次转换时间

时间

lastTransitionTime 是条件从一种状态转换到另一种状态的最后时间。

消息

字符串

message 是包含有关转换详细信息的可读解释。

原因

字符串

reason 是条件最后一次转换的原因。

状态 (status)

字符串

status 是条件的状态 (True, False, Unknown)。

类型 (type)

字符串

type 描述当前条件。

.status.currentMetrics

描述

currentMetrics 是此自动缩放器使用的指标的最后读取状态。

类型

数组 (array)

.status.currentMetrics[]

描述

MetricStatus 描述单个指标的最后读取状态。

类型

对象

必需 (Required)
  • 类型 (type)

属性 类型 描述

容器资源 (containerResource)

对象

ContainerResourceMetricStatus 指示 Kubernetes 已知的资源指标的当前值,如请求和限制中指定的那样,描述当前规模目标中每个 Pod 中的单个容器(例如 CPU 或内存)。此类指标内置于 Kubernetes 中,并且除了使用“pods”源的普通每个 Pod 指标可用的那些之外,还具有特殊的缩放选项。

外部指标 (external)

对象

ExternalMetricStatus 指示与任何 Kubernetes 对象无关的全局指标的当前值。

对象

对象

ObjectMetricStatus 指示描述 Kubernetes 对象的指标的当前值(例如,Ingress 对象上的每秒命中次数)。

Pod 指标 (pods)

对象

PodsMetricStatus 指示描述当前规模目标中每个 Pod 的指标的当前值(例如,每秒处理的事务数)。

资源 (resource)

对象

ResourceMetricStatus 指示 Kubernetes 已知的资源指标的当前值,如请求和限制中指定的那样,描述当前规模目标中每个 Pod(例如 CPU 或内存)。此类指标内置于 Kubernetes 中,并且除了使用“pods”源的普通每个 Pod 指标可用的那些之外,还具有特殊的缩放选项。

类型 (type)

字符串

type 是指标源的类型。它将是“ContainerResource”、“External”、“Object”、“Pods”或“Resource”之一,每个都对应于对象中的匹配字段。注意:“ContainerResource”类型在启用功能网关 HPAContainerMetrics 时可用。

.status.currentMetrics[].containerResource

描述

ContainerResourceMetricStatus 指示 Kubernetes 已知的资源指标的当前值,如请求和限制中指定的那样,描述当前规模目标中每个 Pod 中的单个容器(例如 CPU 或内存)。此类指标内置于 Kubernetes 中,并且除了使用“pods”源的普通每个 Pod 指标可用的那些之外,还具有特殊的缩放选项。

类型

对象

必需 (Required)
  • 名称 (name)

  • 当前

  • 容器 (container)

属性 类型 描述

容器 (container)

字符串

container 是伸缩目标 Pod 中容器的名称。

当前

对象

MetricValueStatus 包含指标的当前值。

名称 (name)

字符串

name 是所讨论资源的名称。

.status.currentMetrics[].containerResource.current

描述

MetricValueStatus 包含指标的当前值。

类型

对象

属性 类型 描述

averageUtilization

整数 (integer)

currentAverageUtilization 是所有相关 Pod 的资源指标平均值的当前值,表示为 Pod 资源请求值的百分比。

averageValue

数量 (Quantity)

averageValue 是所有相关 Pod 的指标平均值的当前值(作为数量)。

值 (value)

数量 (Quantity)

value 是指标的当前值(作为数量)。

.status.currentMetrics[].external

描述

ExternalMetricStatus 指示与任何 Kubernetes 对象无关的全局指标的当前值。

类型

对象

必需 (Required)
  • 指标

  • 当前

属性 类型 描述

当前

对象

MetricValueStatus 包含指标的当前值。

指标

对象

MetricIdentifier 定义指标的名称和可选选择器。

.status.currentMetrics[].external.current

描述

MetricValueStatus 包含指标的当前值。

类型

对象

属性 类型 描述

averageUtilization

整数 (integer)

currentAverageUtilization 是所有相关 Pod 的资源指标平均值的当前值,表示为 Pod 资源请求值的百分比。

averageValue

数量 (Quantity)

averageValue 是所有相关 Pod 的指标平均值的当前值(作为数量)。

值 (value)

数量 (Quantity)

value 是指标的当前值(作为数量)。

.status.currentMetrics[].external.metric

描述

MetricIdentifier 定义指标的名称和可选选择器。

类型

对象

必需 (Required)
  • 名称 (name)

属性 类型 描述

名称 (name)

字符串

name 是给定指标的名称。

选择器

LabelSelector

selector 是给定指标的标准 Kubernetes 标签选择器的字符串编码形式。设置后,它将作为附加参数传递给指标服务器,以实现更具体的指标范围。未设置时,仅使用 metricName 收集指标。

.status.currentMetrics[].object

描述

ObjectMetricStatus 指示描述 Kubernetes 对象的指标的当前值(例如,Ingress 对象上的每秒命中次数)。

类型

对象

必需 (Required)
  • 指标

  • 当前

  • 描述的对象

属性 类型 描述

当前

对象

MetricValueStatus 包含指标的当前值。

描述的对象

对象

CrossVersionObjectReference 包含足够的信息,可以让您识别引用的资源。

指标

对象

MetricIdentifier 定义指标的名称和可选选择器。

.status.currentMetrics[].object.current

描述

MetricValueStatus 包含指标的当前值。

类型

对象

属性 类型 描述

averageUtilization

整数 (integer)

currentAverageUtilization 是所有相关 Pod 的资源指标平均值的当前值,表示为 Pod 资源请求值的百分比。

averageValue

数量 (Quantity)

averageValue 是所有相关 Pod 的指标平均值的当前值(作为数量)。

值 (value)

数量 (Quantity)

value 是指标的当前值(作为数量)。

.status.currentMetrics[].object.describedObject

描述

CrossVersionObjectReference 包含足够的信息,可以让您识别引用的资源。

类型

对象

必需 (Required)
  • kind

  • 名称 (name)

属性 类型 描述

apiVersion

字符串

apiVersion 是引用的 API 版本。

kind

字符串

kind 是引用的类型;更多信息:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

名称 (name)

字符串

name 是引用的名称;更多信息:https://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/names/#names

.status.currentMetrics[].object.metric

描述

MetricIdentifier 定义指标的名称和可选选择器。

类型

对象

必需 (Required)
  • 名称 (name)

属性 类型 描述

名称 (name)

字符串

name 是给定指标的名称。

选择器

LabelSelector

selector 是给定指标的标准 Kubernetes 标签选择器的字符串编码形式。设置后,它将作为附加参数传递给指标服务器,以实现更具体的指标范围。未设置时,仅使用 metricName 收集指标。

.status.currentMetrics[].pods

描述

PodsMetricStatus 指示描述当前规模目标中每个 Pod 的指标的当前值(例如,每秒处理的事务数)。

类型

对象

必需 (Required)
  • 指标

  • 当前

属性 类型 描述

当前

对象

MetricValueStatus 包含指标的当前值。

指标

对象

MetricIdentifier 定义指标的名称和可选选择器。

.status.currentMetrics[].pods.current

描述

MetricValueStatus 包含指标的当前值。

类型

对象

属性 类型 描述

averageUtilization

整数 (integer)

currentAverageUtilization 是所有相关 Pod 的资源指标平均值的当前值,表示为 Pod 资源请求值的百分比。

averageValue

数量 (Quantity)

averageValue 是所有相关 Pod 的指标平均值的当前值(作为数量)。

值 (value)

数量 (Quantity)

value 是指标的当前值(作为数量)。

.status.currentMetrics[].pods.metric

描述

MetricIdentifier 定义指标的名称和可选选择器。

类型

对象

必需 (Required)
  • 名称 (name)

属性 类型 描述

名称 (name)

字符串

name 是给定指标的名称。

选择器

LabelSelector

selector 是给定指标的标准 Kubernetes 标签选择器的字符串编码形式。设置后,它将作为附加参数传递给指标服务器,以实现更具体的指标范围。未设置时,仅使用 metricName 收集指标。

.status.currentMetrics[].resource

描述

ResourceMetricStatus 指示 Kubernetes 已知的资源指标的当前值,如请求和限制中指定的那样,描述当前规模目标中每个 Pod(例如 CPU 或内存)。此类指标内置于 Kubernetes 中,并且除了使用“pods”源的普通每个 Pod 指标可用的那些之外,还具有特殊的缩放选项。

类型

对象

必需 (Required)
  • 名称 (name)

  • 当前

属性 类型 描述

当前

对象

MetricValueStatus 包含指标的当前值。

名称 (name)

字符串

name 是所讨论资源的名称。

.status.currentMetrics[].resource.current

描述

MetricValueStatus 包含指标的当前值。

类型

对象

属性 类型 描述

averageUtilization

整数 (integer)

currentAverageUtilization 是所有相关 Pod 的资源指标平均值的当前值,表示为 Pod 资源请求值的百分比。

averageValue

数量 (Quantity)

averageValue 是所有相关 Pod 的指标平均值的当前值(作为数量)。

值 (value)

数量 (Quantity)

value 是指标的当前值(作为数量)。

API 端点

提供以下 API 端点

  • /apis/autoscaling/v2/horizontalpodautoscalers

    • GET:列出或监视 HorizontalPodAutoscaler 类型的对象。

  • /apis/autoscaling/v2/watch/horizontalpodautoscalers

    • GET:监视 HorizontalPodAutoscaler 列表的单个更改。已弃用:改为使用列表操作的“watch”参数。

  • /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers

    • DELETE:删除 HorizontalPodAutoscaler 集合。

    • GET:列出或监视 HorizontalPodAutoscaler 类型的对象。

    • POST:创建 HorizontalPodAutoscaler。

  • /apis/autoscaling/v2/watch/namespaces/{namespace}/horizontalpodautoscalers

    • GET:监视 HorizontalPodAutoscaler 列表的单个更改。已弃用:改为使用列表操作的“watch”参数。

  • /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}

    • DELETE:删除 HorizontalPodAutoscaler。

    • GET:读取指定的 HorizontalPodAutoscaler。

    • PATCH:部分更新指定的 HorizontalPodAutoscaler。

    • PUT:替换指定的 HorizontalPodAutoscaler。

  • /apis/autoscaling/v2/watch/namespaces/{namespace}/horizontalpodautoscalers/{name}

    • GET:监视 HorizontalPodAutoscaler 类型的对象的更改。已弃用:改为使用列表操作的“watch”参数,并使用“fieldSelector”参数过滤为单个项目。

  • /apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status

    • GET:读取指定的 HorizontalPodAutoscaler 的状态。

    • PATCH:部分更新指定的 HorizontalPodAutoscaler 的状态。

    • PUT:替换指定的 HorizontalPodAutoscaler 的状态。

/apis/autoscaling/v2/horizontalpodautoscalers

HTTP 方法

GET

描述

列出或监视 HorizontalPodAutoscaler 类型的对象。

表 1. HTTP 响应
HTTP 代码 响应体

200 - OK

HorizontalPodAutoscalerList 模式

401 - 未授权

/apis/autoscaling/v2/watch/horizontalpodautoscalers

HTTP 方法

GET

描述

监视 HorizontalPodAutoscaler 列表的单个更改。已弃用:改为使用列表操作的“watch”参数。

表 2. HTTP 响应
HTTP 代码 响应体

200 - OK

WatchEvent 模式

401 - 未授权

/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers

HTTP 方法

删除

描述

删除 HorizontalPodAutoscaler 集合

表 3. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

表 4. HTTP 响应
HTTP 代码 响应体

200 - OK

Status 模式

401 - 未授权

HTTP 方法

GET

描述

列出或监视 HorizontalPodAutoscaler 类型的对象。

表 5. HTTP 响应
HTTP 代码 响应体

200 - OK

HorizontalPodAutoscalerList 模式

401 - 未授权

HTTP 方法

POST

描述

创建 HorizontalPodAutoscaler

表 6. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的所有重复字段中的最后一个字段。这是 v1.23 之前的默认行为。- Warn:对于从对象中删除的每个未知字段以及遇到的每个重复字段,这将通过标准警告响应标头发送警告。如果没有任何其他错误,请求仍将成功,并且只会持久化任何重复字段中的最后一个字段。这是 v1.23 及更高版本的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将导致请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 7. 请求体参数
参数 类型 描述

body

HorizontalPodAutoscaler 模式

表 8. HTTP 响应
HTTP 代码 响应体

200 - OK

HorizontalPodAutoscaler 模式

201 - 已创建

HorizontalPodAutoscaler 模式

202 - 已接受

HorizontalPodAutoscaler 模式

401 - 未授权

/apis/autoscaling/v2/watch/namespaces/{namespace}/horizontalpodautoscalers

HTTP 方法

GET

描述

监视 HorizontalPodAutoscaler 列表的单个更改。已弃用:改为使用列表操作的“watch”参数。

表 9. HTTP 响应
HTTP 代码 响应体

200 - OK

WatchEvent 模式

401 - 未授权

/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}

表 10. 全局路径参数
参数 类型 描述

名称 (name)

字符串

HorizontalPodAutoscaler 的名称

HTTP 方法

删除

描述

删除 HorizontalPodAutoscaler

表 11. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

表 12. HTTP 响应
HTTP 代码 响应体

200 - OK

Status 模式

202 - 已接受

Status 模式

401 - 未授权

HTTP 方法

GET

描述

读取指定的 HorizontalPodAutoscaler

表 13. HTTP 响应
HTTP 代码 响应体

200 - OK

HorizontalPodAutoscaler 模式

401 - 未授权

HTTP 方法

PATCH

描述

部分更新指定的 HorizontalPodAutoscaler

表 14. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的所有重复字段中的最后一个字段。这是 v1.23 之前的默认行为。- Warn:对于从对象中删除的每个未知字段以及遇到的每个重复字段,这将通过标准警告响应标头发送警告。如果没有任何其他错误,请求仍将成功,并且只会持久化任何重复字段中的最后一个字段。这是 v1.23 及更高版本的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将导致请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 15. HTTP 响应
HTTP 代码 响应体

200 - OK

HorizontalPodAutoscaler 模式

201 - 已创建

HorizontalPodAutoscaler 模式

401 - 未授权

HTTP 方法

PUT

描述

替换指定的 HorizontalPodAutoscaler

表 16. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的所有重复字段中的最后一个字段。这是 v1.23 之前的默认行为。- Warn:对于从对象中删除的每个未知字段以及遇到的每个重复字段,这将通过标准警告响应标头发送警告。如果没有任何其他错误,请求仍将成功,并且只会持久化任何重复字段中的最后一个字段。这是 v1.23 及更高版本的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将导致请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 17. 请求体参数
参数 类型 描述

body

HorizontalPodAutoscaler 模式

表 18. HTTP 响应
HTTP 代码 响应体

200 - OK

HorizontalPodAutoscaler 模式

201 - 已创建

HorizontalPodAutoscaler 模式

401 - 未授权

/apis/autoscaling/v2/watch/namespaces/{namespace}/horizontalpodautoscalers/{name}

表 19. 全局路径参数
参数 类型 描述

名称 (name)

字符串

HorizontalPodAutoscaler 的名称

HTTP 方法

GET

描述

监视 HorizontalPodAutoscaler 对象类型的更改。已弃用:请改用列表操作的“watch”参数,并使用“fieldSelector”参数将其过滤为单个项目。

表 20. HTTP 响应
HTTP 代码 响应体

200 - OK

WatchEvent 模式

401 - 未授权

/apis/autoscaling/v2/namespaces/{namespace}/horizontalpodautoscalers/{name}/status

表 21. 全局路径参数
参数 类型 描述

名称 (name)

字符串

HorizontalPodAutoscaler 的名称

HTTP 方法

GET

描述

读取指定的 HorizontalPodAutoscaler 的状态

表 22. HTTP 响应
HTTP 代码 响应体

200 - OK

HorizontalPodAutoscaler 模式

401 - 未授权

HTTP 方法

PATCH

描述

部分更新指定的 HorizontalPodAutoscaler 的状态

表 23. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的所有重复字段中的最后一个字段。这是 v1.23 之前的默认行为。- Warn:对于从对象中删除的每个未知字段以及遇到的每个重复字段,这将通过标准警告响应标头发送警告。如果没有任何其他错误,请求仍将成功,并且只会持久化任何重复字段中的最后一个字段。这是 v1.23 及更高版本的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将导致请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 24. HTTP 响应
HTTP 代码 响应体

200 - OK

HorizontalPodAutoscaler 模式

201 - 已创建

HorizontalPodAutoscaler 模式

401 - 未授权

HTTP 方法

PUT

描述

替换指定的 HorizontalPodAutoscaler 的状态

表 25. 查询参数
参数 类型 描述

dryRun

字符串

如果存在,则表示不应持久化修改。无效或无法识别的 dryRun 指令将导致错误响应,并且不会进一步处理请求。有效值为:- All:将处理所有 dry run 阶段

fieldValidation

字符串

fieldValidation 指示服务器如何处理请求 (POST/PUT/PATCH) 中包含未知或重复字段的对象。有效值为:- Ignore:这将忽略从对象中静默删除的任何未知字段,并将忽略解码器遇到的所有重复字段中的最后一个字段。这是 v1.23 之前的默认行为。- Warn:对于从对象中删除的每个未知字段以及遇到的每个重复字段,这将通过标准警告响应标头发送警告。如果没有任何其他错误,请求仍将成功,并且只会持久化任何重复字段中的最后一个字段。这是 v1.23 及更高版本的默认值 - Strict:如果从对象中删除任何未知字段,或者存在任何重复字段,这将导致请求失败并返回 BadRequest 错误。服务器返回的错误将包含遇到的所有未知和重复字段。

表 26. 请求体参数
参数 类型 描述

body

HorizontalPodAutoscaler 模式

表 27. HTTP 响应
HTTP 代码 响应体

200 - OK

HorizontalPodAutoscaler 模式

201 - 已创建

HorizontalPodAutoscaler 模式

401 - 未授权