v1

package
v1.2.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 25, 2022 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_k8s_io_api_autoscaling_v1_generated_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type ContainerResourceMetricSource added in v1.2.4

type ContainerResourceMetricSource struct {

	// name is the name of the resource in question.
	Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	// targetAverageUtilization is the target value of the average of the
	// resource metric across all relevant pods, represented as a percentage of
	// the requested value of the resource for the pods.
	// +optional
	TargetAverageUtilization *int32 `protobuf:"varint,2,opt,name=targetAverageUtilization" json:"targetAverageUtilization,omitempty"`
	// targetAverageValue is the target value of the average of the
	// resource metric across all relevant pods, as a raw value (instead of as
	// a percentage of the request), similar to the "pods" metric source type.
	// +optional
	TargetAverageValue *resource.Quantity `protobuf:"bytes,3,opt,name=targetAverageValue" json:"targetAverageValue,omitempty"`
	// container is the name of the container in the pods of the scaling target.
	Container *string `protobuf:"bytes,5,opt,name=container" json:"container,omitempty"`
	// contains filtered or unexported fields
}

ContainerResourceMetricSource indicates how to scale on a resource metric known to Kubernetes, as specified in the requests and limits, describing a single container in each of the pods of the current scale target(e.g. CPU or memory). The values will be averaged together before being compared to the target. Such metrics are built into Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the "pods" source. Only one "target" type should be set.

func (*ContainerResourceMetricSource) Descriptor deprecated added in v1.2.4

func (*ContainerResourceMetricSource) Descriptor() ([]byte, []int)

Deprecated: Use ContainerResourceMetricSource.ProtoReflect.Descriptor instead.

func (*ContainerResourceMetricSource) GetContainer added in v1.2.4

func (x *ContainerResourceMetricSource) GetContainer() string

func (*ContainerResourceMetricSource) GetName added in v1.2.4

func (*ContainerResourceMetricSource) GetTargetAverageUtilization added in v1.2.4

func (x *ContainerResourceMetricSource) GetTargetAverageUtilization() int32

func (*ContainerResourceMetricSource) GetTargetAverageValue added in v1.2.4

func (x *ContainerResourceMetricSource) GetTargetAverageValue() *resource.Quantity

func (*ContainerResourceMetricSource) ProtoMessage added in v1.2.4

func (*ContainerResourceMetricSource) ProtoMessage()

func (*ContainerResourceMetricSource) ProtoReflect added in v1.2.4

func (*ContainerResourceMetricSource) Reset added in v1.2.4

func (x *ContainerResourceMetricSource) Reset()

func (*ContainerResourceMetricSource) String added in v1.2.4

type ContainerResourceMetricStatus added in v1.2.4

type ContainerResourceMetricStatus struct {

	// name is the name of the resource in question.
	Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	// currentAverageUtilization is the current value of the average of the
	// resource metric across all relevant pods, represented as a percentage of
	// the requested value of the resource for the pods.  It will only be
	// present if `targetAverageValue` was set in the corresponding metric
	// specification.
	// +optional
	CurrentAverageUtilization *int32 `protobuf:"varint,2,opt,name=currentAverageUtilization" json:"currentAverageUtilization,omitempty"`
	// currentAverageValue is the current value of the average of the
	// resource metric across all relevant pods, as a raw value (instead of as
	// a percentage of the request), similar to the "pods" metric source type.
	// It will always be set, regardless of the corresponding metric specification.
	CurrentAverageValue *resource.Quantity `protobuf:"bytes,3,opt,name=currentAverageValue" json:"currentAverageValue,omitempty"`
	// container is the name of the container in the pods of the scaling taget
	Container *string `protobuf:"bytes,4,opt,name=container" json:"container,omitempty"`
	// contains filtered or unexported fields
}

ContainerResourceMetricStatus indicates the current value of a resource metric known to Kubernetes, as specified in requests and limits, describing a single container in each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the "pods" source.

func (*ContainerResourceMetricStatus) Descriptor deprecated added in v1.2.4

func (*ContainerResourceMetricStatus) Descriptor() ([]byte, []int)

Deprecated: Use ContainerResourceMetricStatus.ProtoReflect.Descriptor instead.

func (*ContainerResourceMetricStatus) GetContainer added in v1.2.4

func (x *ContainerResourceMetricStatus) GetContainer() string

func (*ContainerResourceMetricStatus) GetCurrentAverageUtilization added in v1.2.4

func (x *ContainerResourceMetricStatus) GetCurrentAverageUtilization() int32

func (*ContainerResourceMetricStatus) GetCurrentAverageValue added in v1.2.4

func (x *ContainerResourceMetricStatus) GetCurrentAverageValue() *resource.Quantity

func (*ContainerResourceMetricStatus) GetName added in v1.2.4

func (*ContainerResourceMetricStatus) ProtoMessage added in v1.2.4

func (*ContainerResourceMetricStatus) ProtoMessage()

func (*ContainerResourceMetricStatus) ProtoReflect added in v1.2.4

func (*ContainerResourceMetricStatus) Reset added in v1.2.4

func (x *ContainerResourceMetricStatus) Reset()

func (*ContainerResourceMetricStatus) String added in v1.2.4

type CrossVersionObjectReference

type CrossVersionObjectReference struct {

	// Kind of the referent; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
	Kind *string `protobuf:"bytes,1,opt,name=kind" json:"kind,omitempty"`
	// Name of the referent; More info: http://kubernetes.io/docs/user-guide/identifiers#names
	Name *string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
	// API version of the referent
	// +optional
	ApiVersion *string `protobuf:"bytes,3,opt,name=apiVersion" json:"apiVersion,omitempty"`
	// contains filtered or unexported fields
}

CrossVersionObjectReference contains enough information to let you identify the referred resource.

func (*CrossVersionObjectReference) Descriptor deprecated

func (*CrossVersionObjectReference) Descriptor() ([]byte, []int)

Deprecated: Use CrossVersionObjectReference.ProtoReflect.Descriptor instead.

func (*CrossVersionObjectReference) GetApiVersion

func (x *CrossVersionObjectReference) GetApiVersion() string

