1. Registry
  2. Packages
  3. AWS Cloud Control
  4. API Docs
  5. autoscalingplans
  6. ScalingPlan

We recommend new projects start with resources from the AWS provider.

Viewing docs for AWS Cloud Control v1.85.0
published on Monday, Nov 2, 2026 by Pulumi
aws-native logo aws-native logo AWS Cloud Control

We recommend new projects start with resources from the AWS provider.

Viewing docs for AWS Cloud Control v1.85.0
published on Monday, Nov 2, 2026 by Pulumi

    Resource Type definition for AWS::AutoScalingPlans::ScalingPlan

    Example Usage

    Example

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AwsNative = Pulumi.AwsNative;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        var myTagKey = config.Require("myTagKey");
        var myTagValue = config.Require("myTagValue");
        var myASGroup = config.Require("myASGroup");
        var asgMinCapacity = config.RequireDouble("asgMinCapacity");
        var asgMaxCapacity = config.RequireDouble("asgMaxCapacity");
        var asgTargetUtilization = config.GetDouble("asgTargetUtilization") ?? "50.0";
        var asgEstimatedInstanceWarmup = config.GetDouble("asgEstimatedInstanceWarmup") ?? "600";
        var myScalingPlan = new AwsNative.AutoScalingPlans.ScalingPlan("myScalingPlan", new()
        {
            ApplicationSource = new AwsNative.AutoScalingPlans.Inputs.ScalingPlanApplicationSourceArgs
            {
                TagFilters = new[]
                {
                    new AwsNative.AutoScalingPlans.Inputs.ScalingPlanTagFilterArgs
                    {
                        Key = myTagKey,
                        Values = new[]
                        {
                            myTagValue,
                        },
                    },
                },
            },
            ScalingInstructions = new[]
            {
                new AwsNative.AutoScalingPlans.Inputs.ScalingPlanScalingInstructionArgs
                {
                    MinCapacity = asgMinCapacity,
                    MaxCapacity = asgMaxCapacity,
                    ServiceNamespace = "autoscaling",
                    ScalableDimension = "autoscaling:autoScalingGroup:DesiredCapacity",
                    ResourceId = $"autoScalingGroup/{myASGroup}",
                    TargetTrackingConfigurations = new[]
                    {
                        new AwsNative.AutoScalingPlans.Inputs.ScalingPlanTargetTrackingConfigurationArgs
                        {
                            PredefinedScalingMetricSpecification = new AwsNative.AutoScalingPlans.Inputs.ScalingPlanPredefinedScalingMetricSpecificationArgs
                            {
                                PredefinedScalingMetricType = "ASGAverageCPUUtilization",
                            },
                            TargetValue = asgTargetUtilization,
                            EstimatedInstanceWarmup = asgEstimatedInstanceWarmup,
                        },
                    },
                    PredefinedLoadMetricSpecification = new AwsNative.AutoScalingPlans.Inputs.ScalingPlanPredefinedLoadMetricSpecificationArgs
                    {
                        PredefinedLoadMetricType = "ASGTotalCPUUtilization",
                    },
                    PredictiveScalingMode = "ForecastOnly",
                    PredictiveScalingMaxCapacityBehavior = "SetMaxCapacityAboveForecastCapacity",
                    PredictiveScalingMaxCapacityBuffer = 25,
                    ScheduledActionBufferTime = 600,
                },
            },
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws-native/sdk/go/aws/autoscalingplans"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		cfg := config.New(ctx, "")
    		myTagKey := cfg.Require("myTagKey")
    		myTagValue := cfg.Require("myTagValue")
    		myASGroup := cfg.Require("myASGroup")
    		asgMinCapacity := cfg.RequireFloat64("asgMinCapacity")
    		asgMaxCapacity := cfg.RequireFloat64("asgMaxCapacity")
    		asgTargetUtilization := float64("50.0")
    		if param := cfg.GetFloat64("asgTargetUtilization"); param != 0 {
    			asgTargetUtilization = param
    		}
    		asgEstimatedInstanceWarmup := float64("600")
    		if param := cfg.GetFloat64("asgEstimatedInstanceWarmup"); param != 0 {
    			asgEstimatedInstanceWarmup = param
    		}
    		_, err := autoscalingplans.NewScalingPlan(ctx, "myScalingPlan", &autoscalingplans.ScalingPlanArgs{
    			ApplicationSource: &autoscalingplans.ScalingPlanApplicationSourceArgs{
    				TagFilters: autoscalingplans.ScalingPlanTagFilterArray{
    					&autoscalingplans.ScalingPlanTagFilterArgs{
    						Key: pulumi.String(myTagKey),
    						Values: pulumi.StringArray{
    							pulumi.String(myTagValue),
    						},
    					},
    				},
    			},
    			ScalingInstructions: autoscalingplans.ScalingPlanScalingInstructionArray{
    				&autoscalingplans.ScalingPlanScalingInstructionArgs{
    					MinCapacity:       pulumi.Float64(asgMinCapacity),
    					MaxCapacity:       pulumi.Float64(asgMaxCapacity),
    					ServiceNamespace:  pulumi.String("autoscaling"),
    					ScalableDimension: pulumi.String("autoscaling:autoScalingGroup:DesiredCapacity"),
    					ResourceId:        pulumi.Sprintf("autoScalingGroup/%v", myASGroup),
    					TargetTrackingConfigurations: autoscalingplans.ScalingPlanTargetTrackingConfigurationArray{
    						&autoscalingplans.ScalingPlanTargetTrackingConfigurationArgs{
    							PredefinedScalingMetricSpecification: &autoscalingplans.ScalingPlanPredefinedScalingMetricSpecificationArgs{
    								PredefinedScalingMetricType: pulumi.String("ASGAverageCPUUtilization"),
    							},
    							TargetValue:             pulumi.Float64(asgTargetUtilization),
    							EstimatedInstanceWarmup: pulumi.Float64(asgEstimatedInstanceWarmup),
    						},
    					},
    					PredefinedLoadMetricSpecification: &autoscalingplans.ScalingPlanPredefinedLoadMetricSpecificationArgs{
    						PredefinedLoadMetricType: pulumi.String("ASGTotalCPUUtilization"),
    					},
    					PredictiveScalingMode:                pulumi.String("ForecastOnly"),
    					PredictiveScalingMaxCapacityBehavior: pulumi.String("SetMaxCapacityAboveForecastCapacity"),
    					PredictiveScalingMaxCapacityBuffer:   pulumi.Int(25),
    					ScheduledActionBufferTime:            pulumi.Int(600),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    

    Example coming soon!

    Example coming soon!

    import * as pulumi from "@pulumi/pulumi";
    import * as aws_native from "@pulumi/aws-native";
    
    const config = new pulumi.Config();
    const myTagKey = config.require("myTagKey");
    const myTagValue = config.require("myTagValue");
    const myASGroup = config.require("myASGroup");
    const asgMinCapacity = config.requireNumber("asgMinCapacity");
    const asgMaxCapacity = config.requireNumber("asgMaxCapacity");
    const asgTargetUtilization = config.getNumber("asgTargetUtilization") || "50.0";
    const asgEstimatedInstanceWarmup = config.getNumber("asgEstimatedInstanceWarmup") || "600";
    const myScalingPlan = new aws_native.autoscalingplans.ScalingPlan("myScalingPlan", {
        applicationSource: {
            tagFilters: [{
                key: myTagKey,
                values: [myTagValue],
            }],
        },
        scalingInstructions: [{
            minCapacity: asgMinCapacity,
            maxCapacity: asgMaxCapacity,
            serviceNamespace: "autoscaling",
            scalableDimension: "autoscaling:autoScalingGroup:DesiredCapacity",
            resourceId: `autoScalingGroup/${myASGroup}`,
            targetTrackingConfigurations: [{
                predefinedScalingMetricSpecification: {
                    predefinedScalingMetricType: "ASGAverageCPUUtilization",
                },
                targetValue: asgTargetUtilization,
                estimatedInstanceWarmup: asgEstimatedInstanceWarmup,
            }],
            predefinedLoadMetricSpecification: {
                predefinedLoadMetricType: "ASGTotalCPUUtilization",
            },
            predictiveScalingMode: "ForecastOnly",
            predictiveScalingMaxCapacityBehavior: "SetMaxCapacityAboveForecastCapacity",
            predictiveScalingMaxCapacityBuffer: 25,
            scheduledActionBufferTime: 600,
        }],
    });
    
    import pulumi
    import pulumi_aws_native as aws_native
    
    config = pulumi.Config()
    my_tag_key = config.require("myTagKey")
    my_tag_value = config.require("myTagValue")
    my_as_group = config.require("myASGroup")
    asg_min_capacity = config.require_float("asgMinCapacity")
    asg_max_capacity = config.require_float("asgMaxCapacity")
    asg_target_utilization = config.get_float("asgTargetUtilization")
    if asg_target_utilization is None:
        asg_target_utilization = "50.0"
    asg_estimated_instance_warmup = config.get_float("asgEstimatedInstanceWarmup")
    if asg_estimated_instance_warmup is None:
        asg_estimated_instance_warmup = "600"
    my_scaling_plan = aws_native.autoscalingplans.ScalingPlan("myScalingPlan",
        application_source={
            "tag_filters": [{
                "key": my_tag_key,
                "values": [my_tag_value],
            }],
        },
        scaling_instructions=[{
            "min_capacity": int(asg_min_capacity),
            "max_capacity": int(asg_max_capacity),
            "service_namespace": "autoscaling",
            "scalable_dimension": "autoscaling:autoScalingGroup:DesiredCapacity",
            "resource_id": f"autoScalingGroup/{my_as_group}",
            "target_tracking_configurations": [{
                "predefined_scaling_metric_specification": {
                    "predefined_scaling_metric_type": "ASGAverageCPUUtilization",
                },
                "target_value": asg_target_utilization,
                "estimated_instance_warmup": int(asg_estimated_instance_warmup),
            }],
            "predefined_load_metric_specification": {
                "predefined_load_metric_type": "ASGTotalCPUUtilization",
            },
            "predictive_scaling_mode": "ForecastOnly",
            "predictive_scaling_max_capacity_behavior": "SetMaxCapacityAboveForecastCapacity",
            "predictive_scaling_max_capacity_buffer": 25,
            "scheduled_action_buffer_time": 600,
        }])
    

    Example coming soon!

    Example

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AwsNative = Pulumi.AwsNative;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        var myTagKey = config.Require("myTagKey");
        var myTagValue = config.Require("myTagValue");
        var myASGroup = config.Require("myASGroup");
        var asgMinCapacity = config.RequireDouble("asgMinCapacity");
        var asgMaxCapacity = config.RequireDouble("asgMaxCapacity");
        var asgTargetUtilization = config.GetDouble("asgTargetUtilization") ?? 50;
        var asgEstimatedInstanceWarmup = config.GetDouble("asgEstimatedInstanceWarmup") ?? 600;
        var myScalingPlan = new AwsNative.AutoScalingPlans.ScalingPlan("myScalingPlan", new()
        {
            ApplicationSource = new AwsNative.AutoScalingPlans.Inputs.ScalingPlanApplicationSourceArgs
            {
                TagFilters = new[]
                {
                    new AwsNative.AutoScalingPlans.Inputs.ScalingPlanTagFilterArgs
                    {
                        Key = myTagKey,
                        Values = new[]
                        {
                            myTagValue,
                        },
                    },
                },
            },
            ScalingInstructions = new[]
            {
                new AwsNative.AutoScalingPlans.Inputs.ScalingPlanScalingInstructionArgs
                {
                    MinCapacity = asgMinCapacity,
                    MaxCapacity = asgMaxCapacity,
                    ServiceNamespace = "autoscaling",
                    ScalableDimension = "autoscaling:autoScalingGroup:DesiredCapacity",
                    ResourceId = $"autoScalingGroup/{myASGroup}",
                    TargetTrackingConfigurations = new[]
                    {
                        new AwsNative.AutoScalingPlans.Inputs.ScalingPlanTargetTrackingConfigurationArgs
                        {
                            PredefinedScalingMetricSpecification = new AwsNative.AutoScalingPlans.Inputs.ScalingPlanPredefinedScalingMetricSpecificationArgs
                            {
                                PredefinedScalingMetricType = "ASGAverageCPUUtilization",
                            },
                            TargetValue = asgTargetUtilization,
                            EstimatedInstanceWarmup = asgEstimatedInstanceWarmup,
                        },
                    },
                    PredefinedLoadMetricSpecification = new AwsNative.AutoScalingPlans.Inputs.ScalingPlanPredefinedLoadMetricSpecificationArgs
                    {
                        PredefinedLoadMetricType = "ASGTotalCPUUtilization",
                    },
                    PredictiveScalingMode = "ForecastOnly",
                    PredictiveScalingMaxCapacityBehavior = "SetMaxCapacityAboveForecastCapacity",
                    PredictiveScalingMaxCapacityBuffer = 25,
                    ScheduledActionBufferTime = 600,
                },
            },
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws-native/sdk/go/aws/autoscalingplans"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		cfg := config.New(ctx, "")
    		myTagKey := cfg.Require("myTagKey")
    		myTagValue := cfg.Require("myTagValue")
    		myASGroup := cfg.Require("myASGroup")
    		asgMinCapacity := cfg.RequireFloat64("asgMinCapacity")
    		asgMaxCapacity := cfg.RequireFloat64("asgMaxCapacity")
    		asgTargetUtilization := float64(50)
    		if param := cfg.GetFloat64("asgTargetUtilization"); param != 0 {
    			asgTargetUtilization = param
    		}
    		asgEstimatedInstanceWarmup := float64(600)
    		if param := cfg.GetFloat64("asgEstimatedInstanceWarmup"); param != 0 {
    			asgEstimatedInstanceWarmup = param
    		}
    		_, err := autoscalingplans.NewScalingPlan(ctx, "myScalingPlan", &autoscalingplans.ScalingPlanArgs{
    			ApplicationSource: &autoscalingplans.ScalingPlanApplicationSourceArgs{
    				TagFilters: autoscalingplans.ScalingPlanTagFilterArray{
    					&autoscalingplans.ScalingPlanTagFilterArgs{
    						Key: pulumi.String(myTagKey),
    						Values: pulumi.StringArray{
    							pulumi.String(myTagValue),
    						},
    					},
    				},
    			},
    			ScalingInstructions: autoscalingplans.ScalingPlanScalingInstructionArray{
    				&autoscalingplans.ScalingPlanScalingInstructionArgs{
    					MinCapacity:       pulumi.Float64(asgMinCapacity),
    					MaxCapacity:       pulumi.Float64(asgMaxCapacity),
    					ServiceNamespace:  pulumi.String("autoscaling"),
    					ScalableDimension: pulumi.String("autoscaling:autoScalingGroup:DesiredCapacity"),
    					ResourceId:        pulumi.Sprintf("autoScalingGroup/%v", myASGroup),
    					TargetTrackingConfigurations: autoscalingplans.ScalingPlanTargetTrackingConfigurationArray{
    						&autoscalingplans.ScalingPlanTargetTrackingConfigurationArgs{
    							PredefinedScalingMetricSpecification: &autoscalingplans.ScalingPlanPredefinedScalingMetricSpecificationArgs{
    								PredefinedScalingMetricType: pulumi.String("ASGAverageCPUUtilization"),
    							},
    							TargetValue:             pulumi.Float64(asgTargetUtilization),
    							EstimatedInstanceWarmup: pulumi.Float64(asgEstimatedInstanceWarmup),
    						},
    					},
    					PredefinedLoadMetricSpecification: &autoscalingplans.ScalingPlanPredefinedLoadMetricSpecificationArgs{
    						PredefinedLoadMetricType: pulumi.String("ASGTotalCPUUtilization"),
    					},
    					PredictiveScalingMode:                pulumi.String("ForecastOnly"),
    					PredictiveScalingMaxCapacityBehavior: pulumi.String("SetMaxCapacityAboveForecastCapacity"),
    					PredictiveScalingMaxCapacityBuffer:   pulumi.Int(25),
    					ScheduledActionBufferTime:            pulumi.Int(600),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    

    Example coming soon!

    Example coming soon!

    import * as pulumi from "@pulumi/pulumi";
    import * as aws_native from "@pulumi/aws-native";
    
    const config = new pulumi.Config();
    const myTagKey = config.require("myTagKey");
    const myTagValue = config.require("myTagValue");
    const myASGroup = config.require("myASGroup");
    const asgMinCapacity = config.requireNumber("asgMinCapacity");
    const asgMaxCapacity = config.requireNumber("asgMaxCapacity");
    const asgTargetUtilization = config.getNumber("asgTargetUtilization") || 50;
    const asgEstimatedInstanceWarmup = config.getNumber("asgEstimatedInstanceWarmup") || 600;
    const myScalingPlan = new aws_native.autoscalingplans.ScalingPlan("myScalingPlan", {
        applicationSource: {
            tagFilters: [{
                key: myTagKey,
                values: [myTagValue],
            }],
        },
        scalingInstructions: [{
            minCapacity: asgMinCapacity,
            maxCapacity: asgMaxCapacity,
            serviceNamespace: "autoscaling",
            scalableDimension: "autoscaling:autoScalingGroup:DesiredCapacity",
            resourceId: `autoScalingGroup/${myASGroup}`,
            targetTrackingConfigurations: [{
                predefinedScalingMetricSpecification: {
                    predefinedScalingMetricType: "ASGAverageCPUUtilization",
                },
                targetValue: asgTargetUtilization,
                estimatedInstanceWarmup: asgEstimatedInstanceWarmup,
            }],
            predefinedLoadMetricSpecification: {
                predefinedLoadMetricType: "ASGTotalCPUUtilization",
            },
            predictiveScalingMode: "ForecastOnly",
            predictiveScalingMaxCapacityBehavior: "SetMaxCapacityAboveForecastCapacity",
            predictiveScalingMaxCapacityBuffer: 25,
            scheduledActionBufferTime: 600,
        }],
    });
    
    import pulumi
    import pulumi_aws_native as aws_native
    
    config = pulumi.Config()
    my_tag_key = config.require("myTagKey")
    my_tag_value = config.require("myTagValue")
    my_as_group = config.require("myASGroup")
    asg_min_capacity = config.require_float("asgMinCapacity")
    asg_max_capacity = config.require_float("asgMaxCapacity")
    asg_target_utilization = config.get_float("asgTargetUtilization")
    if asg_target_utilization is None:
        asg_target_utilization = 50
    asg_estimated_instance_warmup = config.get_float("asgEstimatedInstanceWarmup")
    if asg_estimated_instance_warmup is None:
        asg_estimated_instance_warmup = 600
    my_scaling_plan = aws_native.autoscalingplans.ScalingPlan("myScalingPlan",
        application_source={
            "tag_filters": [{
                "key": my_tag_key,
                "values": [my_tag_value],
            }],
        },
        scaling_instructions=[{
            "min_capacity": int(asg_min_capacity),
            "max_capacity": int(asg_max_capacity),
            "service_namespace": "autoscaling",
            "scalable_dimension": "autoscaling:autoScalingGroup:DesiredCapacity",
            "resource_id": f"autoScalingGroup/{my_as_group}",
            "target_tracking_configurations": [{
                "predefined_scaling_metric_specification": {
                    "predefined_scaling_metric_type": "ASGAverageCPUUtilization",
                },
                "target_value": asg_target_utilization,
                "estimated_instance_warmup": int(asg_estimated_instance_warmup),
            }],
            "predefined_load_metric_specification": {
                "predefined_load_metric_type": "ASGTotalCPUUtilization",
            },
            "predictive_scaling_mode": "ForecastOnly",
            "predictive_scaling_max_capacity_behavior": "SetMaxCapacityAboveForecastCapacity",
            "predictive_scaling_max_capacity_buffer": 25,
            "scheduled_action_buffer_time": 600,
        }])
    

    Example coming soon!

    Create ScalingPlan Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ScalingPlan(name: string, args: ScalingPlanArgs, opts?: CustomResourceOptions);
    @overload
    def ScalingPlan(resource_name: str,
                    args: ScalingPlanArgs,
                    opts: Optional[ResourceOptions] = None)
    
    @overload
    def ScalingPlan(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    application_source: Optional[ScalingPlanApplicationSourceArgs] = None,
                    scaling_instructions: Optional[Sequence[ScalingPlanScalingInstructionArgs]] = None)
    func NewScalingPlan(ctx *Context, name string, args ScalingPlanArgs, opts ...ResourceOption) (*ScalingPlan, error)
    public ScalingPlan(string name, ScalingPlanArgs args, CustomResourceOptions? opts = null)
    public ScalingPlan(String name, ScalingPlanArgs args)
    public ScalingPlan(String name, ScalingPlanArgs args, CustomResourceOptions options)
    
    type: aws-native:autoscalingplans:ScalingPlan
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "aws-native_autoscalingplans_scaling_plan" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args ScalingPlanArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ScalingPlanArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ScalingPlanArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ScalingPlanArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ScalingPlanArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    ScalingPlan Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The ScalingPlan resource accepts the following input properties:

    ApplicationSource Pulumi.AwsNative.AutoScalingPlans.Inputs.ScalingPlanApplicationSource
    A CloudFormation stack or a set of tags. You can create one scaling plan per application source. The ApplicationSource property must be present to ensure interoperability with the AWS Auto Scaling console.
    ScalingInstructions List<Pulumi.AwsNative.AutoScalingPlans.Inputs.ScalingPlanScalingInstruction>
    The scaling instructions.
    ApplicationSource ScalingPlanApplicationSourceArgs
    A CloudFormation stack or a set of tags. You can create one scaling plan per application source. The ApplicationSource property must be present to ensure interoperability with the AWS Auto Scaling console.
    ScalingInstructions []ScalingPlanScalingInstructionArgs
    The scaling instructions.
    application_source object
    A CloudFormation stack or a set of tags. You can create one scaling plan per application source. The ApplicationSource property must be present to ensure interoperability with the AWS Auto Scaling console.
    scaling_instructions list(object)
    The scaling instructions.
    applicationSource ScalingPlanApplicationSource
    A CloudFormation stack or a set of tags. You can create one scaling plan per application source. The ApplicationSource property must be present to ensure interoperability with the AWS Auto Scaling console.
    scalingInstructions List<ScalingPlanScalingInstruction>
    The scaling instructions.
    applicationSource ScalingPlanApplicationSource
    A CloudFormation stack or a set of tags. You can create one scaling plan per application source. The ApplicationSource property must be present to ensure interoperability with the AWS Auto Scaling console.
    scalingInstructions ScalingPlanScalingInstruction[]
    The scaling instructions.
    application_source ScalingPlanApplicationSourceArgs
    A CloudFormation stack or a set of tags. You can create one scaling plan per application source. The ApplicationSource property must be present to ensure interoperability with the AWS Auto Scaling console.
    scaling_instructions Sequence[ScalingPlanScalingInstructionArgs]
    The scaling instructions.
    applicationSource Property Map
    A CloudFormation stack or a set of tags. You can create one scaling plan per application source. The ApplicationSource property must be present to ensure interoperability with the AWS Auto Scaling console.
    scalingInstructions List<Property Map>
    The scaling instructions.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ScalingPlan resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    ScalingPlanArn string
    The Amazon Resource Name (ARN) of the scaling plan.
    ScalingPlanName string
    The name of the scaling plan. Names cannot contain vertical bars, colons, or forward slashes.
    ScalingPlanVersion string
    The version number of the scaling plan. This value is always 1.
    Id string
    The provider-assigned unique ID for this managed resource.
    ScalingPlanArn string
    The Amazon Resource Name (ARN) of the scaling plan.
    ScalingPlanName string
    The name of the scaling plan. Names cannot contain vertical bars, colons, or forward slashes.
    ScalingPlanVersion string
    The version number of the scaling plan. This value is always 1.
    id string
    The provider-assigned unique ID for this managed resource.
    scaling_plan_arn string
    The Amazon Resource Name (ARN) of the scaling plan.
    scaling_plan_name string
    The name of the scaling plan. Names cannot contain vertical bars, colons, or forward slashes.
    scaling_plan_version string
    The version number of the scaling plan. This value is always 1.
    id String
    The provider-assigned unique ID for this managed resource.
    scalingPlanArn String
    The Amazon Resource Name (ARN) of the scaling plan.
    scalingPlanName String
    The name of the scaling plan. Names cannot contain vertical bars, colons, or forward slashes.
    scalingPlanVersion String
    The version number of the scaling plan. This value is always 1.
    id string
    The provider-assigned unique ID for this managed resource.
    scalingPlanArn string
    The Amazon Resource Name (ARN) of the scaling plan.
    scalingPlanName string
    The name of the scaling plan. Names cannot contain vertical bars, colons, or forward slashes.
    scalingPlanVersion string
    The version number of the scaling plan. This value is always 1.
    id str
    The provider-assigned unique ID for this managed resource.
    scaling_plan_arn str
    The Amazon Resource Name (ARN) of the scaling plan.
    scaling_plan_name str
    The name of the scaling plan. Names cannot contain vertical bars, colons, or forward slashes.
    scaling_plan_version str
    The version number of the scaling plan. This value is always 1.
    id String
    The provider-assigned unique ID for this managed resource.
    scalingPlanArn String
    The Amazon Resource Name (ARN) of the scaling plan.
    scalingPlanName String
    The name of the scaling plan. Names cannot contain vertical bars, colons, or forward slashes.
    scalingPlanVersion String
    The version number of the scaling plan. This value is always 1.

    Supporting Types

    ScalingPlanApplicationSource, ScalingPlanApplicationSourceArgs

    CloudFormationStackArn string
    The Amazon Resource Name (ARN) of a CloudFormation stack. The stack must contain at least one scalable resource.
    TagFilters List<Pulumi.AwsNative.AutoScalingPlans.Inputs.ScalingPlanTagFilter>
    A set of tag filters (keys and values). Each tag filter specified must contain a key with values as optional. Each scaling plan can include up to 50 keys, and each key can include up to 20 values.
    CloudFormationStackArn string
    The Amazon Resource Name (ARN) of a CloudFormation stack. The stack must contain at least one scalable resource.
    TagFilters []ScalingPlanTagFilter
    A set of tag filters (keys and values). Each tag filter specified must contain a key with values as optional. Each scaling plan can include up to 50 keys, and each key can include up to 20 values.
    cloud_formation_stack_arn string
    The Amazon Resource Name (ARN) of a CloudFormation stack. The stack must contain at least one scalable resource.
    tag_filters list(object)
    A set of tag filters (keys and values). Each tag filter specified must contain a key with values as optional. Each scaling plan can include up to 50 keys, and each key can include up to 20 values.
    cloudFormationStackArn String
    The Amazon Resource Name (ARN) of a CloudFormation stack. The stack must contain at least one scalable resource.
    tagFilters List<ScalingPlanTagFilter>
    A set of tag filters (keys and values). Each tag filter specified must contain a key with values as optional. Each scaling plan can include up to 50 keys, and each key can include up to 20 values.
    cloudFormationStackArn string
    The Amazon Resource Name (ARN) of a CloudFormation stack. The stack must contain at least one scalable resource.
    tagFilters ScalingPlanTagFilter[]
    A set of tag filters (keys and values). Each tag filter specified must contain a key with values as optional. Each scaling plan can include up to 50 keys, and each key can include up to 20 values.
    cloud_formation_stack_arn str
    The Amazon Resource Name (ARN) of a CloudFormation stack. The stack must contain at least one scalable resource.
    tag_filters Sequence[ScalingPlanTagFilter]
    A set of tag filters (keys and values). Each tag filter specified must contain a key with values as optional. Each scaling plan can include up to 50 keys, and each key can include up to 20 values.
    cloudFormationStackArn String
    The Amazon Resource Name (ARN) of a CloudFormation stack. The stack must contain at least one scalable resource.
    tagFilters List<Property Map>
    A set of tag filters (keys and values). Each tag filter specified must contain a key with values as optional. Each scaling plan can include up to 50 keys, and each key can include up to 20 values.

    ScalingPlanCustomizedLoadMetricSpecification, ScalingPlanCustomizedLoadMetricSpecificationArgs

    MetricName string
    The name of the metric.
    Namespace string
    The namespace of the metric.
    Statistic string
    The statistic of the metric.
    Dimensions List<Pulumi.AwsNative.AutoScalingPlans.Inputs.ScalingPlanMetricDimension>
    The dimensions of the metric.
    Unit string
    The unit of the metric.
    MetricName string
    The name of the metric.
    Namespace string
    The namespace of the metric.
    Statistic string
    The statistic of the metric.
    Dimensions []ScalingPlanMetricDimension
    The dimensions of the metric.
    Unit string
    The unit of the metric.
    metric_name string
    The name of the metric.
    namespace string
    The namespace of the metric.
    statistic string
    The statistic of the metric.
    dimensions list(object)
    The dimensions of the metric.
    unit string
    The unit of the metric.
    metricName String
    The name of the metric.
    namespace String
    The namespace of the metric.
    statistic String
    The statistic of the metric.
    dimensions List<ScalingPlanMetricDimension>
    The dimensions of the metric.
    unit String
    The unit of the metric.
    metricName string
    The name of the metric.
    namespace string
    The namespace of the metric.
    statistic string
    The statistic of the metric.
    dimensions ScalingPlanMetricDimension[]
    The dimensions of the metric.
    unit string
    The unit of the metric.
    metric_name str
    The name of the metric.
    namespace str
    The namespace of the metric.
    statistic str
    The statistic of the metric.
    dimensions Sequence[ScalingPlanMetricDimension]
    The dimensions of the metric.
    unit str
    The unit of the metric.
    metricName String
    The name of the metric.
    namespace String
    The namespace of the metric.
    statistic String
    The statistic of the metric.
    dimensions List<Property Map>
    The dimensions of the metric.
    unit String
    The unit of the metric.

    ScalingPlanCustomizedScalingMetricSpecification, ScalingPlanCustomizedScalingMetricSpecificationArgs

    MetricName string
    The name of the metric.
    Namespace string
    The namespace of the metric.
    Statistic string
    The statistic of the metric.
    Dimensions List<Pulumi.AwsNative.AutoScalingPlans.Inputs.ScalingPlanMetricDimension>
    The dimensions of the metric.
    Unit string
    The unit of the metric.
    MetricName string
    The name of the metric.
    Namespace string
    The namespace of the metric.
    Statistic string
    The statistic of the metric.
    Dimensions []ScalingPlanMetricDimension
    The dimensions of the metric.
    Unit string
    The unit of the metric.
    metric_name string
    The name of the metric.
    namespace string
    The namespace of the metric.
    statistic string
    The statistic of the metric.
    dimensions list(object)
    The dimensions of the metric.
    unit string
    The unit of the metric.
    metricName String
    The name of the metric.
    namespace String
    The namespace of the metric.
    statistic String
    The statistic of the metric.
    dimensions List<ScalingPlanMetricDimension>
    The dimensions of the metric.
    unit String
    The unit of the metric.
    metricName string
    The name of the metric.
    namespace string
    The namespace of the metric.
    statistic string
    The statistic of the metric.
    dimensions ScalingPlanMetricDimension[]
    The dimensions of the metric.
    unit string
    The unit of the metric.
    metric_name str
    The name of the metric.
    namespace str
    The namespace of the metric.
    statistic str
    The statistic of the metric.
    dimensions Sequence[ScalingPlanMetricDimension]
    The dimensions of the metric.
    unit str
    The unit of the metric.
    metricName String
    The name of the metric.
    namespace String
    The namespace of the metric.
    statistic String
    The statistic of the metric.
    dimensions List<Property Map>
    The dimensions of the metric.
    unit String
    The unit of the metric.

    ScalingPlanMetricDimension, ScalingPlanMetricDimensionArgs

    Name string
    The name of the dimension.
    Value string
    The value of the dimension.
    Name string
    The name of the dimension.
    Value string
    The value of the dimension.
    name string
    The name of the dimension.
    value string
    The value of the dimension.
    name String
    The name of the dimension.
    value String
    The value of the dimension.
    name string
    The name of the dimension.
    value string
    The value of the dimension.
    name str
    The name of the dimension.
    value str
    The value of the dimension.
    name String
    The name of the dimension.
    value String
    The value of the dimension.

    ScalingPlanPredefinedLoadMetricSpecification, ScalingPlanPredefinedLoadMetricSpecificationArgs

    PredefinedLoadMetricType string
    The metric type.
    ResourceLabel string
    Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBTargetGroupRequestCount and there is a target group for an Application Load Balancer attached to the Auto Scaling group.
    PredefinedLoadMetricType string
    The metric type.
    ResourceLabel string
    Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBTargetGroupRequestCount and there is a target group for an Application Load Balancer attached to the Auto Scaling group.
    predefined_load_metric_type string
    The metric type.
    resource_label string
    Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBTargetGroupRequestCount and there is a target group for an Application Load Balancer attached to the Auto Scaling group.
    predefinedLoadMetricType String
    The metric type.
    resourceLabel String
    Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBTargetGroupRequestCount and there is a target group for an Application Load Balancer attached to the Auto Scaling group.
    predefinedLoadMetricType string
    The metric type.
    resourceLabel string
    Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBTargetGroupRequestCount and there is a target group for an Application Load Balancer attached to the Auto Scaling group.
    predefined_load_metric_type str
    The metric type.
    resource_label str
    Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBTargetGroupRequestCount and there is a target group for an Application Load Balancer attached to the Auto Scaling group.
    predefinedLoadMetricType String
    The metric type.
    resourceLabel String
    Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBTargetGroupRequestCount and there is a target group for an Application Load Balancer attached to the Auto Scaling group.

    ScalingPlanPredefinedScalingMetricSpecification, ScalingPlanPredefinedScalingMetricSpecificationArgs

    PredefinedScalingMetricType string
    The metric type. The ALBRequestCountPerTarget metric type applies only to Auto Scaling groups, Spot Fleet requests, and ECS services.
    ResourceLabel string
    Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBRequestCountPerTarget and there is a target group for an Application Load Balancer attached to the Auto Scaling group, Spot Fleet request, or ECS service.
    PredefinedScalingMetricType string
    The metric type. The ALBRequestCountPerTarget metric type applies only to Auto Scaling groups, Spot Fleet requests, and ECS services.
    ResourceLabel string
    Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBRequestCountPerTarget and there is a target group for an Application Load Balancer attached to the Auto Scaling group, Spot Fleet request, or ECS service.
    predefined_scaling_metric_type string
    The metric type. The ALBRequestCountPerTarget metric type applies only to Auto Scaling groups, Spot Fleet requests, and ECS services.
    resource_label string
    Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBRequestCountPerTarget and there is a target group for an Application Load Balancer attached to the Auto Scaling group, Spot Fleet request, or ECS service.
    predefinedScalingMetricType String
    The metric type. The ALBRequestCountPerTarget metric type applies only to Auto Scaling groups, Spot Fleet requests, and ECS services.
    resourceLabel String
    Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBRequestCountPerTarget and there is a target group for an Application Load Balancer attached to the Auto Scaling group, Spot Fleet request, or ECS service.
    predefinedScalingMetricType string
    The metric type. The ALBRequestCountPerTarget metric type applies only to Auto Scaling groups, Spot Fleet requests, and ECS services.
    resourceLabel string
    Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBRequestCountPerTarget and there is a target group for an Application Load Balancer attached to the Auto Scaling group, Spot Fleet request, or ECS service.
    predefined_scaling_metric_type str
    The metric type. The ALBRequestCountPerTarget metric type applies only to Auto Scaling groups, Spot Fleet requests, and ECS services.
    resource_label str
    Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBRequestCountPerTarget and there is a target group for an Application Load Balancer attached to the Auto Scaling group, Spot Fleet request, or ECS service.
    predefinedScalingMetricType String
    The metric type. The ALBRequestCountPerTarget metric type applies only to Auto Scaling groups, Spot Fleet requests, and ECS services.
    resourceLabel String
    Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBRequestCountPerTarget and there is a target group for an Application Load Balancer attached to the Auto Scaling group, Spot Fleet request, or ECS service.

    ScalingPlanScalingInstruction, ScalingPlanScalingInstructionArgs

    MaxCapacity int
    The maximum capacity of the resource. The exception to this upper limit is if you specify a non-default setting for PredictiveScalingMaxCapacityBehavior.
    MinCapacity int
    The minimum capacity of the resource.
    ResourceId string
    The ID of the resource. This string consists of the resource type and unique identifier.
    ScalableDimension string
    The scalable dimension associated with the resource.
    ServiceNamespace string
    The namespace of the AWS service.
    TargetTrackingConfigurations List<Pulumi.AwsNative.AutoScalingPlans.Inputs.ScalingPlanTargetTrackingConfiguration>
    The target tracking configurations (up to 10). Each of these structures must specify a unique scaling metric and a target value for the metric.
    CustomizedLoadMetricSpecification Pulumi.AwsNative.AutoScalingPlans.Inputs.ScalingPlanCustomizedLoadMetricSpecification
    The customized load metric to use for predictive scaling. This property or a PredefinedLoadMetricSpecification is required when configuring predictive scaling, and cannot be used otherwise.
    DisableDynamicScaling bool
    Controls whether dynamic scaling is disabled. When dynamic scaling is enabled, AWS Auto Scaling creates target tracking scaling policies based on the specified target tracking configurations. The default is enabled (false).
    PredefinedLoadMetricSpecification Pulumi.AwsNative.AutoScalingPlans.Inputs.ScalingPlanPredefinedLoadMetricSpecification
    The predefined load metric to use for predictive scaling. This property or a CustomizedLoadMetricSpecification is required when configuring predictive scaling, and cannot be used otherwise.
    PredictiveScalingMaxCapacityBehavior string
    Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity specified for the resource. The default value is SetForecastCapacityToMaxCapacity.
    PredictiveScalingMaxCapacityBuffer int
    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. The range is 1-100. Required if PredictiveScalingMaxCapacityBehavior is set to SetMaxCapacityAboveForecastCapacity, and cannot be used otherwise.
    PredictiveScalingMode string
    The predictive scaling mode. The default value is ForecastAndScale. Otherwise, AWS Auto Scaling forecasts capacity but does not apply any scheduled scaling actions based on the capacity forecast.
    ScalingPolicyUpdateBehavior string
    Controls whether a resource's externally created scaling policies are deleted and new target tracking scaling policies created. The default value is KeepExternalPolicies. Valid only when configuring dynamic scaling.
    ScheduledActionBufferTime int
    The amount of time, in seconds, to buffer the run time of scheduled scaling actions when scaling out. The value must be less than the forecast interval duration of 3600 seconds (60 minutes). The default is 300 seconds. Valid only when configuring predictive scaling.
    MaxCapacity int
    The maximum capacity of the resource. The exception to this upper limit is if you specify a non-default setting for PredictiveScalingMaxCapacityBehavior.
    MinCapacity int
    The minimum capacity of the resource.
    ResourceId string
    The ID of the resource. This string consists of the resource type and unique identifier.
    ScalableDimension string
    The scalable dimension associated with the resource.
    ServiceNamespace string
    The namespace of the AWS service.
    TargetTrackingConfigurations []ScalingPlanTargetTrackingConfiguration
    The target tracking configurations (up to 10). Each of these structures must specify a unique scaling metric and a target value for the metric.
    CustomizedLoadMetricSpecification ScalingPlanCustomizedLoadMetricSpecification
    The customized load metric to use for predictive scaling. This property or a PredefinedLoadMetricSpecification is required when configuring predictive scaling, and cannot be used otherwise.
    DisableDynamicScaling bool
    Controls whether dynamic scaling is disabled. When dynamic scaling is enabled, AWS Auto Scaling creates target tracking scaling policies based on the specified target tracking configurations. The default is enabled (false).
    PredefinedLoadMetricSpecification ScalingPlanPredefinedLoadMetricSpecification
    The predefined load metric to use for predictive scaling. This property or a CustomizedLoadMetricSpecification is required when configuring predictive scaling, and cannot be used otherwise.
    PredictiveScalingMaxCapacityBehavior string
    Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity specified for the resource. The default value is SetForecastCapacityToMaxCapacity.
    PredictiveScalingMaxCapacityBuffer int
    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. The range is 1-100. Required if PredictiveScalingMaxCapacityBehavior is set to SetMaxCapacityAboveForecastCapacity, and cannot be used otherwise.
    PredictiveScalingMode string
    The predictive scaling mode. The default value is ForecastAndScale. Otherwise, AWS Auto Scaling forecasts capacity but does not apply any scheduled scaling actions based on the capacity forecast.
    ScalingPolicyUpdateBehavior string
    Controls whether a resource's externally created scaling policies are deleted and new target tracking scaling policies created. The default value is KeepExternalPolicies. Valid only when configuring dynamic scaling.
    ScheduledActionBufferTime int
    The amount of time, in seconds, to buffer the run time of scheduled scaling actions when scaling out. The value must be less than the forecast interval duration of 3600 seconds (60 minutes). The default is 300 seconds. Valid only when configuring predictive scaling.
    max_capacity number
    The maximum capacity of the resource. The exception to this upper limit is if you specify a non-default setting for PredictiveScalingMaxCapacityBehavior.
    min_capacity number
    The minimum capacity of the resource.
    resource_id string
    The ID of the resource. This string consists of the resource type and unique identifier.
    scalable_dimension string
    The scalable dimension associated with the resource.
    service_namespace string
    The namespace of the AWS service.
    target_tracking_configurations list(object)
    The target tracking configurations (up to 10). Each of these structures must specify a unique scaling metric and a target value for the metric.
    customized_load_metric_specification object
    The customized load metric to use for predictive scaling. This property or a PredefinedLoadMetricSpecification is required when configuring predictive scaling, and cannot be used otherwise.
    disable_dynamic_scaling bool
    Controls whether dynamic scaling is disabled. When dynamic scaling is enabled, AWS Auto Scaling creates target tracking scaling policies based on the specified target tracking configurations. The default is enabled (false).
    predefined_load_metric_specification object
    The predefined load metric to use for predictive scaling. This property or a CustomizedLoadMetricSpecification is required when configuring predictive scaling, and cannot be used otherwise.
    predictive_scaling_max_capacity_behavior string
    Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity specified for the resource. The default value is SetForecastCapacityToMaxCapacity.
    predictive_scaling_max_capacity_buffer number
    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. The range is 1-100. Required if PredictiveScalingMaxCapacityBehavior is set to SetMaxCapacityAboveForecastCapacity, and cannot be used otherwise.
    predictive_scaling_mode string
    The predictive scaling mode. The default value is ForecastAndScale. Otherwise, AWS Auto Scaling forecasts capacity but does not apply any scheduled scaling actions based on the capacity forecast.
    scaling_policy_update_behavior string
    Controls whether a resource's externally created scaling policies are deleted and new target tracking scaling policies created. The default value is KeepExternalPolicies. Valid only when configuring dynamic scaling.
    scheduled_action_buffer_time number
    The amount of time, in seconds, to buffer the run time of scheduled scaling actions when scaling out. The value must be less than the forecast interval duration of 3600 seconds (60 minutes). The default is 300 seconds. Valid only when configuring predictive scaling.
    maxCapacity Integer
    The maximum capacity of the resource. The exception to this upper limit is if you specify a non-default setting for PredictiveScalingMaxCapacityBehavior.
    minCapacity Integer
    The minimum capacity of the resource.
    resourceId String
    The ID of the resource. This string consists of the resource type and unique identifier.
    scalableDimension String
    The scalable dimension associated with the resource.
    serviceNamespace String
    The namespace of the AWS service.
    targetTrackingConfigurations List<ScalingPlanTargetTrackingConfiguration>
    The target tracking configurations (up to 10). Each of these structures must specify a unique scaling metric and a target value for the metric.
    customizedLoadMetricSpecification ScalingPlanCustomizedLoadMetricSpecification
    The customized load metric to use for predictive scaling. This property or a PredefinedLoadMetricSpecification is required when configuring predictive scaling, and cannot be used otherwise.
    disableDynamicScaling Boolean
    Controls whether dynamic scaling is disabled. When dynamic scaling is enabled, AWS Auto Scaling creates target tracking scaling policies based on the specified target tracking configurations. The default is enabled (false).
    predefinedLoadMetricSpecification ScalingPlanPredefinedLoadMetricSpecification
    The predefined load metric to use for predictive scaling. This property or a CustomizedLoadMetricSpecification is required when configuring predictive scaling, and cannot be used otherwise.
    predictiveScalingMaxCapacityBehavior String
    Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity specified for the resource. The default value is SetForecastCapacityToMaxCapacity.
    predictiveScalingMaxCapacityBuffer Integer
    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. The range is 1-100. Required if PredictiveScalingMaxCapacityBehavior is set to SetMaxCapacityAboveForecastCapacity, and cannot be used otherwise.
    predictiveScalingMode String
    The predictive scaling mode. The default value is ForecastAndScale. Otherwise, AWS Auto Scaling forecasts capacity but does not apply any scheduled scaling actions based on the capacity forecast.
    scalingPolicyUpdateBehavior String
    Controls whether a resource's externally created scaling policies are deleted and new target tracking scaling policies created. The default value is KeepExternalPolicies. Valid only when configuring dynamic scaling.
    scheduledActionBufferTime Integer
    The amount of time, in seconds, to buffer the run time of scheduled scaling actions when scaling out. The value must be less than the forecast interval duration of 3600 seconds (60 minutes). The default is 300 seconds. Valid only when configuring predictive scaling.
    maxCapacity number
    The maximum capacity of the resource. The exception to this upper limit is if you specify a non-default setting for PredictiveScalingMaxCapacityBehavior.
    minCapacity number
    The minimum capacity of the resource.
    resourceId string
    The ID of the resource. This string consists of the resource type and unique identifier.
    scalableDimension string
    The scalable dimension associated with the resource.
    serviceNamespace string
    The namespace of the AWS service.
    targetTrackingConfigurations ScalingPlanTargetTrackingConfiguration[]
    The target tracking configurations (up to 10). Each of these structures must specify a unique scaling metric and a target value for the metric.
    customizedLoadMetricSpecification ScalingPlanCustomizedLoadMetricSpecification
    The customized load metric to use for predictive scaling. This property or a PredefinedLoadMetricSpecification is required when configuring predictive scaling, and cannot be used otherwise.
    disableDynamicScaling boolean
    Controls whether dynamic scaling is disabled. When dynamic scaling is enabled, AWS Auto Scaling creates target tracking scaling policies based on the specified target tracking configurations. The default is enabled (false).
    predefinedLoadMetricSpecification ScalingPlanPredefinedLoadMetricSpecification
    The predefined load metric to use for predictive scaling. This property or a CustomizedLoadMetricSpecification is required when configuring predictive scaling, and cannot be used otherwise.
    predictiveScalingMaxCapacityBehavior string
    Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity specified for the resource. The default value is SetForecastCapacityToMaxCapacity.
    predictiveScalingMaxCapacityBuffer number
    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. The range is 1-100. Required if PredictiveScalingMaxCapacityBehavior is set to SetMaxCapacityAboveForecastCapacity, and cannot be used otherwise.
    predictiveScalingMode string
    The predictive scaling mode. The default value is ForecastAndScale. Otherwise, AWS Auto Scaling forecasts capacity but does not apply any scheduled scaling actions based on the capacity forecast.
    scalingPolicyUpdateBehavior string
    Controls whether a resource's externally created scaling policies are deleted and new target tracking scaling policies created. The default value is KeepExternalPolicies. Valid only when configuring dynamic scaling.
    scheduledActionBufferTime number
    The amount of time, in seconds, to buffer the run time of scheduled scaling actions when scaling out. The value must be less than the forecast interval duration of 3600 seconds (60 minutes). The default is 300 seconds. Valid only when configuring predictive scaling.
    max_capacity int
    The maximum capacity of the resource. The exception to this upper limit is if you specify a non-default setting for PredictiveScalingMaxCapacityBehavior.
    min_capacity int
    The minimum capacity of the resource.
    resource_id str
    The ID of the resource. This string consists of the resource type and unique identifier.
    scalable_dimension str
    The scalable dimension associated with the resource.
    service_namespace str
    The namespace of the AWS service.
    target_tracking_configurations Sequence[ScalingPlanTargetTrackingConfiguration]
    The target tracking configurations (up to 10). Each of these structures must specify a unique scaling metric and a target value for the metric.
    customized_load_metric_specification ScalingPlanCustomizedLoadMetricSpecification
    The customized load metric to use for predictive scaling. This property or a PredefinedLoadMetricSpecification is required when configuring predictive scaling, and cannot be used otherwise.
    disable_dynamic_scaling bool
    Controls whether dynamic scaling is disabled. When dynamic scaling is enabled, AWS Auto Scaling creates target tracking scaling policies based on the specified target tracking configurations. The default is enabled (false).
    predefined_load_metric_specification ScalingPlanPredefinedLoadMetricSpecification
    The predefined load metric to use for predictive scaling. This property or a CustomizedLoadMetricSpecification is required when configuring predictive scaling, and cannot be used otherwise.
    predictive_scaling_max_capacity_behavior str
    Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity specified for the resource. The default value is SetForecastCapacityToMaxCapacity.
    predictive_scaling_max_capacity_buffer int
    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. The range is 1-100. Required if PredictiveScalingMaxCapacityBehavior is set to SetMaxCapacityAboveForecastCapacity, and cannot be used otherwise.
    predictive_scaling_mode str
    The predictive scaling mode. The default value is ForecastAndScale. Otherwise, AWS Auto Scaling forecasts capacity but does not apply any scheduled scaling actions based on the capacity forecast.
    scaling_policy_update_behavior str
    Controls whether a resource's externally created scaling policies are deleted and new target tracking scaling policies created. The default value is KeepExternalPolicies. Valid only when configuring dynamic scaling.
    scheduled_action_buffer_time int
    The amount of time, in seconds, to buffer the run time of scheduled scaling actions when scaling out. The value must be less than the forecast interval duration of 3600 seconds (60 minutes). The default is 300 seconds. Valid only when configuring predictive scaling.
    maxCapacity Number
    The maximum capacity of the resource. The exception to this upper limit is if you specify a non-default setting for PredictiveScalingMaxCapacityBehavior.
    minCapacity Number
    The minimum capacity of the resource.
    resourceId String
    The ID of the resource. This string consists of the resource type and unique identifier.
    scalableDimension String
    The scalable dimension associated with the resource.
    serviceNamespace String
    The namespace of the AWS service.
    targetTrackingConfigurations List<Property Map>
    The target tracking configurations (up to 10). Each of these structures must specify a unique scaling metric and a target value for the metric.
    customizedLoadMetricSpecification Property Map
    The customized load metric to use for predictive scaling. This property or a PredefinedLoadMetricSpecification is required when configuring predictive scaling, and cannot be used otherwise.
    disableDynamicScaling Boolean
    Controls whether dynamic scaling is disabled. When dynamic scaling is enabled, AWS Auto Scaling creates target tracking scaling policies based on the specified target tracking configurations. The default is enabled (false).
    predefinedLoadMetricSpecification Property Map
    The predefined load metric to use for predictive scaling. This property or a CustomizedLoadMetricSpecification is required when configuring predictive scaling, and cannot be used otherwise.
    predictiveScalingMaxCapacityBehavior String
    Defines the behavior that should be applied if the forecast capacity approaches or exceeds the maximum capacity specified for the resource. The default value is SetForecastCapacityToMaxCapacity.
    predictiveScalingMaxCapacityBuffer Number
    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. The range is 1-100. Required if PredictiveScalingMaxCapacityBehavior is set to SetMaxCapacityAboveForecastCapacity, and cannot be used otherwise.
    predictiveScalingMode String
    The predictive scaling mode. The default value is ForecastAndScale. Otherwise, AWS Auto Scaling forecasts capacity but does not apply any scheduled scaling actions based on the capacity forecast.
    scalingPolicyUpdateBehavior String
    Controls whether a resource's externally created scaling policies are deleted and new target tracking scaling policies created. The default value is KeepExternalPolicies. Valid only when configuring dynamic scaling.
    scheduledActionBufferTime Number
    The amount of time, in seconds, to buffer the run time of scheduled scaling actions when scaling out. The value must be less than the forecast interval duration of 3600 seconds (60 minutes). The default is 300 seconds. Valid only when configuring predictive scaling.

    ScalingPlanTagFilter, ScalingPlanTagFilterArgs

    Key string
    The tag key.
    Values List<string>
    The tag values (0 to 20).
    Key string
    The tag key.
    Values []string
    The tag values (0 to 20).
    key string
    The tag key.
    values list(string)
    The tag values (0 to 20).
    key String
    The tag key.
    values List<String>
    The tag values (0 to 20).
    key string
    The tag key.
    values string[]
    The tag values (0 to 20).
    key str
    The tag key.
    values Sequence[str]
    The tag values (0 to 20).
    key String
    The tag key.
    values List<String>
    The tag values (0 to 20).

    ScalingPlanTargetTrackingConfiguration, ScalingPlanTargetTrackingConfigurationArgs

    TargetValue double
    The target value for the metric.
    CustomizedScalingMetricSpecification Pulumi.AwsNative.AutoScalingPlans.Inputs.ScalingPlanCustomizedScalingMetricSpecification
    A customized metric. You can specify either a predefined metric or a customized metric.
    DisableScaleIn bool
    Indicates whether scale in by the target tracking scaling policy is disabled. If the value is true, scale in is disabled and the target tracking scaling policy doesn't remove capacity from the scalable resource. Otherwise, scale in is enabled and the target tracking scaling policy can remove capacity from the scalable resource. The default value is false.
    EstimatedInstanceWarmup int
    The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. This value is used only if the resource is an Auto Scaling group.
    PredefinedScalingMetricSpecification Pulumi.AwsNative.AutoScalingPlans.Inputs.ScalingPlanPredefinedScalingMetricSpecification
    A predefined metric. You can specify either a predefined metric or a customized metric.
    ScaleInCooldown int
    The amount of time, in seconds, after a scale-in activity completes before another scale in activity can start. This value is not used if the scalable resource is an Auto Scaling group.
    ScaleOutCooldown int
    The amount of time, in seconds, after a scale-out activity completes before another scale-out activity can start. This value is not used if the scalable resource is an Auto Scaling group.
    TargetValue float64
    The target value for the metric.
    CustomizedScalingMetricSpecification ScalingPlanCustomizedScalingMetricSpecification
    A customized metric. You can specify either a predefined metric or a customized metric.
    DisableScaleIn bool
    Indicates whether scale in by the target tracking scaling policy is disabled. If the value is true, scale in is disabled and the target tracking scaling policy doesn't remove capacity from the scalable resource. Otherwise, scale in is enabled and the target tracking scaling policy can remove capacity from the scalable resource. The default value is false.
    EstimatedInstanceWarmup int
    The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. This value is used only if the resource is an Auto Scaling group.
    PredefinedScalingMetricSpecification ScalingPlanPredefinedScalingMetricSpecification
    A predefined metric. You can specify either a predefined metric or a customized metric.
    ScaleInCooldown int
    The amount of time, in seconds, after a scale-in activity completes before another scale in activity can start. This value is not used if the scalable resource is an Auto Scaling group.
    ScaleOutCooldown int
    The amount of time, in seconds, after a scale-out activity completes before another scale-out activity can start. This value is not used if the scalable resource is an Auto Scaling group.
    target_value number
    The target value for the metric.
    customized_scaling_metric_specification object
    A customized metric. You can specify either a predefined metric or a customized metric.
    disable_scale_in bool
    Indicates whether scale in by the target tracking scaling policy is disabled. If the value is true, scale in is disabled and the target tracking scaling policy doesn't remove capacity from the scalable resource. Otherwise, scale in is enabled and the target tracking scaling policy can remove capacity from the scalable resource. The default value is false.
    estimated_instance_warmup number
    The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. This value is used only if the resource is an Auto Scaling group.
    predefined_scaling_metric_specification object
    A predefined metric. You can specify either a predefined metric or a customized metric.
    scale_in_cooldown number
    The amount of time, in seconds, after a scale-in activity completes before another scale in activity can start. This value is not used if the scalable resource is an Auto Scaling group.
    scale_out_cooldown number
    The amount of time, in seconds, after a scale-out activity completes before another scale-out activity can start. This value is not used if the scalable resource is an Auto Scaling group.
    targetValue Double
    The target value for the metric.
    customizedScalingMetricSpecification ScalingPlanCustomizedScalingMetricSpecification
    A customized metric. You can specify either a predefined metric or a customized metric.
    disableScaleIn Boolean
    Indicates whether scale in by the target tracking scaling policy is disabled. If the value is true, scale in is disabled and the target tracking scaling policy doesn't remove capacity from the scalable resource. Otherwise, scale in is enabled and the target tracking scaling policy can remove capacity from the scalable resource. The default value is false.
    estimatedInstanceWarmup Integer
    The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. This value is used only if the resource is an Auto Scaling group.
    predefinedScalingMetricSpecification ScalingPlanPredefinedScalingMetricSpecification
    A predefined metric. You can specify either a predefined metric or a customized metric.
    scaleInCooldown Integer
    The amount of time, in seconds, after a scale-in activity completes before another scale in activity can start. This value is not used if the scalable resource is an Auto Scaling group.
    scaleOutCooldown Integer
    The amount of time, in seconds, after a scale-out activity completes before another scale-out activity can start. This value is not used if the scalable resource is an Auto Scaling group.
    targetValue number
    The target value for the metric.
    customizedScalingMetricSpecification ScalingPlanCustomizedScalingMetricSpecification
    A customized metric. You can specify either a predefined metric or a customized metric.
    disableScaleIn boolean
    Indicates whether scale in by the target tracking scaling policy is disabled. If the value is true, scale in is disabled and the target tracking scaling policy doesn't remove capacity from the scalable resource. Otherwise, scale in is enabled and the target tracking scaling policy can remove capacity from the scalable resource. The default value is false.
    estimatedInstanceWarmup number
    The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. This value is used only if the resource is an Auto Scaling group.
    predefinedScalingMetricSpecification ScalingPlanPredefinedScalingMetricSpecification
    A predefined metric. You can specify either a predefined metric or a customized metric.
    scaleInCooldown number
    The amount of time, in seconds, after a scale-in activity completes before another scale in activity can start. This value is not used if the scalable resource is an Auto Scaling group.
    scaleOutCooldown number
    The amount of time, in seconds, after a scale-out activity completes before another scale-out activity can start. This value is not used if the scalable resource is an Auto Scaling group.
    target_value float
    The target value for the metric.
    customized_scaling_metric_specification ScalingPlanCustomizedScalingMetricSpecification
    A customized metric. You can specify either a predefined metric or a customized metric.
    disable_scale_in bool
    Indicates whether scale in by the target tracking scaling policy is disabled. If the value is true, scale in is disabled and the target tracking scaling policy doesn't remove capacity from the scalable resource. Otherwise, scale in is enabled and the target tracking scaling policy can remove capacity from the scalable resource. The default value is false.
    estimated_instance_warmup int
    The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. This value is used only if the resource is an Auto Scaling group.
    predefined_scaling_metric_specification ScalingPlanPredefinedScalingMetricSpecification
    A predefined metric. You can specify either a predefined metric or a customized metric.
    scale_in_cooldown int
    The amount of time, in seconds, after a scale-in activity completes before another scale in activity can start. This value is not used if the scalable resource is an Auto Scaling group.
    scale_out_cooldown int
    The amount of time, in seconds, after a scale-out activity completes before another scale-out activity can start. This value is not used if the scalable resource is an Auto Scaling group.
    targetValue Number
    The target value for the metric.
    customizedScalingMetricSpecification Property Map
    A customized metric. You can specify either a predefined metric or a customized metric.
    disableScaleIn Boolean
    Indicates whether scale in by the target tracking scaling policy is disabled. If the value is true, scale in is disabled and the target tracking scaling policy doesn't remove capacity from the scalable resource. Otherwise, scale in is enabled and the target tracking scaling policy can remove capacity from the scalable resource. The default value is false.
    estimatedInstanceWarmup Number
    The estimated time, in seconds, until a newly launched instance can contribute to the CloudWatch metrics. This value is used only if the resource is an Auto Scaling group.
    predefinedScalingMetricSpecification Property Map
    A predefined metric. You can specify either a predefined metric or a customized metric.
    scaleInCooldown Number
    The amount of time, in seconds, after a scale-in activity completes before another scale in activity can start. This value is not used if the scalable resource is an Auto Scaling group.
    scaleOutCooldown Number
    The amount of time, in seconds, after a scale-out activity completes before another scale-out activity can start. This value is not used if the scalable resource is an Auto Scaling group.

    Package Details

    Repository
    AWS Native pulumi/pulumi-aws-native
    License
    Apache-2.0
    aws-native logo aws-native logo AWS Cloud Control

    We recommend new projects start with resources from the AWS provider.

    Viewing docs for AWS Cloud Control v1.85.0
    published on Monday, Nov 2, 2026 by Pulumi

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial