Interface IBasicStepScalingPolicyProps
Namespace: Amazon.CDK.AWS.AutoScaling
Assembly: Amazon.CDK.AWS.AutoScaling.dll
Syntax (csharp)
public interface IBasicStepScalingPolicyProps
Syntax (vb)
Public Interface IBasicStepScalingPolicyProps
Remarks
ExampleMetadata: infused
Examples
AutoScalingGroup autoScalingGroup;
var workerUtilizationMetric = new Metric(new MetricProps {
Namespace = "MyService",
MetricName = "WorkerUtilization"
});
autoScalingGroup.ScaleOnMetric("ScaleToCPU", new BasicStepScalingPolicyProps {
Metric = workerUtilizationMetric,
ScalingSteps = new [] { new ScalingInterval { Upper = 10, Change = -1 }, new ScalingInterval { Lower = 50, Change = +1 }, new ScalingInterval { Lower = 70, Change = +3 } },
// Change this to AdjustmentType.PERCENT_CHANGE_IN_CAPACITY to interpret the
// 'change' numbers before as percentages instead of capacity counts.
AdjustmentType = AdjustmentType.CHANGE_IN_CAPACITY
});
Synopsis
Properties
AdjustmentType | How the adjustment numbers inside 'intervals' are interpreted. |
Cooldown | Grace period after scaling activity. |
EstimatedInstanceWarmup | Estimated time until a newly launched instance can send metrics to CloudWatch. |
EvaluationPeriods | How many evaluation periods of the metric to wait before triggering a scaling action. |
Metric | Metric to scale on. |
MetricAggregationType | Aggregation to apply to all data points over the evaluation periods. |
MinAdjustmentMagnitude | Minimum absolute number to adjust capacity with as result of percentage scaling. |
ScalingSteps | The intervals for scaling. |
Properties
AdjustmentType
How the adjustment numbers inside 'intervals' are interpreted.
virtual Nullable<AdjustmentType> AdjustmentType { get; }
Property Value
System.Nullable<AdjustmentType>
Remarks
Default: ChangeInCapacity
Cooldown
Grace period after scaling activity.
virtual Duration Cooldown { get; }
Property Value
Remarks
Default: Default cooldown period on your AutoScalingGroup
EstimatedInstanceWarmup
Estimated time until a newly launched instance can send metrics to CloudWatch.
virtual Duration EstimatedInstanceWarmup { get; }
Property Value
Remarks
Default: Same as the cooldown
EvaluationPeriods
How many evaluation periods of the metric to wait before triggering a scaling action.
virtual Nullable<double> EvaluationPeriods { get; }
Property Value
System.Nullable<System.Double>
Remarks
Raising this value can be used to smooth out the metric, at the expense of slower response times.
Default: 1
Metric
MetricAggregationType
Aggregation to apply to all data points over the evaluation periods.
virtual Nullable<MetricAggregationType> MetricAggregationType { get; }
Property Value
System.Nullable<MetricAggregationType>
Remarks
Only has meaning if evaluationPeriods != 1
.
Default: - The statistic from the metric if applicable (MIN, MAX, AVERAGE), otherwise AVERAGE.
MinAdjustmentMagnitude
Minimum absolute number to adjust capacity with as result of percentage scaling.
virtual Nullable<double> MinAdjustmentMagnitude { get; }
Property Value
System.Nullable<System.Double>
Remarks
Only when using AdjustmentType = PercentChangeInCapacity, this number controls the minimum absolute effect size.
Default: No minimum scaling effect
ScalingSteps
The intervals for scaling.
IScalingInterval[] ScalingSteps { get; }
Property Value
Remarks
Maps a range of metric values to a particular scaling behavior.