func (*CrossVersionObjectReference) GetKind

func (x *CrossVersionObjectReference) GetKind() string

func (*CrossVersionObjectReference) GetName

func (x *CrossVersionObjectReference) GetName() string

func (*CrossVersionObjectReference) ProtoMessage

func (*CrossVersionObjectReference) ProtoMessage()

func (*CrossVersionObjectReference) ProtoReflect added in v1.2.4

func (*CrossVersionObjectReference) Reset

func (x *CrossVersionObjectReference) Reset()

func (*CrossVersionObjectReference) String

func (x *CrossVersionObjectReference) String() string

type ExternalMetricSource added in v1.1.0

type ExternalMetricSource struct {

	// metricName is the name of the metric in question.
	MetricName *string `protobuf:"bytes,1,opt,name=metricName" json:"metricName,omitempty"`
	// metricSelector is used to identify a specific time series
	// within a given metric.
	// +optional
	MetricSelector *v1.LabelSelector `protobuf:"bytes,2,opt,name=metricSelector" json:"metricSelector,omitempty"`
	// targetValue is the target value of the metric (as a quantity).
	// Mutually exclusive with TargetAverageValue.
	// +optional
	TargetValue *resource.Quantity `protobuf:"bytes,3,opt,name=targetValue" json:"targetValue,omitempty"`
	// targetAverageValue is the target per-pod value of global metric (as a quantity).
	// Mutually exclusive with TargetValue.
	// +optional
	TargetAverageValue *resource.Quantity `protobuf:"bytes,4,opt,name=targetAverageValue" json:"targetAverageValue,omitempty"`
	// contains filtered or unexported fields
}

ExternalMetricSource indicates how to scale on a metric not associated with any Kubernetes object (for example length of queue in cloud messaging service, or QPS from loadbalancer running outside of cluster).

func (*ExternalMetricSource) Descriptor deprecated added in v1.1.0

func (*ExternalMetricSource) Descriptor() ([]byte, []int)

Deprecated: Use ExternalMetricSource.ProtoReflect.Descriptor instead.

func (*ExternalMetricSource) GetMetricName added in v1.1.0

func (x *ExternalMetricSource) GetMetricName() string

func (*ExternalMetricSource) GetMetricSelector added in v1.1.0

func (x *ExternalMetricSource) GetMetricSelector() *v1.LabelSelector

func (*ExternalMetricSource) GetTargetAverageValue added in v1.1.0

func (x *ExternalMetricSource) GetTargetAverageValue() *resource.Quantity

func (*ExternalMetricSource) GetTargetValue added in v1.1.0

func (x *ExternalMetricSource) GetTargetValue() *resource.Quantity

func (*ExternalMetricSource) ProtoMessage added in v1.1.0

func (*ExternalMetricSource) ProtoMessage()

func (*ExternalMetricSource) ProtoReflect added in v1.2.4

func (x *ExternalMetricSource) ProtoReflect() protoreflect.Message

func (*ExternalMetricSource) Reset added in v1.1.0

func (x *ExternalMetricSource) Reset()

func (*ExternalMetricSource) String added in v1.1.0

func (x *ExternalMetricSource) String() string

type ExternalMetricStatus added in v1.1.0

type ExternalMetricStatus struct {

	// metricName is the name of a metric used for autoscaling in
	// metric system.
	MetricName *string `protobuf:"bytes,1,opt,name=metricName" json:"metricName,omitempty"`
	// metricSelector is used to identify a specific time series
	// within a given metric.
	// +optional
	MetricSelector *v1.LabelSelector `protobuf:"bytes,2,opt,name=metricSelector" json:"metricSelector,omitempty"`
	// currentValue is the current value of the metric (as a quantity)
	CurrentValue *resource.Quantity `protobuf:"bytes,3,opt,name=currentValue" json:"currentValue,omitempty"`
	// currentAverageValue is the current value of metric averaged over autoscaled pods.
	// +optional
	CurrentAverageValue *resource.Quantity `protobuf:"bytes,4,opt,name=currentAverageValue" json:"currentAverageValue,omitempty"`
	// contains filtered or unexported fields
}

ExternalMetricStatus indicates the current value of a global metric not associated with any Kubernetes object.

func (*ExternalMetricStatus) Descriptor deprecated added in v1.1.0

func (*ExternalMetricStatus) Descriptor() ([]byte, []int)

Deprecated: Use ExternalMetricStatus.ProtoReflect.Descriptor instead.

func (*ExternalMetricStatus) GetCurrentAverageValue added in v1.1.0

func (x *ExternalMetricStatus) GetCurrentAverageValue() *resource.Quantity

func (*ExternalMetricStatus) GetCurrentValue added in v1.1.0

func (x *ExternalMetricStatus) GetCurrentValue() *resource.Quantity

func (*ExternalMetricStatus) GetMetricName added in v1.1.0

func (x *ExternalMetricStatus) GetMetricName() string

func (*ExternalMetricStatus) GetMetricSelector added in v1.1.0

func (x *ExternalMetricStatus) GetMetricSelector() *v1.LabelSelector

func (*ExternalMetricStatus) ProtoMessage added in v1.1.0

func (*ExternalMetricStatus) ProtoMessage()

func (*ExternalMetricStatus) ProtoReflect added in v1.2.4

func (x *ExternalMetricStatus) ProtoReflect() protoreflect.Message

func (*ExternalMetricStatus) Reset added in v1.1.0

func (x *ExternalMetricStatus) Reset()

func (*ExternalMetricStatus) String added in v1.1.0

func (x *ExternalMetricStatus) String() string

type HorizontalPodAutoscaler

type HorizontalPodAutoscaler struct {

	// Standard object metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
	// +optional
	Metadata *v1.ObjectMeta `protobuf:"bytes,1,opt,name=metadata" json:"metadata,omitempty"`
	// behaviour of autoscaler. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status.
	// +optional
	Spec *HorizontalPodAutoscalerSpec `protobuf:"bytes,2,opt,name=spec" json:"spec,omitempty"`
	// current information about the autoscaler.
	// +optional
	Status *HorizontalPodAutoscalerStatus `protobuf:"bytes,3,opt,name=status" json:"status,omitempty"`
	// contains filtered or unexported fields
}

configuration of a horizontal pod autoscaler.

func (*HorizontalPodAutoscaler) Descriptor deprecated

func (*HorizontalPodAutoscaler) Descriptor() ([]byte, []int)

Deprecated: Use HorizontalPodAutoscaler.ProtoReflect.Descriptor instead.

func (*HorizontalPodAutoscaler) GetMetadata

func (x *HorizontalPodAutoscaler) GetMetadata() *v1.ObjectMeta

func (*HorizontalPodAutoscaler) GetSpec

func (*HorizontalPodAutoscaler) GetStatus

func (*HorizontalPodAutoscaler) ProtoMessage

func (*HorizontalPodAutoscaler) ProtoMessage()

func (*HorizontalPodAutoscaler) ProtoReflect added in v1.2.4

func (x *HorizontalPodAutoscaler) ProtoReflect() protoreflect.Message

func (*HorizontalPodAutoscaler) Reset

func (x *HorizontalPodAutoscaler) Reset()

func (*HorizontalPodAutoscaler) String

func (x *HorizontalPodAutoscaler) String() string

type HorizontalPodAutoscalerCondition added in v1.0.0

type HorizontalPodAutoscalerCondition struct {

	// type describes the current condition
	Type *string `protobuf:"bytes,1,opt,name=type" json:"type,omitempty"`
	// status is the status of the condition (True, False, Unknown)
	Status *string `protobuf:"bytes,2,opt,name=status" json:"status,omitempty"`
	// lastTransitionTime is the last time the condition transitioned from
	// one status to another
	// +optional
	LastTransitionTime *v1.Time `protobuf:"bytes,3,opt,name=lastTransitionTime" json:"lastTransitionTime,omitempty"`
	// reason is the reason for the condition's last transition.
	// +optional
	Reason *string `protobuf:"bytes,4,opt,name=reason" json:"reason,omitempty"`
	// message is a human-readable explanation containing details about
	// the transition
	// +optional
	Message *string `protobuf:"bytes,5,opt,name=message" json:"message,omitempty"`
	// contains filtered or unexported fields
}

HorizontalPodAutoscalerCondition describes the state of a HorizontalPodAutoscaler at a certain point.

func (*HorizontalPodAutoscalerCondition) Descriptor deprecated added in v1.0.0

func (*HorizontalPodAutoscalerCondition) Descriptor() ([]byte, []int)

Deprecated: Use HorizontalPodAutoscalerCondition.ProtoReflect.Descriptor instead.

func (*HorizontalPodAutoscalerCondition) GetLastTransitionTime added in v1.0.0

func (x *HorizontalPodAutoscalerCondition) GetLastTransitionTime() *v1.Time

func (*HorizontalPodAutoscalerCondition) GetMessage added in v1.0.0

func (x *HorizontalPodAutoscalerCondition) GetMessage() string

func (*HorizontalPodAutoscalerCondition) GetReason added in v1.0.0

func (*HorizontalPodAutoscalerCondition) GetStatus added in v1.0.0

func (*HorizontalPodAutoscalerCondition) GetType added in v1.0.0

func (*HorizontalPodAutoscalerCondition) ProtoMessage added in v1.0.0

func (*HorizontalPodAutoscalerCondition) ProtoMessage()

func (*HorizontalPodAutoscalerCondition) ProtoReflect added in v1.2.4

func (*HorizontalPodAutoscalerCondition) Reset added in v1.0.0

func (*HorizontalPodAutoscalerCondition) String added in v1.0.0

type HorizontalPodAutoscalerList

type HorizontalPodAutoscalerList struct {

	// Standard list metadata.
	// +optional
	Metadata *v1.ListMeta `protobuf:"bytes,1,opt,name=metadata" json:"metadata,omitempty"`
	// list of horizontal pod autoscaler objects.
	Items []*HorizontalPodAutoscaler `protobuf:"bytes,2,rep,name=items" json:"items,omitempty"`
	// contains filtered or unexported fields
}

list of horizontal pod autoscaler objects.

func (*HorizontalPodAutoscalerList) Descriptor deprecated

func (*HorizontalPodAutoscalerList) Descriptor() ([]byte, []int)

Deprecated: Use HorizontalPodAutoscalerList.ProtoReflect.Descriptor instead.

func (*HorizontalPodAutoscalerList) GetItems

func (*HorizontalPodAutoscalerList) GetMetadata

func (x *HorizontalPodAutoscalerList) GetMetadata() *v1.ListMeta

func (*HorizontalPodAutoscalerList) ProtoMessage

func (*HorizontalPodAutoscalerList) ProtoMessage()

func (*HorizontalPodAutoscalerList) ProtoReflect added in v1.2.4

func (*HorizontalPodAutoscalerList) Reset

func (x *HorizontalPodAutoscalerList) Reset()

func (*HorizontalPodAutoscalerList) String

func (x *HorizontalPodAutoscalerList) String() string

type HorizontalPodAutoscalerSpec

type HorizontalPodAutoscalerSpec struct {

	// reference to scaled resource; horizontal pod autoscaler will learn the current resource consumption
	// and will set the desired number of pods by using its Scale subresource.
	ScaleTargetRef *CrossVersionObjectReference `protobuf:"bytes,1,opt,name=scaleTargetRef" json:"scaleTargetRef,omitempty"`
	// minReplicas is the lower limit for the number of replicas to which the autoscaler
	// can scale down.  It defaults to 1 pod.  minReplicas is allowed to be 0 if the
	// alpha feature gate HPAScaleToZero is enabled and at least one Object or External
	// metric is configured.  Scaling is active as long as at least one metric value is
	// available.
	// +optional
	MinReplicas *int32 `protobuf:"varint,2,opt,name=minReplicas" json:"minReplicas,omitempty"`
	// upper limit for the number of pods that can be set by the autoscaler; cannot be smaller than MinReplicas.
	MaxReplicas *int32 `protobuf:"varint,3,opt,name=maxReplicas" json:"maxReplicas,omitempty"`
	// target average CPU utilization (represented as a percentage of requested CPU) over all the pods;
	// if not specified the default autoscaling policy will be used.
	// +optional
	TargetCPUUtilizationPercentage *int32 `protobuf:"varint,4,opt,name=targetCPUUtilizationPercentage" json:"targetCPUUtilizationPercentage,omitempty"`
	// contains filtered or unexported fields
}

specification of a horizontal pod autoscaler.

func (*HorizontalPodAutoscalerSpec) Descriptor deprecated

func (*HorizontalPodAutoscalerSpec) Descriptor() ([]byte, []int)

Deprecated: Use HorizontalPodAutoscalerSpec.ProtoReflect.Descriptor instead.

func (*HorizontalPodAutoscalerSpec) GetMaxReplicas

func (x *HorizontalPodAutoscalerSpec) GetMaxReplicas() int32

func (*HorizontalPodAutoscalerSpec) GetMinReplicas

func (x *HorizontalPodAutoscalerSpec) GetMinReplicas() int32

func (*HorizontalPodAutoscalerSpec) GetScaleTargetRef

func (*HorizontalPodAutoscalerSpec) GetTargetCPUUtilizationPercentage

func (x *HorizontalPodAutoscalerSpec) GetTargetCPUUtilizationPercentage() int32

func (*HorizontalPodAutoscalerSpec) ProtoMessage

func (*HorizontalPodAutoscalerSpec) ProtoMessage()

func (*HorizontalPodAutoscalerSpec) ProtoReflect added in v1.2.4

func (*HorizontalPodAutoscalerSpec) Reset

func (x *HorizontalPodAutoscalerSpec) Reset()

func (*HorizontalPodAutoscalerSpec) String

func (x *HorizontalPodAutoscalerSpec) String() string

type HorizontalPodAutoscalerStatus

type HorizontalPodAutoscalerStatus struct {

	// most recent generation observed by this autoscaler.
	// +optional
	ObservedGeneration *int64 `protobuf:"varint,1,opt,name=observedGeneration" json:"observedGeneration,omitempty"`
	// last time the HorizontalPodAutoscaler scaled the number of pods;
	// used by the autoscaler to control how often the number of pods is changed.
	// +optional
	LastScaleTime *v1.Time `protobuf:"bytes,2,opt,name=lastScaleTime" json:"lastScaleTime,omitempty"`
	// current number of replicas of pods managed by this autoscaler.
	CurrentReplicas *int32 `protobuf:"varint,3,opt,name=currentReplicas" json:"currentReplicas,omitempty"`
	// desired number of replicas of pods managed by this autoscaler.
	DesiredReplicas *int32 `protobuf:"varint,4,opt,name=desiredReplicas" json:"desiredReplicas,omitempty"`
	// current average CPU utilization over all pods, represented as a percentage of requested CPU,
	// e.g. 70 means that an average pod is using now 70% of its requested CPU.
	// +optional
	CurrentCPUUtilizationPercentage *int32 `protobuf:"varint,5,opt,name=currentCPUUtilizationPercentage" json:"currentCPUUtilizationPercentage,omitempty"`
	// contains filtered or unexported fields
}

current status of a horizontal pod autoscaler

func (*HorizontalPodAutoscalerStatus) Descriptor deprecated

func (*HorizontalPodAutoscalerStatus) Descriptor() ([]byte, []int)

Deprecated: Use HorizontalPodAutoscalerStatus.ProtoReflect.Descriptor instead.

func (*HorizontalPodAutoscalerStatus) GetCurrentCPUUtilizationPercentage

func (x *HorizontalPodAutoscalerStatus) GetCurrentCPUUtilizationPercentage() int32

func (*HorizontalPodAutoscalerStatus) GetCurrentReplicas

func (x *HorizontalPodAutoscalerStatus) GetCurrentReplicas() int32

func (*HorizontalPodAutoscalerStatus) GetDesiredReplicas

func (x *HorizontalPodAutoscalerStatus) GetDesiredReplicas() int32

func (*HorizontalPodAutoscalerStatus) GetLastScaleTime

func (x *HorizontalPodAutoscalerStatus) GetLastScaleTime() *v1.Time

func (*HorizontalPodAutoscalerStatus) GetObservedGeneration

func (x *HorizontalPodAutoscalerStatus) GetObservedGeneration() int64

func (*HorizontalPodAutoscalerStatus) ProtoMessage

func (*HorizontalPodAutoscalerStatus) ProtoMessage()

func (*HorizontalPodAutoscalerStatus) ProtoReflect added in v1.2.4

func (*HorizontalPodAutoscalerStatus) Reset

func (x *HorizontalPodAutoscalerStatus) Reset()

func (*HorizontalPodAutoscalerStatus) String

type MetricSpec added in v0.3.0

type MetricSpec struct {

	// type is the type of metric source.  It should be one of "ContainerResource",
	// "External", "Object", "Pods" or "Resource", each mapping to a matching field in the object.
	// Note: "ContainerResource" type is available on when the feature-gate
	// HPAContainerMetrics is enabled
	Type *string `protobuf:"bytes,1,opt,name=type" json:"type,omitempty"`
	// object refers to a metric describing a single kubernetes object
	// (for example, hits-per-second on an Ingress object).
	// +optional
	Object *ObjectMetricSource `protobuf:"bytes,2,opt,name=object" json:"object,omitempty"`
	// pods refers to a metric describing each pod in the current scale target
	// (for example, transactions-processed-per-second).  The values will be
	// averaged together before being compared to the target value.
	// +optional
	Pods *PodsMetricSource `protobuf:"bytes,3,opt,name=pods" json:"pods,omitempty"`
	// resource refers to a resource metric (such as those specified in
	// requests and limits) known to Kubernetes describing each pod in the
	// current scale target (e.g. CPU or memory). Such metrics are built in to
	// Kubernetes, and have special scaling options on top of those available
	// to normal per-pod metrics using the "pods" source.
	// +optional
	Resource *ResourceMetricSource `protobuf:"bytes,4,opt,name=resource" json:"resource,omitempty"`
	// container resource refers to a resource metric (such as those specified in
	// requests and limits) known to Kubernetes describing a single container in each pod of the
	// current scale target (e.g. CPU or memory). Such metrics are built in to
	// Kubernetes, and have special scaling options on top of those available
	// to normal per-pod metrics using the "pods" source.
	// This is an alpha feature and can be enabled by the HPAContainerMetrics feature flag.
	// +optional
	ContainerResource *ContainerResourceMetricSource `protobuf:"bytes,7,opt,name=containerResource" json:"containerResource,omitempty"`
	// external refers to a global metric that is not associated
	// with any Kubernetes object. It allows autoscaling based on information
	// coming from components running outside of cluster
	// (for example length of queue in cloud messaging service, or
	// QPS from loadbalancer running outside of cluster).
	// +optional
	External *ExternalMetricSource `protobuf:"bytes,5,opt,name=external" json:"external,omitempty"`
	// contains filtered or unexported fields
}

