Interface PredictiveScalingConfiguration.Builder

All Superinterfaces:
Buildable, CopyableBuilder<PredictiveScalingConfiguration.Builder,PredictiveScalingConfiguration>, SdkBuilder<PredictiveScalingConfiguration.Builder,PredictiveScalingConfiguration>, SdkPojo
Enclosing class:
PredictiveScalingConfiguration

public static interface PredictiveScalingConfiguration.Builder extends SdkPojo, CopyableBuilder<PredictiveScalingConfiguration.Builder,PredictiveScalingConfiguration>
  • Method Details

    • metricSpecifications

      This structure includes the metrics and target utilization to use for predictive scaling.

      This is an array, but we currently only support a single metric specification. That is, you can specify a target value and a single metric pair, or a target value and one scaling metric and one load metric.

      Parameters:
      metricSpecifications - This structure includes the metrics and target utilization to use for predictive scaling.

      This is an array, but we currently only support a single metric specification. That is, you can specify a target value and a single metric pair, or a target value and one scaling metric and one load metric.

      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • metricSpecifications

      This structure includes the metrics and target utilization to use for predictive scaling.

      This is an array, but we currently only support a single metric specification. That is, you can specify a target value and a single metric pair, or a target value and one scaling metric and one load metric.

      Parameters:
      metricSpecifications - This structure includes the metrics and target utilization to use for predictive scaling.

      This is an array, but we currently only support a single metric specification. That is, you can specify a target value and a single metric pair, or a target value and one scaling metric and one load metric.

      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • metricSpecifications

      This structure includes the metrics and target utilization to use for predictive scaling.

      This is an array, but we currently only support a single metric specification. That is, you can specify a target value and a single metric pair, or a target value and one scaling metric and one load metric.

      This is a convenience method that creates an instance of the PredictiveScalingMetricSpecification.Builder avoiding the need to create one manually via PredictiveScalingMetricSpecification.builder().

      When the Consumer completes, SdkBuilder.build() is called immediately and its result is passed to metricSpecifications(List<PredictiveScalingMetricSpecification>).

      Parameters:
      metricSpecifications - a consumer that will call methods on PredictiveScalingMetricSpecification.Builder
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • mode

      The predictive scaling mode. Defaults to ForecastOnly if not specified.

      Parameters:
      mode - The predictive scaling mode. Defaults to ForecastOnly if not specified.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • mode

      The predictive scaling mode. Defaults to ForecastOnly if not specified.

      Parameters:
      mode - The predictive scaling mode. Defaults to ForecastOnly if not specified.
      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • schedulingBufferTime

      PredictiveScalingConfiguration.Builder schedulingBufferTime(Integer schedulingBufferTime)

      The amount of time, in seconds, by which the instance launch time can be advanced. For example, the forecast says to add capacity at 10:00 AM, and you choose to pre-launch instances by 5 minutes. In that case, the instances will be launched at 9:55 AM. The intention is to give resources time to be provisioned. It can take a few minutes to launch an EC2 instance. The actual amount of time required depends on several factors, such as the size of the instance and whether there are startup scripts to complete.

      The value must be less than the forecast interval duration of 3600 seconds (60 minutes). Defaults to 300 seconds if not specified.

      Parameters:
      schedulingBufferTime - The amount of time, in seconds, by which the instance launch time can be advanced. For example, the forecast says to add capacity at 10:00 AM, and you choose to pre-launch instances by 5 minutes. In that case, the instances will be launched at 9:55 AM. The intention is to give resources time to be provisioned. It can take a few minutes to launch an EC2 instance. The actual amount of time required depends on several factors, such as the size of the instance and whether there are startup scripts to complete.

      The value must be less than the forecast interval duration of 3600 seconds (60 minutes). Defaults to 300 seconds if not specified.

      Returns:
      Returns a reference to this object so that method calls can be chained together.
    • maxCapacityBreachBehavior

      PredictiveScalingConfiguration.Builder maxCapacityBreachBehavior(String maxCapacityBreachBehavior)

      Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity of the Auto Scaling group. Defaults to HonorMaxCapacity if not specified.

      The following are possible values:

      • HonorMaxCapacity - Amazon EC2 Auto Scaling cannot scale out capacity higher than the maximum capacity. The maximum capacity is enforced as a hard limit.

      • IncreaseMaxCapacity - Amazon EC2 Auto Scaling can scale out capacity higher than the maximum capacity when the forecast capacity is close to or exceeds the maximum capacity. The upper limit is determined by the forecasted capacity and the value for MaxCapacityBuffer.

      Parameters:
      maxCapacityBreachBehavior - Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity of the Auto Scaling group. Defaults to HonorMaxCapacity if not specified.

      The following are possible values:

      • HonorMaxCapacity - Amazon EC2 Auto Scaling cannot scale out capacity higher than the maximum capacity. The maximum capacity is enforced as a hard limit.

      • IncreaseMaxCapacity - Amazon EC2 Auto Scaling can scale out capacity higher than the maximum capacity when the forecast capacity is close to or exceeds the maximum capacity. The upper limit is determined by the forecasted capacity and the value for MaxCapacityBuffer.

      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • maxCapacityBreachBehavior

      PredictiveScalingConfiguration.Builder maxCapacityBreachBehavior(PredictiveScalingMaxCapacityBreachBehavior maxCapacityBreachBehavior)

      Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity of the Auto Scaling group. Defaults to HonorMaxCapacity if not specified.

      The following are possible values:

      • HonorMaxCapacity - Amazon EC2 Auto Scaling cannot scale out capacity higher than the maximum capacity. The maximum capacity is enforced as a hard limit.

      • IncreaseMaxCapacity - Amazon EC2 Auto Scaling can scale out capacity higher than the maximum capacity when the forecast capacity is close to or exceeds the maximum capacity. The upper limit is determined by the forecasted capacity and the value for MaxCapacityBuffer.

      Parameters:
      maxCapacityBreachBehavior - Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity of the Auto Scaling group. Defaults to HonorMaxCapacity if not specified.

      The following are possible values:

      • HonorMaxCapacity - Amazon EC2 Auto Scaling cannot scale out capacity higher than the maximum capacity. The maximum capacity is enforced as a hard limit.

      • IncreaseMaxCapacity - Amazon EC2 Auto Scaling can scale out capacity higher than the maximum capacity when the forecast capacity is close to or exceeds the maximum capacity. The upper limit is determined by the forecasted capacity and the value for MaxCapacityBuffer.

      Returns:
      Returns a reference to this object so that method calls can be chained together.
      See Also:
    • maxCapacityBuffer

      PredictiveScalingConfiguration.Builder maxCapacityBuffer(Integer maxCapacityBuffer)

      The size of the capacity buffer to use when the forecast capacity is close to or exceeds the maximum capacity. The value is specified as a percentage relative to the forecast capacity. For example, if the buffer is 10, this means a 10 percent buffer, such that if the forecast capacity is 50, and the maximum capacity is 40, then the effective maximum capacity is 55.

      If set to 0, Amazon EC2 Auto Scaling may scale capacity higher than the maximum capacity to equal but not exceed forecast capacity.

      Required if the MaxCapacityBreachBehavior property is set to IncreaseMaxCapacity, and cannot be used otherwise.

      Parameters:
      maxCapacityBuffer - The size of the capacity buffer to use when the forecast capacity is close to or exceeds the maximum capacity. The value is specified as a percentage relative to the forecast capacity. For example, if the buffer is 10, this means a 10 percent buffer, such that if the forecast capacity is 50, and the maximum capacity is 40, then the effective maximum capacity is 55.

      If set to 0, Amazon EC2 Auto Scaling may scale capacity higher than the maximum capacity to equal but not exceed forecast capacity.

      Required if the MaxCapacityBreachBehavior property is set to IncreaseMaxCapacity, and cannot be used otherwise.

      Returns:
      Returns a reference to this object so that method calls can be chained together.