{
  "description": "specification of a horizontal pod autoscaler.",
  "properties": {
    "maxReplicas": {
      "description": "maxReplicas is the upper limit for the number of pods that can be set by the autoscaler; cannot be smaller than MinReplicas.",
      "format": "int32",
      "type": [
        "integer",
        "null"
      ]
    },
    "minReplicas": {
      "description": "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.",
      "format": "int32",
      "type": [
        "integer",
        "null"
      ]
    },
    "scaleTargetRef": {
      "$ref": "/api/_definitions.json#/$defs/io.k8s.api.autoscaling.v1.CrossVersionObjectReference",
      "description": "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."
    },
    "targetCPUUtilizationPercentage": {
      "description": "targetCPUUtilizationPercentage is the 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.",
      "format": "int32",
      "type": [
        "integer",
        "null"
      ]
    }
  },
  "required": [
    "scaleTargetRef",
    "maxReplicas"
  ],
  "type": "object",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://kubernetes.io/api/horizontalpodautoscalerspec/autoscaling/v1"
}