MetricSpec specifies how to scale based on a single metric (only `type` and one other matching field should be set at once).

func (*MetricSpec) Descriptor deprecated added in v0.3.0

func (*MetricSpec) Descriptor() ([]byte, []int)

Deprecated: Use MetricSpec.ProtoReflect.Descriptor instead.

func (*MetricSpec) GetContainerResource added in v1.2.4

func (x *MetricSpec) GetContainerResource() *ContainerResourceMetricSource

func (*MetricSpec) GetExternal added in v1.1.0

func (x *MetricSpec) GetExternal() *ExternalMetricSource

func (*MetricSpec) GetObject added in v0.3.0

func (x *MetricSpec) GetObject() *ObjectMetricSource

func (*MetricSpec) GetPods added in v0.3.0

func (x *MetricSpec) GetPods() *PodsMetricSource

func (*MetricSpec) GetResource added in v0.3.0

func (x *MetricSpec) GetResource() *ResourceMetricSource

func (*MetricSpec) GetType added in v0.3.0

func (x *MetricSpec) GetType() string

func (*MetricSpec) ProtoMessage added in v0.3.0

func (*MetricSpec) ProtoMessage()

func (*MetricSpec) ProtoReflect added in v1.2.4

func (x *MetricSpec) ProtoReflect() protoreflect.Message

func (*MetricSpec) Reset added in v0.3.0

func (x *MetricSpec) Reset()

func (*MetricSpec) String added in v0.3.0

func (x *MetricSpec) String() string

type MetricStatus added in v0.3.0

type MetricStatus struct {

	// type is the type of metric source.  It will be one of "ContainerResource",
	// "External", "Object", "Pods" or "Resource", each corresponds to a matching field in the object.
	// Note: "ContainerResource" type is available on when the feature-gate
	// HPAContainerMetrics is enabled
	Type *string `protobuf:"bytes,1,opt,name=type" json:"type,omitempty"`
	// object refers to a metric describing a single kubernetes object
	// (for example, hits-per-second on an Ingress object).
	// +optional
	Object *ObjectMetricStatus `protobuf:"bytes,2,opt,name=object" json:"object,omitempty"`
	// pods refers to a metric describing each pod in the current scale target
	// (for example, transactions-processed-per-second).  The values will be
	// averaged together before being compared to the target value.
	// +optional
	Pods *PodsMetricStatus `protobuf:"bytes,3,opt,name=pods" json:"pods,omitempty"`
	// resource refers to a resource metric (such as those specified in
	// requests and limits) known to Kubernetes describing each pod in the
	// current scale target (e.g. CPU or memory). Such metrics are built in to
	// Kubernetes, and have special scaling options on top of those available
	// to normal per-pod metrics using the "pods" source.
	// +optional
	Resource *ResourceMetricStatus `protobuf:"bytes,4,opt,name=resource" json:"resource,omitempty"`
	// container resource refers to a resource metric (such as those specified in
	// requests and limits) known to Kubernetes describing a single container in each pod in the
	// current scale target (e.g. CPU or memory). Such metrics are built in to
	// Kubernetes, and have special scaling options on top of those available
	// to normal per-pod metrics using the "pods" source.
	// +optional
	ContainerResource *ContainerResourceMetricStatus `protobuf:"bytes,7,opt,name=containerResource" json:"containerResource,omitempty"`
	// external refers to a global metric that is not associated
	// with any Kubernetes object. It allows autoscaling based on information
	// coming from components running outside of cluster
	// (for example length of queue in cloud messaging service, or
	// QPS from loadbalancer running outside of cluster).
	// +optional
	External *ExternalMetricStatus `protobuf:"bytes,5,opt,name=external" json:"external,omitempty"`
	// contains filtered or unexported fields
}

MetricStatus describes the last-read state of a single metric.

func (*MetricStatus) Descriptor deprecated added in v0.3.0

func (*MetricStatus) Descriptor() ([]byte, []int)

Deprecated: Use MetricStatus.ProtoReflect.Descriptor instead.

func (*MetricStatus) GetContainerResource added in v1.2.4

func (x *MetricStatus) GetContainerResource() *ContainerResourceMetricStatus

func (*MetricStatus) GetExternal added in v1.1.0

func (x *MetricStatus) GetExternal() *ExternalMetricStatus

func (*MetricStatus) GetObject added in v0.3.0

func (x *MetricStatus) GetObject() *ObjectMetricStatus

func (*MetricStatus) GetPods added in v0.3.0

func (x *MetricStatus) GetPods() *PodsMetricStatus

func (*MetricStatus) GetResource added in v0.3.0

func (x *MetricStatus) GetResource() *ResourceMetricStatus

func (*MetricStatus) GetType added in v0.3.0

func (x *MetricStatus) GetType() string

func (*MetricStatus) ProtoMessage added in v0.3.0

func (*MetricStatus) ProtoMessage()

func (*MetricStatus) ProtoReflect added in v1.2.4

func (x *MetricStatus) ProtoReflect() protoreflect.Message

func (*MetricStatus) Reset added in v0.3.0

func (x *MetricStatus) Reset()

func (*MetricStatus) String added in v0.3.0

func (x *MetricStatus) String() string

type ObjectMetricSource added in v0.3.0

type ObjectMetricSource struct {

	// target is the described Kubernetes object.
	Target *CrossVersionObjectReference `protobuf:"bytes,1,opt,name=target" json:"target,omitempty"`
	// metricName is the name of the metric in question.
	MetricName *string `protobuf:"bytes,2,opt,name=metricName" json:"metricName,omitempty"`
	// targetValue is the target value of the metric (as a quantity).
	TargetValue *resource.Quantity `protobuf:"bytes,3,opt,name=targetValue" json:"targetValue,omitempty"`
	// selector is the string-encoded form of a standard kubernetes label selector for the given metric.
	// When set, it is passed as an additional parameter to the metrics server for more specific metrics scoping
	// When unset, just the metricName will be used to gather metrics.
	// +optional
	Selector *v1.LabelSelector `protobuf:"bytes,4,opt,name=selector" json:"selector,omitempty"`
	// averageValue is the target value of the average of the
	// metric across all relevant pods (as a quantity)
	// +optional
	AverageValue *resource.Quantity `protobuf:"bytes,5,opt,name=averageValue" json:"averageValue,omitempty"`
	// contains filtered or unexported fields
}

ObjectMetricSource indicates how to scale on a metric describing a kubernetes object (for example, hits-per-second on an Ingress object).

func (*ObjectMetricSource) Descriptor deprecated added in v0.3.0

func (*ObjectMetricSource) Descriptor() ([]byte, []int)

Deprecated: Use ObjectMetricSource.ProtoReflect.Descriptor instead.

func (*ObjectMetricSource) GetAverageValue added in v1.2.4

func (x *ObjectMetricSource) GetAverageValue() *resource.Quantity

func (*ObjectMetricSource) GetMetricName added in v0.3.0

func (x *ObjectMetricSource) GetMetricName() string

func (*ObjectMetricSource) GetSelector added in v1.2.4

func (x *ObjectMetricSource) GetSelector() *v1.LabelSelector

func (*ObjectMetricSource) GetTarget added in v0.3.0

func (*ObjectMetricSource) GetTargetValue added in v0.3.0

func (x *ObjectMetricSource) GetTargetValue() *resource.Quantity

func (*ObjectMetricSource) ProtoMessage added in v0.3.0

func (*ObjectMetricSource) ProtoMessage()

func (*ObjectMetricSource) ProtoReflect added in v1.2.4

func (x *ObjectMetricSource) ProtoReflect() protoreflect.Message

func (*ObjectMetricSource) Reset added in v0.3.0

func (x *ObjectMetricSource) Reset()

func (*ObjectMetricSource) String added in v0.3.0

func (x *ObjectMetricSource) String() string

type ObjectMetricStatus added in v0.3.0

type ObjectMetricStatus struct {

	// target is the described Kubernetes object.
	Target *CrossVersionObjectReference `protobuf:"bytes,1,opt,name=target" json:"target,omitempty"`
	// metricName is the name of the metric in question.
	MetricName *string `protobuf:"bytes,2,opt,name=metricName" json:"metricName,omitempty"`
	// currentValue is the current value of the metric (as a quantity).
	CurrentValue *resource.Quantity `protobuf:"bytes,3,opt,name=currentValue" json:"currentValue,omitempty"`
	// selector is the string-encoded form of a standard kubernetes label selector for the given metric
	// When set in the ObjectMetricSource, it is passed as an additional parameter to the metrics server for more specific metrics scoping.
	// When unset, just the metricName will be used to gather metrics.
	// +optional
	Selector *v1.LabelSelector `protobuf:"bytes,4,opt,name=selector" json:"selector,omitempty"`
	// averageValue is the current value of the average of the
	// metric across all relevant pods (as a quantity)
	// +optional
	AverageValue *resource.Quantity `protobuf:"bytes,5,opt,name=averageValue" json:"averageValue,omitempty"`
	// contains filtered or unexported fields
}

ObjectMetricStatus indicates the current value of a metric describing a kubernetes object (for example, hits-per-second on an Ingress object).

func (*ObjectMetricStatus) Descriptor deprecated added in v0.3.0

func (*ObjectMetricStatus) Descriptor() ([]byte, []int)

Deprecated: Use ObjectMetricStatus.ProtoReflect.Descriptor instead.

func (*ObjectMetricStatus) GetAverageValue added in v1.2.4

func (x *ObjectMetricStatus) GetAverageValue() *resource.Quantity

func (*ObjectMetricStatus) GetCurrentValue added in v0.3.0

func (x *ObjectMetricStatus) GetCurrentValue() *resource.Quantity

func (*ObjectMetricStatus) GetMetricName added in v0.3.0

func (x *ObjectMetricStatus) GetMetricName() string

func (*ObjectMetricStatus) GetSelector added in v1.2.4

func (x *ObjectMetricStatus) GetSelector() *v1.LabelSelector

func (*ObjectMetricStatus) GetTarget added in v0.3.0

func (*ObjectMetricStatus) ProtoMessage added in v0.3.0

func (*ObjectMetricStatus) ProtoMessage()

func (*ObjectMetricStatus) ProtoReflect added in v1.2.4

func (x *ObjectMetricStatus) ProtoReflect() protoreflect.Message

func (*ObjectMetricStatus) Reset added in v0.3.0

func (x *ObjectMetricStatus) Reset()

func (*ObjectMetricStatus) String added in v0.3.0

func (x *ObjectMetricStatus) String() string

type PodsMetricSource added in v0.3.0

type PodsMetricSource struct {

	// metricName is the name of the metric in question
	MetricName *string `protobuf:"bytes,1,opt,name=metricName" json:"metricName,omitempty"`
	// targetAverageValue is the target value of the average of the
	// metric across all relevant pods (as a quantity)
	TargetAverageValue *resource.Quantity `protobuf:"bytes,2,opt,name=targetAverageValue" json:"targetAverageValue,omitempty"`
	// selector is the string-encoded form of a standard kubernetes label selector for the given metric
	// When set, it is passed as an additional parameter to the metrics server for more specific metrics scoping
	// When unset, just the metricName will be used to gather metrics.
	// +optional
	Selector *v1.LabelSelector `protobuf:"bytes,3,opt,name=selector" json:"selector,omitempty"`
	// contains filtered or unexported fields
}

PodsMetricSource indicates how to scale on a metric describing each pod in the current scale target (for example, transactions-processed-per-second). The values will be averaged together before being compared to the target value.

func (*PodsMetricSource) Descriptor deprecated added in v0.3.0

func (*PodsMetricSource) Descriptor() ([]byte, []int)

Deprecated: Use PodsMetricSource.ProtoReflect.Descriptor instead.

func (*PodsMetricSource) GetMetricName added in v0.3.0

func (x *PodsMetricSource) GetMetricName() string

func (*PodsMetricSource) GetSelector added in v1.2.4

func (x *PodsMetricSource) GetSelector() *v1.LabelSelector

func (*PodsMetricSource) GetTargetAverageValue added in v0.3.0

func (x *PodsMetricSource) GetTargetAverageValue() *resource.Quantity

func (*PodsMetricSource) ProtoMessage added in v0.3.0

func (*PodsMetricSource) ProtoMessage()

func (*PodsMetricSource) ProtoReflect added in v1.2.4

func (x *PodsMetricSource) ProtoReflect() protoreflect.Message

func (*PodsMetricSource) Reset added in v0.3.0

func (x *PodsMetricSource) Reset()

func (*PodsMetricSource) String added in v0.3.0

func (x *PodsMetricSource) String() string

type PodsMetricStatus added in v0.3.0

type PodsMetricStatus struct {

	// metricName is the name of the metric in question
	MetricName *string `protobuf:"bytes,1,opt,name=metricName" json:"metricName,omitempty"`
	// currentAverageValue is the current value of the average of the
	// metric across all relevant pods (as a quantity)
	CurrentAverageValue *resource.Quantity `protobuf:"bytes,2,opt,name=currentAverageValue" json:"currentAverageValue,omitempty"`
	// selector is the string-encoded form of a standard kubernetes label selector for the given metric
	// When set in the PodsMetricSource, it is passed as an additional parameter to the metrics server for more specific metrics scoping.
	// When unset, just the metricName will be used to gather metrics.
	// +optional
	Selector *v1.LabelSelector `protobuf:"bytes,3,opt,name=selector" json:"selector,omitempty"`
	// contains filtered or unexported fields
}

PodsMetricStatus indicates the current value of a metric describing each pod in the current scale target (for example, transactions-processed-per-second).

func (*PodsMetricStatus) Descriptor deprecated added in v0.3.0

func (*PodsMetricStatus) Descriptor() ([]byte, []int)

Deprecated: Use PodsMetricStatus.ProtoReflect.Descriptor instead.

func (*PodsMetricStatus) GetCurrentAverageValue added in v0.3.0

func (x *PodsMetricStatus) GetCurrentAverageValue() *resource.Quantity

func (*PodsMetricStatus) GetMetricName added in v0.3.0

func (x *PodsMetricStatus) GetMetricName() string

func (*PodsMetricStatus) GetSelector added in v1.2.4

func (x *PodsMetricStatus) GetSelector() *v1.LabelSelector

func (*PodsMetricStatus) ProtoMessage added in v0.3.0

func (*PodsMetricStatus) ProtoMessage()

func (*PodsMetricStatus) ProtoReflect added in v1.2.4

func (x *PodsMetricStatus) ProtoReflect() protoreflect.Message

func (*PodsMetricStatus) Reset added in v0.3.0

func (x *PodsMetricStatus) Reset()

func (*PodsMetricStatus) String added in v0.3.0

func (x *PodsMetricStatus) String() string

type ResourceMetricSource added in v0.3.0

type ResourceMetricSource struct {

	// name is the name of the resource in question.
	Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	// targetAverageUtilization is the target value of the average of the
	// resource metric across all relevant pods, represented as a percentage of
	// the requested value of the resource for the pods.
	// +optional
	TargetAverageUtilization *int32 `protobuf:"varint,2,opt,name=targetAverageUtilization" json:"targetAverageUtilization,omitempty"`
	// targetAverageValue is the target value of the average of the
	// resource metric across all relevant pods, as a raw value (instead of as
	// a percentage of the request), similar to the "pods" metric source type.
	// +optional
	TargetAverageValue *resource.Quantity `protobuf:"bytes,3,opt,name=targetAverageValue" json:"targetAverageValue,omitempty"`
	// contains filtered or unexported fields
}

ResourceMetricSource indicates how to scale on a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). The values will be averaged together before being compared to the target. Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the "pods" source. Only one "target" type should be set.

func (*ResourceMetricSource) Descriptor deprecated added in v0.3.0

func (*ResourceMetricSource) Descriptor() ([]byte, []int)

Deprecated: Use ResourceMetricSource.ProtoReflect.Descriptor instead.

func (*ResourceMetricSource) GetName added in v0.3.0

func (x *ResourceMetricSource) GetName() string

func (*ResourceMetricSource) GetTargetAverageUtilization added in v0.3.0

func (x *ResourceMetricSource) GetTargetAverageUtilization() int32

func (*ResourceMetricSource) GetTargetAverageValue added in v0.3.0

func (x *ResourceMetricSource) GetTargetAverageValue() *resource.Quantity

func (*ResourceMetricSource) ProtoMessage added in v0.3.0

func (*ResourceMetricSource) ProtoMessage()

func (*ResourceMetricSource) ProtoReflect added in v1.2.4

func (x *ResourceMetricSource) ProtoReflect() protoreflect.Message

func (*ResourceMetricSource) Reset added in v0.3.0

func (x *ResourceMetricSource) Reset()

func (*ResourceMetricSource) String added in v0.3.0

func (x *ResourceMetricSource) String() string

type ResourceMetricStatus added in v0.3.0

type ResourceMetricStatus struct {

	// name is the name of the resource in question.
	Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	// currentAverageUtilization is the current value of the average of the
	// resource metric across all relevant pods, represented as a percentage of
	// the requested value of the resource for the pods.  It will only be
	// present if `targetAverageValue` was set in the corresponding metric
	// specification.
	// +optional
	CurrentAverageUtilization *int32 `protobuf:"varint,2,opt,name=currentAverageUtilization" json:"currentAverageUtilization,omitempty"`
	// currentAverageValue is the current value of the average of the
	// resource metric across all relevant pods, as a raw value (instead of as
	// a percentage of the request), similar to the "pods" metric source type.
	// It will always be set, regardless of the corresponding metric specification.
	CurrentAverageValue *resource.Quantity `protobuf:"bytes,3,opt,name=currentAverageValue" json:"currentAverageValue,omitempty"`
	// contains filtered or unexported fields
}

ResourceMetricStatus indicates the current value of a resource metric known to Kubernetes, as specified in requests and limits, describing each pod in the current scale target (e.g. CPU or memory). Such metrics are built in to Kubernetes, and have special scaling options on top of those available to normal per-pod metrics using the "pods" source.

func (*ResourceMetricStatus) Descriptor deprecated added in v0.3.0

func (*ResourceMetricStatus) Descriptor() ([]byte, []int)

Deprecated: Use ResourceMetricStatus.ProtoReflect.Descriptor instead.

func (*ResourceMetricStatus) GetCurrentAverageUtilization added in v0.3.0

func (x *ResourceMetricStatus) GetCurrentAverageUtilization() int32

func (*ResourceMetricStatus) GetCurrentAverageValue added in v0.3.0

func (x *ResourceMetricStatus) GetCurrentAverageValue() *resource.Quantity

func (*ResourceMetricStatus) GetName added in v0.3.0

func (x *ResourceMetricStatus) GetName() string

func (*ResourceMetricStatus) ProtoMessage added in v0.3.0

func (*ResourceMetricStatus) ProtoMessage()

func (*ResourceMetricStatus) ProtoReflect added in v1.2.4

func (x *ResourceMetricStatus) ProtoReflect() protoreflect.Message

func (*ResourceMetricStatus) Reset added in v0.3.0

func (x *ResourceMetricStatus) Reset()

func (*ResourceMetricStatus) String added in v0.3.0

func (x *ResourceMetricStatus) String() string

type Scale

type Scale struct {

	// Standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.
	// +optional
	Metadata *v1.ObjectMeta `protobuf:"bytes,1,opt,name=metadata" json:"metadata,omitempty"`
	// defines the behavior of the scale. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status.
	// +optional
	Spec *ScaleSpec `protobuf:"bytes,2,opt,name=spec" json:"spec,omitempty"`
	// current status of the scale. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status. Read-only.
	// +optional
	Status *ScaleStatus `protobuf:"bytes,3,opt,name=status" json:"status,omitempty"`
	// contains filtered or unexported fields
}

Scale represents a scaling request for a resource.

func (*Scale) Descriptor deprecated

func (*Scale) Descriptor() ([]byte, []int)

Deprecated: Use Scale.ProtoReflect.Descriptor instead.

func (*Scale) GetMetadata

func (x *Scale) GetMetadata() *v1.ObjectMeta

func (*Scale) GetSpec

func (x *Scale) GetSpec() *ScaleSpec

func (*Scale) GetStatus

func (x *Scale) GetStatus() *ScaleStatus

func (*Scale) ProtoMessage

func (*Scale) ProtoMessage()

func (*Scale) ProtoReflect added in v1.2.4

func (x *Scale) ProtoReflect() protoreflect.Message

func (*Scale) Reset

func (x *Scale) Reset()

func (*Scale) String

func (x *Scale) String() string

type ScaleSpec

type ScaleSpec struct {

	// desired number of instances for the scaled object.
	// +optional
	Replicas *int32 `protobuf:"varint,1,opt,name=replicas" json:"replicas,omitempty"`
	// contains filtered or unexported fields
}

ScaleSpec describes the attributes of a scale subresource.

func (*ScaleSpec) Descriptor deprecated

func (*ScaleSpec) Descriptor() ([]byte, []int)

Deprecated: Use ScaleSpec.ProtoReflect.Descriptor instead.

func (*ScaleSpec) GetReplicas

func (x *ScaleSpec) GetReplicas() int32

func (*ScaleSpec) ProtoMessage

func (*ScaleSpec) ProtoMessage()

func (*ScaleSpec) ProtoReflect added in v1.2.4

func (x *ScaleSpec) ProtoReflect() protoreflect.Message

func (*ScaleSpec) Reset

func (x *ScaleSpec) Reset()

func (*ScaleSpec) String

func (x *ScaleSpec) String() string

type ScaleStatus

type ScaleStatus struct {

	// actual number of observed instances of the scaled object.
	Replicas *int32 `protobuf:"varint,1,opt,name=replicas" json:"replicas,omitempty"`
	// label query over pods that should match the replicas count. This is same
	// as the label selector but in the string format to avoid introspection
	// by clients. The string will be in the same format as the query-param syntax.
	// More info about label selectors: http://kubernetes.io/docs/user-guide/labels#label-selectors
	// +optional
	Selector *string `protobuf:"bytes,2,opt,name=selector" json:"selector,omitempty"`
	// contains filtered or unexported fields
}

ScaleStatus represents the current status of a scale subresource.

func (*ScaleStatus) Descriptor deprecated

func (*ScaleStatus) Descriptor() ([]byte, []int)

Deprecated: Use ScaleStatus.ProtoReflect.Descriptor instead.

func (*ScaleStatus) GetReplicas

func (x *ScaleStatus) GetReplicas() int32

func (*ScaleStatus) GetSelector

func (x *ScaleStatus) GetSelector() string

func (*ScaleStatus) ProtoMessage

func (*ScaleStatus) ProtoMessage()

func (*ScaleStatus) ProtoReflect added in v1.2.4

func (x *ScaleStatus) ProtoReflect() protoreflect.Message

func (*ScaleStatus) Reset

func (x *ScaleStatus) Reset()

func (*ScaleStatus) String

func (x *ScaleStatus) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL