1. Packages
  2. Alibaba Cloud
  3. API Docs
  4. ess
  5. ScalingConfiguration
Alibaba Cloud v3.57.0 published on Saturday, Jun 15, 2024 by Pulumi

alicloud.ess.ScalingConfiguration

Explore with Pulumi AI

alicloud logo
Alibaba Cloud v3.57.0 published on Saturday, Jun 15, 2024 by Pulumi

    Provides a ESS scaling configuration resource.

    NOTE: Several instance types have outdated in some regions and availability zones, such as ecs.t1.*, ecs.s2.*, ecs.n1.* and so on. If you want to keep them, you should set is_outdated to true. For more about the upgraded instance type, refer to alicloud.ecs.getInstanceTypes datasource.

    NOTE: Available since v1.39.0.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as alicloud from "@pulumi/alicloud";
    import * as random from "@pulumi/random";
    
    const config = new pulumi.Config();
    const name = config.get("name") || "terraform-example";
    const defaultInteger = new random.index.Integer("default", {
        min: 10000,
        max: 99999,
    });
    const myName = `${name}-${defaultInteger.result}`;
    const default = alicloud.getZones({
        availableDiskCategory: "cloud_efficiency",
        availableResourceCreation: "VSwitch",
    });
    const defaultGetInstanceTypes = _default.then(_default => alicloud.ecs.getInstanceTypes({
        availabilityZone: _default.zones?.[0]?.id,
        cpuCoreCount: 2,
        memorySize: 4,
    }));
    const defaultGetImages = alicloud.ecs.getImages({
        nameRegex: "^ubuntu_18.*64",
        mostRecent: true,
        owners: "system",
    });
    const defaultNetwork = new alicloud.vpc.Network("default", {
        vpcName: myName,
        cidrBlock: "172.16.0.0/16",
    });
    const defaultSwitch = new alicloud.vpc.Switch("default", {
        vpcId: defaultNetwork.id,
        cidrBlock: "172.16.0.0/24",
        zoneId: _default.then(_default => _default.zones?.[0]?.id),
        vswitchName: myName,
    });
    const defaultSecurityGroup = new alicloud.ecs.SecurityGroup("default", {
        name: myName,
        vpcId: defaultNetwork.id,
    });
    const defaultSecurityGroupRule = new alicloud.ecs.SecurityGroupRule("default", {
        type: "ingress",
        ipProtocol: "tcp",
        nicType: "intranet",
        policy: "accept",
        portRange: "22/22",
        priority: 1,
        securityGroupId: defaultSecurityGroup.id,
        cidrIp: "172.16.0.0/24",
    });
    const defaultScalingGroup = new alicloud.ess.ScalingGroup("default", {
        minSize: 1,
        maxSize: 1,
        scalingGroupName: myName,
        removalPolicies: [
            "OldestInstance",
            "NewestInstance",
        ],
        vswitchIds: [defaultSwitch.id],
    });
    const defaultScalingConfiguration = new alicloud.ess.ScalingConfiguration("default", {
        scalingGroupId: defaultScalingGroup.id,
        imageId: defaultGetImages.then(defaultGetImages => defaultGetImages.images?.[0]?.id),
        instanceType: defaultGetInstanceTypes.then(defaultGetInstanceTypes => defaultGetInstanceTypes.instanceTypes?.[0]?.id),
        securityGroupId: defaultSecurityGroup.id,
        forceDelete: true,
        active: true,
    });
    
    import pulumi
    import pulumi_alicloud as alicloud
    import pulumi_random as random
    
    config = pulumi.Config()
    name = config.get("name")
    if name is None:
        name = "terraform-example"
    default_integer = random.index.Integer("default",
        min=10000,
        max=99999)
    my_name = f"{name}-{default_integer['result']}"
    default = alicloud.get_zones(available_disk_category="cloud_efficiency",
        available_resource_creation="VSwitch")
    default_get_instance_types = alicloud.ecs.get_instance_types(availability_zone=default.zones[0].id,
        cpu_core_count=2,
        memory_size=4)
    default_get_images = alicloud.ecs.get_images(name_regex="^ubuntu_18.*64",
        most_recent=True,
        owners="system")
    default_network = alicloud.vpc.Network("default",
        vpc_name=my_name,
        cidr_block="172.16.0.0/16")
    default_switch = alicloud.vpc.Switch("default",
        vpc_id=default_network.id,
        cidr_block="172.16.0.0/24",
        zone_id=default.zones[0].id,
        vswitch_name=my_name)
    default_security_group = alicloud.ecs.SecurityGroup("default",
        name=my_name,
        vpc_id=default_network.id)
    default_security_group_rule = alicloud.ecs.SecurityGroupRule("default",
        type="ingress",
        ip_protocol="tcp",
        nic_type="intranet",
        policy="accept",
        port_range="22/22",
        priority=1,
        security_group_id=default_security_group.id,
        cidr_ip="172.16.0.0/24")
    default_scaling_group = alicloud.ess.ScalingGroup("default",
        min_size=1,
        max_size=1,
        scaling_group_name=my_name,
        removal_policies=[
            "OldestInstance",
            "NewestInstance",
        ],
        vswitch_ids=[default_switch.id])
    default_scaling_configuration = alicloud.ess.ScalingConfiguration("default",
        scaling_group_id=default_scaling_group.id,
        image_id=default_get_images.images[0].id,
        instance_type=default_get_instance_types.instance_types[0].id,
        security_group_id=default_security_group.id,
        force_delete=True,
        active=True)
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ess"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
    	"github.com/pulumi/pulumi-random/sdk/v4/go/random"
    	"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, "")
    		name := "terraform-example"
    		if param := cfg.Get("name"); param != "" {
    			name = param
    		}
    		defaultInteger, err := random.NewInteger(ctx, "default", &random.IntegerArgs{
    			Min: 10000,
    			Max: 99999,
    		})
    		if err != nil {
    			return err
    		}
    		myName := fmt.Sprintf("%v-%v", name, defaultInteger.Result)
    		_default, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
    			AvailableDiskCategory:     pulumi.StringRef("cloud_efficiency"),
    			AvailableResourceCreation: pulumi.StringRef("VSwitch"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		defaultGetInstanceTypes, err := ecs.GetInstanceTypes(ctx, &ecs.GetInstanceTypesArgs{
    			AvailabilityZone: pulumi.StringRef(_default.Zones[0].Id),
    			CpuCoreCount:     pulumi.IntRef(2),
    			MemorySize:       pulumi.Float64Ref(4),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		defaultGetImages, err := ecs.GetImages(ctx, &ecs.GetImagesArgs{
    			NameRegex:  pulumi.StringRef("^ubuntu_18.*64"),
    			MostRecent: pulumi.BoolRef(true),
    			Owners:     pulumi.StringRef("system"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
    			VpcName:   pulumi.String(myName),
    			CidrBlock: pulumi.String("172.16.0.0/16"),
    		})
    		if err != nil {
    			return err
    		}
    		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
    			VpcId:       defaultNetwork.ID(),
    			CidrBlock:   pulumi.String("172.16.0.0/24"),
    			ZoneId:      pulumi.String(_default.Zones[0].Id),
    			VswitchName: pulumi.String(myName),
    		})
    		if err != nil {
    			return err
    		}
    		defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "default", &ecs.SecurityGroupArgs{
    			Name:  pulumi.String(myName),
    			VpcId: defaultNetwork.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = ecs.NewSecurityGroupRule(ctx, "default", &ecs.SecurityGroupRuleArgs{
    			Type:            pulumi.String("ingress"),
    			IpProtocol:      pulumi.String("tcp"),
    			NicType:         pulumi.String("intranet"),
    			Policy:          pulumi.String("accept"),
    			PortRange:       pulumi.String("22/22"),
    			Priority:        pulumi.Int(1),
    			SecurityGroupId: defaultSecurityGroup.ID(),
    			CidrIp:          pulumi.String("172.16.0.0/24"),
    		})
    		if err != nil {
    			return err
    		}
    		defaultScalingGroup, err := ess.NewScalingGroup(ctx, "default", &ess.ScalingGroupArgs{
    			MinSize:          pulumi.Int(1),
    			MaxSize:          pulumi.Int(1),
    			ScalingGroupName: pulumi.String(myName),
    			RemovalPolicies: pulumi.StringArray{
    				pulumi.String("OldestInstance"),
    				pulumi.String("NewestInstance"),
    			},
    			VswitchIds: pulumi.StringArray{
    				defaultSwitch.ID(),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = ess.NewScalingConfiguration(ctx, "default", &ess.ScalingConfigurationArgs{
    			ScalingGroupId:  defaultScalingGroup.ID(),
    			ImageId:         pulumi.String(defaultGetImages.Images[0].Id),
    			InstanceType:    pulumi.String(defaultGetInstanceTypes.InstanceTypes[0].Id),
    			SecurityGroupId: defaultSecurityGroup.ID(),
    			ForceDelete:     pulumi.Bool(true),
    			Active:          pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AliCloud = Pulumi.AliCloud;
    using Random = Pulumi.Random;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        var name = config.Get("name") ?? "terraform-example";
        var defaultInteger = new Random.Index.Integer("default", new()
        {
            Min = 10000,
            Max = 99999,
        });
    
        var myName = $"{name}-{defaultInteger.Result}";
    
        var @default = AliCloud.GetZones.Invoke(new()
        {
            AvailableDiskCategory = "cloud_efficiency",
            AvailableResourceCreation = "VSwitch",
        });
    
        var defaultGetInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()
        {
            AvailabilityZone = @default.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
            CpuCoreCount = 2,
            MemorySize = 4,
        });
    
        var defaultGetImages = AliCloud.Ecs.GetImages.Invoke(new()
        {
            NameRegex = "^ubuntu_18.*64",
            MostRecent = true,
            Owners = "system",
        });
    
        var defaultNetwork = new AliCloud.Vpc.Network("default", new()
        {
            VpcName = myName,
            CidrBlock = "172.16.0.0/16",
        });
    
        var defaultSwitch = new AliCloud.Vpc.Switch("default", new()
        {
            VpcId = defaultNetwork.Id,
            CidrBlock = "172.16.0.0/24",
            ZoneId = @default.Apply(@default => @default.Apply(getZonesResult => getZonesResult.Zones[0]?.Id)),
            VswitchName = myName,
        });
    
        var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup("default", new()
        {
            Name = myName,
            VpcId = defaultNetwork.Id,
        });
    
        var defaultSecurityGroupRule = new AliCloud.Ecs.SecurityGroupRule("default", new()
        {
            Type = "ingress",
            IpProtocol = "tcp",
            NicType = "intranet",
            Policy = "accept",
            PortRange = "22/22",
            Priority = 1,
            SecurityGroupId = defaultSecurityGroup.Id,
            CidrIp = "172.16.0.0/24",
        });
    
        var defaultScalingGroup = new AliCloud.Ess.ScalingGroup("default", new()
        {
            MinSize = 1,
            MaxSize = 1,
            ScalingGroupName = myName,
            RemovalPolicies = new[]
            {
                "OldestInstance",
                "NewestInstance",
            },
            VswitchIds = new[]
            {
                defaultSwitch.Id,
            },
        });
    
        var defaultScalingConfiguration = new AliCloud.Ess.ScalingConfiguration("default", new()
        {
            ScalingGroupId = defaultScalingGroup.Id,
            ImageId = defaultGetImages.Apply(getImagesResult => getImagesResult.Images[0]?.Id),
            InstanceType = defaultGetInstanceTypes.Apply(getInstanceTypesResult => getInstanceTypesResult.InstanceTypes[0]?.Id),
            SecurityGroupId = defaultSecurityGroup.Id,
            ForceDelete = true,
            Active = true,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.random.integer;
    import com.pulumi.random.IntegerArgs;
    import com.pulumi.alicloud.AlicloudFunctions;
    import com.pulumi.alicloud.inputs.GetZonesArgs;
    import com.pulumi.alicloud.ecs.EcsFunctions;
    import com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;
    import com.pulumi.alicloud.ecs.inputs.GetImagesArgs;
    import com.pulumi.alicloud.vpc.Network;
    import com.pulumi.alicloud.vpc.NetworkArgs;
    import com.pulumi.alicloud.vpc.Switch;
    import com.pulumi.alicloud.vpc.SwitchArgs;
    import com.pulumi.alicloud.ecs.SecurityGroup;
    import com.pulumi.alicloud.ecs.SecurityGroupArgs;
    import com.pulumi.alicloud.ecs.SecurityGroupRule;
    import com.pulumi.alicloud.ecs.SecurityGroupRuleArgs;
    import com.pulumi.alicloud.ess.ScalingGroup;
    import com.pulumi.alicloud.ess.ScalingGroupArgs;
    import com.pulumi.alicloud.ess.ScalingConfiguration;
    import com.pulumi.alicloud.ess.ScalingConfigurationArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var config = ctx.config();
            final var name = config.get("name").orElse("terraform-example");
            var defaultInteger = new Integer("defaultInteger", IntegerArgs.builder()
                .min(10000)
                .max(99999)
                .build());
    
            final var myName = String.format("%s-%s", name,defaultInteger.result());
    
            final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()
                .availableDiskCategory("cloud_efficiency")
                .availableResourceCreation("VSwitch")
                .build());
    
            final var defaultGetInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()
                .availabilityZone(default_.zones()[0].id())
                .cpuCoreCount(2)
                .memorySize(4)
                .build());
    
            final var defaultGetImages = EcsFunctions.getImages(GetImagesArgs.builder()
                .nameRegex("^ubuntu_18.*64")
                .mostRecent(true)
                .owners("system")
                .build());
    
            var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()
                .vpcName(myName)
                .cidrBlock("172.16.0.0/16")
                .build());
    
            var defaultSwitch = new Switch("defaultSwitch", SwitchArgs.builder()
                .vpcId(defaultNetwork.id())
                .cidrBlock("172.16.0.0/24")
                .zoneId(default_.zones()[0].id())
                .vswitchName(myName)
                .build());
    
            var defaultSecurityGroup = new SecurityGroup("defaultSecurityGroup", SecurityGroupArgs.builder()
                .name(myName)
                .vpcId(defaultNetwork.id())
                .build());
    
            var defaultSecurityGroupRule = new SecurityGroupRule("defaultSecurityGroupRule", SecurityGroupRuleArgs.builder()
                .type("ingress")
                .ipProtocol("tcp")
                .nicType("intranet")
                .policy("accept")
                .portRange("22/22")
                .priority(1)
                .securityGroupId(defaultSecurityGroup.id())
                .cidrIp("172.16.0.0/24")
                .build());
    
            var defaultScalingGroup = new ScalingGroup("defaultScalingGroup", ScalingGroupArgs.builder()
                .minSize(1)
                .maxSize(1)
                .scalingGroupName(myName)
                .removalPolicies(            
                    "OldestInstance",
                    "NewestInstance")
                .vswitchIds(defaultSwitch.id())
                .build());
    
            var defaultScalingConfiguration = new ScalingConfiguration("defaultScalingConfiguration", ScalingConfigurationArgs.builder()
                .scalingGroupId(defaultScalingGroup.id())
                .imageId(defaultGetImages.applyValue(getImagesResult -> getImagesResult.images()[0].id()))
                .instanceType(defaultGetInstanceTypes.applyValue(getInstanceTypesResult -> getInstanceTypesResult.instanceTypes()[0].id()))
                .securityGroupId(defaultSecurityGroup.id())
                .forceDelete(true)
                .active(true)
                .build());
    
        }
    }
    
    configuration:
      name:
        type: string
        default: terraform-example
    resources:
      defaultInteger:
        type: random:integer
        name: default
        properties:
          min: 10000
          max: 99999
      defaultNetwork:
        type: alicloud:vpc:Network
        name: default
        properties:
          vpcName: ${myName}
          cidrBlock: 172.16.0.0/16
      defaultSwitch:
        type: alicloud:vpc:Switch
        name: default
        properties:
          vpcId: ${defaultNetwork.id}
          cidrBlock: 172.16.0.0/24
          zoneId: ${default.zones[0].id}
          vswitchName: ${myName}
      defaultSecurityGroup:
        type: alicloud:ecs:SecurityGroup
        name: default
        properties:
          name: ${myName}
          vpcId: ${defaultNetwork.id}
      defaultSecurityGroupRule:
        type: alicloud:ecs:SecurityGroupRule
        name: default
        properties:
          type: ingress
          ipProtocol: tcp
          nicType: intranet
          policy: accept
          portRange: 22/22
          priority: 1
          securityGroupId: ${defaultSecurityGroup.id}
          cidrIp: 172.16.0.0/24
      defaultScalingGroup:
        type: alicloud:ess:ScalingGroup
        name: default
        properties:
          minSize: 1
          maxSize: 1
          scalingGroupName: ${myName}
          removalPolicies:
            - OldestInstance
            - NewestInstance
          vswitchIds:
            - ${defaultSwitch.id}
      defaultScalingConfiguration:
        type: alicloud:ess:ScalingConfiguration
        name: default
        properties:
          scalingGroupId: ${defaultScalingGroup.id}
          imageId: ${defaultGetImages.images[0].id}
          instanceType: ${defaultGetInstanceTypes.instanceTypes[0].id}
          securityGroupId: ${defaultSecurityGroup.id}
          forceDelete: true
          active: true
    variables:
      myName: ${name}-${defaultInteger.result}
      default:
        fn::invoke:
          Function: alicloud:getZones
          Arguments:
            availableDiskCategory: cloud_efficiency
            availableResourceCreation: VSwitch
      defaultGetInstanceTypes:
        fn::invoke:
          Function: alicloud:ecs:getInstanceTypes
          Arguments:
            availabilityZone: ${default.zones[0].id}
            cpuCoreCount: 2
            memorySize: 4
      defaultGetImages:
        fn::invoke:
          Function: alicloud:ecs:getImages
          Arguments:
            nameRegex: ^ubuntu_18.*64
            mostRecent: true
            owners: system
    

    Module Support

    You can use to the existing autoscaling module to create a configuration, scaling group and lifecycle hook one-click.

    Create ScalingConfiguration Resource

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

    Constructor syntax

    new ScalingConfiguration(name: string, args: ScalingConfigurationArgs, opts?: CustomResourceOptions);
    @overload
    def ScalingConfiguration(resource_name: str,
                             args: ScalingConfigurationArgs,
                             opts: Optional[ResourceOptions] = None)
    
    @overload
    def ScalingConfiguration(resource_name: str,
                             opts: Optional[ResourceOptions] = None,
                             scaling_group_id: Optional[str] = None,
                             kms_encrypted_password: Optional[str] = None,
                             instance_ids: Optional[Sequence[str]] = None,
                             password: Optional[str] = None,
                             force_delete: Optional[bool] = None,
                             host_name: Optional[str] = None,
                             image_id: Optional[str] = None,
                             image_name: Optional[str] = None,
                             override: Optional[bool] = None,
                             instance_name: Optional[str] = None,
                             instance_pattern_infos: Optional[Sequence[ScalingConfigurationInstancePatternInfoArgs]] = None,
                             instance_type: Optional[str] = None,
                             instance_type_overrides: Optional[Sequence[ScalingConfigurationInstanceTypeOverrideArgs]] = None,
                             kms_encryption_context: Optional[Mapping[str, Any]] = None,
                             internet_charge_type: Optional[str] = None,
                             internet_max_bandwidth_in: Optional[int] = None,
                             internet_max_bandwidth_out: Optional[int] = None,
                             io_optimized: Optional[str] = None,
                             is_outdated: Optional[bool] = None,
                             key_name: Optional[str] = None,
                             active: Optional[bool] = None,
                             instance_types: Optional[Sequence[str]] = None,
                             data_disks: Optional[Sequence[ScalingConfigurationDataDiskArgs]] = None,
                             enable: Optional[bool] = None,
                             password_inherit: Optional[bool] = None,
                             resource_group_id: Optional[str] = None,
                             role_name: Optional[str] = None,
                             scaling_configuration_name: Optional[str] = None,
                             credit_specification: Optional[str] = None,
                             security_group_id: Optional[str] = None,
                             security_group_ids: Optional[Sequence[str]] = None,
                             spot_price_limits: Optional[Sequence[ScalingConfigurationSpotPriceLimitArgs]] = None,
                             spot_strategy: Optional[str] = None,
                             substitute: Optional[str] = None,
                             system_disk_auto_snapshot_policy_id: Optional[str] = None,
                             system_disk_category: Optional[str] = None,
                             system_disk_description: Optional[str] = None,
                             system_disk_encrypted: Optional[bool] = None,
                             system_disk_name: Optional[str] = None,
                             system_disk_performance_level: Optional[str] = None,
                             system_disk_size: Optional[int] = None,
                             tags: Optional[Mapping[str, Any]] = None,
                             user_data: Optional[str] = None)
    func NewScalingConfiguration(ctx *Context, name string, args ScalingConfigurationArgs, opts ...ResourceOption) (*ScalingConfiguration, error)
    public ScalingConfiguration(string name, ScalingConfigurationArgs args, CustomResourceOptions? opts = null)
    public ScalingConfiguration(String name, ScalingConfigurationArgs args)
    public ScalingConfiguration(String name, ScalingConfigurationArgs args, CustomResourceOptions options)
    
    type: alicloud:ess:ScalingConfiguration
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args ScalingConfigurationArgs
    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 ScalingConfigurationArgs
    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 ScalingConfigurationArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ScalingConfigurationArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ScalingConfigurationArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

    The following reference example uses placeholder values for all input properties.

    var scalingConfigurationResource = new AliCloud.Ess.ScalingConfiguration("scalingConfigurationResource", new()
    {
        ScalingGroupId = "string",
        KmsEncryptedPassword = "string",
        Password = "string",
        ForceDelete = false,
        HostName = "string",
        ImageId = "string",
        ImageName = "string",
        Override = false,
        InstanceName = "string",
        InstancePatternInfos = new[]
        {
            new AliCloud.Ess.Inputs.ScalingConfigurationInstancePatternInfoArgs
            {
                Architectures = new[]
                {
                    "string",
                },
                BurstablePerformance = "string",
                Cores = 0,
                ExcludedInstanceTypes = new[]
                {
                    "string",
                },
                InstanceFamilyLevel = "string",
                MaxPrice = 0,
                Memory = 0,
            },
        },
        InstanceType = "string",
        InstanceTypeOverrides = new[]
        {
            new AliCloud.Ess.Inputs.ScalingConfigurationInstanceTypeOverrideArgs
            {
                InstanceType = "string",
                WeightedCapacity = 0,
            },
        },
        KmsEncryptionContext = 
        {
            { "string", "any" },
        },
        InternetChargeType = "string",
        InternetMaxBandwidthIn = 0,
        InternetMaxBandwidthOut = 0,
        IsOutdated = false,
        KeyName = "string",
        Active = false,
        InstanceTypes = new[]
        {
            "string",
        },
        DataDisks = new[]
        {
            new AliCloud.Ess.Inputs.ScalingConfigurationDataDiskArgs
            {
                AutoSnapshotPolicyId = "string",
                Category = "string",
                DeleteWithInstance = false,
                Description = "string",
                Encrypted = false,
                KmsKeyId = "string",
                Name = "string",
                PerformanceLevel = "string",
                Size = 0,
                SnapshotId = "string",
            },
        },
        Enable = false,
        PasswordInherit = false,
        ResourceGroupId = "string",
        RoleName = "string",
        ScalingConfigurationName = "string",
        CreditSpecification = "string",
        SecurityGroupId = "string",
        SecurityGroupIds = new[]
        {
            "string",
        },
        SpotPriceLimits = new[]
        {
            new AliCloud.Ess.Inputs.ScalingConfigurationSpotPriceLimitArgs
            {
                InstanceType = "string",
                PriceLimit = 0,
            },
        },
        SpotStrategy = "string",
        Substitute = "string",
        SystemDiskAutoSnapshotPolicyId = "string",
        SystemDiskCategory = "string",
        SystemDiskDescription = "string",
        SystemDiskEncrypted = false,
        SystemDiskName = "string",
        SystemDiskPerformanceLevel = "string",
        SystemDiskSize = 0,
        Tags = 
        {
            { "string", "any" },
        },
        UserData = "string",
    });
    
    example, err := ess.NewScalingConfiguration(ctx, "scalingConfigurationResource", &ess.ScalingConfigurationArgs{
    	ScalingGroupId:       pulumi.String("string"),
    	KmsEncryptedPassword: pulumi.String("string"),
    	Password:             pulumi.String("string"),
    	ForceDelete:          pulumi.Bool(false),
    	HostName:             pulumi.String("string"),
    	ImageId:              pulumi.String("string"),
    	ImageName:            pulumi.String("string"),
    	Override:             pulumi.Bool(false),
    	InstanceName:         pulumi.String("string"),
    	InstancePatternInfos: ess.ScalingConfigurationInstancePatternInfoArray{
    		&ess.ScalingConfigurationInstancePatternInfoArgs{
    			Architectures: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			BurstablePerformance: pulumi.String("string"),
    			Cores:                pulumi.Int(0),
    			ExcludedInstanceTypes: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			InstanceFamilyLevel: pulumi.String("string"),
    			MaxPrice:            pulumi.Float64(0),
    			Memory:              pulumi.Float64(0),
    		},
    	},
    	InstanceType: pulumi.String("string"),
    	InstanceTypeOverrides: ess.ScalingConfigurationInstanceTypeOverrideArray{
    		&ess.ScalingConfigurationInstanceTypeOverrideArgs{
    			InstanceType:     pulumi.String("string"),
    			WeightedCapacity: pulumi.Int(0),
    		},
    	},
    	KmsEncryptionContext: pulumi.Map{
    		"string": pulumi.Any("any"),
    	},
    	InternetChargeType:      pulumi.String("string"),
    	InternetMaxBandwidthIn:  pulumi.Int(0),
    	InternetMaxBandwidthOut: pulumi.Int(0),
    	IsOutdated:              pulumi.Bool(false),
    	KeyName:                 pulumi.String("string"),
    	Active:                  pulumi.Bool(false),
    	InstanceTypes: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	DataDisks: ess.ScalingConfigurationDataDiskArray{
    		&ess.ScalingConfigurationDataDiskArgs{
    			AutoSnapshotPolicyId: pulumi.String("string"),
    			Category:             pulumi.String("string"),
    			DeleteWithInstance:   pulumi.Bool(false),
    			Description:          pulumi.String("string"),
    			Encrypted:            pulumi.Bool(false),
    			KmsKeyId:             pulumi.String("string"),
    			Name:                 pulumi.String("string"),
    			PerformanceLevel:     pulumi.String("string"),
    			Size:                 pulumi.Int(0),
    			SnapshotId:           pulumi.String("string"),
    		},
    	},
    	Enable:                   pulumi.Bool(false),
    	PasswordInherit:          pulumi.Bool(false),
    	ResourceGroupId:          pulumi.String("string"),
    	RoleName:                 pulumi.String("string"),
    	ScalingConfigurationName: pulumi.String("string"),
    	CreditSpecification:      pulumi.String("string"),
    	SecurityGroupId:          pulumi.String("string"),
    	SecurityGroupIds: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	SpotPriceLimits: ess.ScalingConfigurationSpotPriceLimitArray{
    		&ess.ScalingConfigurationSpotPriceLimitArgs{
    			InstanceType: pulumi.String("string"),
    			PriceLimit:   pulumi.Float64(0),
    		},
    	},
    	SpotStrategy:                   pulumi.String("string"),
    	Substitute:                     pulumi.String("string"),
    	SystemDiskAutoSnapshotPolicyId: pulumi.String("string"),
    	SystemDiskCategory:             pulumi.String("string"),
    	SystemDiskDescription:          pulumi.String("string"),
    	SystemDiskEncrypted:            pulumi.Bool(false),
    	SystemDiskName:                 pulumi.String("string"),
    	SystemDiskPerformanceLevel:     pulumi.String("string"),
    	SystemDiskSize:                 pulumi.Int(0),
    	Tags: pulumi.Map{
    		"string": pulumi.Any("any"),
    	},
    	UserData: pulumi.String("string"),
    })
    
    var scalingConfigurationResource = new ScalingConfiguration("scalingConfigurationResource", ScalingConfigurationArgs.builder()
        .scalingGroupId("string")
        .kmsEncryptedPassword("string")
        .password("string")
        .forceDelete(false)
        .hostName("string")
        .imageId("string")
        .imageName("string")
        .override(false)
        .instanceName("string")
        .instancePatternInfos(ScalingConfigurationInstancePatternInfoArgs.builder()
            .architectures("string")
            .burstablePerformance("string")
            .cores(0)
            .excludedInstanceTypes("string")
            .instanceFamilyLevel("string")
            .maxPrice(0)
            .memory(0)
            .build())
        .instanceType("string")
        .instanceTypeOverrides(ScalingConfigurationInstanceTypeOverrideArgs.builder()
            .instanceType("string")
            .weightedCapacity(0)
            .build())
        .kmsEncryptionContext(Map.of("string", "any"))
        .internetChargeType("string")
        .internetMaxBandwidthIn(0)
        .internetMaxBandwidthOut(0)
        .isOutdated(false)
        .keyName("string")
        .active(false)
        .instanceTypes("string")
        .dataDisks(ScalingConfigurationDataDiskArgs.builder()
            .autoSnapshotPolicyId("string")
            .category("string")
            .deleteWithInstance(false)
            .description("string")
            .encrypted(false)
            .kmsKeyId("string")
            .name("string")
            .performanceLevel("string")
            .size(0)
            .snapshotId("string")
            .build())
        .enable(false)
        .passwordInherit(false)
        .resourceGroupId("string")
        .roleName("string")
        .scalingConfigurationName("string")
        .creditSpecification("string")
        .securityGroupId("string")
        .securityGroupIds("string")
        .spotPriceLimits(ScalingConfigurationSpotPriceLimitArgs.builder()
            .instanceType("string")
            .priceLimit(0)
            .build())
        .spotStrategy("string")
        .substitute("string")
        .systemDiskAutoSnapshotPolicyId("string")
        .systemDiskCategory("string")
        .systemDiskDescription("string")
        .systemDiskEncrypted(false)
        .systemDiskName("string")
        .systemDiskPerformanceLevel("string")
        .systemDiskSize(0)
        .tags(Map.of("string", "any"))
        .userData("string")
        .build());
    
    scaling_configuration_resource = alicloud.ess.ScalingConfiguration("scalingConfigurationResource",
        scaling_group_id="string",
        kms_encrypted_password="string",
        password="string",
        force_delete=False,
        host_name="string",
        image_id="string",
        image_name="string",
        override=False,
        instance_name="string",
        instance_pattern_infos=[alicloud.ess.ScalingConfigurationInstancePatternInfoArgs(
            architectures=["string"],
            burstable_performance="string",
            cores=0,
            excluded_instance_types=["string"],
            instance_family_level="string",
            max_price=0,
            memory=0,
        )],
        instance_type="string",
        instance_type_overrides=[alicloud.ess.ScalingConfigurationInstanceTypeOverrideArgs(
            instance_type="string",
            weighted_capacity=0,
        )],
        kms_encryption_context={
            "string": "any",
        },
        internet_charge_type="string",
        internet_max_bandwidth_in=0,
        internet_max_bandwidth_out=0,
        is_outdated=False,
        key_name="string",
        active=False,
        instance_types=["string"],
        data_disks=[alicloud.ess.ScalingConfigurationDataDiskArgs(
            auto_snapshot_policy_id="string",
            category="string",
            delete_with_instance=False,
            description="string",
            encrypted=False,
            kms_key_id="string",
            name="string",
            performance_level="string",
            size=0,
            snapshot_id="string",
        )],
        enable=False,
        password_inherit=False,
        resource_group_id="string",
        role_name="string",
        scaling_configuration_name="string",
        credit_specification="string",
        security_group_id="string",
        security_group_ids=["string"],
        spot_price_limits=[alicloud.ess.ScalingConfigurationSpotPriceLimitArgs(
            instance_type="string",
            price_limit=0,
        )],
        spot_strategy="string",
        substitute="string",
        system_disk_auto_snapshot_policy_id="string",
        system_disk_category="string",
        system_disk_description="string",
        system_disk_encrypted=False,
        system_disk_name="string",
        system_disk_performance_level="string",
        system_disk_size=0,
        tags={
            "string": "any",
        },
        user_data="string")
    
    const scalingConfigurationResource = new alicloud.ess.ScalingConfiguration("scalingConfigurationResource", {
        scalingGroupId: "string",
        kmsEncryptedPassword: "string",
        password: "string",
        forceDelete: false,
        hostName: "string",
        imageId: "string",
        imageName: "string",
        override: false,
        instanceName: "string",
        instancePatternInfos: [{
            architectures: ["string"],
            burstablePerformance: "string",
            cores: 0,
            excludedInstanceTypes: ["string"],
            instanceFamilyLevel: "string",
            maxPrice: 0,
            memory: 0,
        }],
        instanceType: "string",
        instanceTypeOverrides: [{
            instanceType: "string",
            weightedCapacity: 0,
        }],
        kmsEncryptionContext: {
            string: "any",
        },
        internetChargeType: "string",
        internetMaxBandwidthIn: 0,
        internetMaxBandwidthOut: 0,
        isOutdated: false,
        keyName: "string",
        active: false,
        instanceTypes: ["string"],
        dataDisks: [{
            autoSnapshotPolicyId: "string",
            category: "string",
            deleteWithInstance: false,
            description: "string",
            encrypted: false,
            kmsKeyId: "string",
            name: "string",
            performanceLevel: "string",
            size: 0,
            snapshotId: "string",
        }],
        enable: false,
        passwordInherit: false,
        resourceGroupId: "string",
        roleName: "string",
        scalingConfigurationName: "string",
        creditSpecification: "string",
        securityGroupId: "string",
        securityGroupIds: ["string"],
        spotPriceLimits: [{
            instanceType: "string",
            priceLimit: 0,
        }],
        spotStrategy: "string",
        substitute: "string",
        systemDiskAutoSnapshotPolicyId: "string",
        systemDiskCategory: "string",
        systemDiskDescription: "string",
        systemDiskEncrypted: false,
        systemDiskName: "string",
        systemDiskPerformanceLevel: "string",
        systemDiskSize: 0,
        tags: {
            string: "any",
        },
        userData: "string",
    });
    
    type: alicloud:ess:ScalingConfiguration
    properties:
        active: false
        creditSpecification: string
        dataDisks:
            - autoSnapshotPolicyId: string
              category: string
              deleteWithInstance: false
              description: string
              encrypted: false
              kmsKeyId: string
              name: string
              performanceLevel: string
              size: 0
              snapshotId: string
        enable: false
        forceDelete: false
        hostName: string
        imageId: string
        imageName: string
        instanceName: string
        instancePatternInfos:
            - architectures:
                - string
              burstablePerformance: string
              cores: 0
              excludedInstanceTypes:
                - string
              instanceFamilyLevel: string
              maxPrice: 0
              memory: 0
        instanceType: string
        instanceTypeOverrides:
            - instanceType: string
              weightedCapacity: 0
        instanceTypes:
            - string
        internetChargeType: string
        internetMaxBandwidthIn: 0
        internetMaxBandwidthOut: 0
        isOutdated: false
        keyName: string
        kmsEncryptedPassword: string
        kmsEncryptionContext:
            string: any
        override: false
        password: string
        passwordInherit: false
        resourceGroupId: string
        roleName: string
        scalingConfigurationName: string
        scalingGroupId: string
        securityGroupId: string
        securityGroupIds:
            - string
        spotPriceLimits:
            - instanceType: string
              priceLimit: 0
        spotStrategy: string
        substitute: string
        systemDiskAutoSnapshotPolicyId: string
        systemDiskCategory: string
        systemDiskDescription: string
        systemDiskEncrypted: false
        systemDiskName: string
        systemDiskPerformanceLevel: string
        systemDiskSize: 0
        tags:
            string: any
        userData: string
    

    ScalingConfiguration Resource Properties

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

    Inputs

    The ScalingConfiguration resource accepts the following input properties:

    ScalingGroupId string
    ID of the scaling group of a scaling configuration.
    Active bool
    Whether active current scaling configuration in the specified scaling group. Default to false.
    CreditSpecification string
    Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
    DataDisks List<Pulumi.AliCloud.Ess.Inputs.ScalingConfigurationDataDisk>
    DataDisk mappings to attach to ecs instance. See data_disk below for details.
    Enable bool
    Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
    ForceDelete bool
    The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
    HostName string
    Hostname of an ECS instance.
    ImageId string
    ID of an image file, indicating the image resource selected when an instance is enabled.
    ImageName string
    Name of an image file, indicating the image resource selected when an instance is enabled.
    InstanceIds List<string>
    It has been deprecated from version 1.6.0. New resource alicloud.ess.Attachment replaces it.

    Deprecated: Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.

    InstanceName string
    Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
    InstancePatternInfos List<Pulumi.AliCloud.Ess.Inputs.ScalingConfigurationInstancePatternInfo>
    intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See instance_pattern_info below for details.
    InstanceType string
    Resource type of an ECS instance.
    InstanceTypeOverrides List<Pulumi.AliCloud.Ess.Inputs.ScalingConfigurationInstanceTypeOverride>
    specify the weight of instance type. See instance_type_override below for details.
    InstanceTypes List<string>
    Resource types of an ECS instance.
    InternetChargeType string
    Network billing type, Values: PayByBandwidth or PayByTraffic. Default to PayByBandwidth.
    InternetMaxBandwidthIn int
    Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). The value range is [1,200].
    InternetMaxBandwidthOut int
    Maximum outgoing bandwidth from the public network, measured in Mbps (Mega bit per second). The value range for PayByBandwidth is [0,1024].
    IoOptimized string
    It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.

    Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.

    IsOutdated bool
    Whether to use outdated instance type. Default to false.
    KeyName string
    The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
    KmsEncryptedPassword string
    An KMS encrypts password used to a db account. If the password is filled in, this field will be ignored.
    KmsEncryptionContext Dictionary<string, object>
    An KMS encryption context used to decrypt kms_encrypted_password before creating or updating a db account with kms_encrypted_password. See Encryption Context. It is valid when kms_encrypted_password is set.
    Override bool
    Indicates whether to overwrite the existing data. Default to false.
    Password string
    The password of the ECS instance. The password must be 8 to 30 characters in length. It must contains at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include () ~!@#$%^&*-_+=\|{}[]:;'<>,.?/, The password of Windows-based instances cannot start with a forward slash (/).
    PasswordInherit bool
    Specifies whether to use the password that is predefined in the image. If the PasswordInherit parameter is set to true, the password and kms_encrypted_password will be ignored. You must ensure that the selected image has a password configured.
    ResourceGroupId string
    ID of resource group.
    RoleName string
    Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
    ScalingConfigurationName string
    Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores _, hypens -, and decimal point .. If this parameter value is not specified, the default value is ScalingConfigurationId.
    SecurityGroupId string
    ID of the security group used to create new instance. It is conflict with security_group_ids.
    SecurityGroupIds List<string>
    List IDs of the security group used to create new instances. It is conflict with security_group_id.
    SpotPriceLimits List<Pulumi.AliCloud.Ess.Inputs.ScalingConfigurationSpotPriceLimit>

    Sets the maximum price hourly for instance types. See spot_price_limit below for details.

    NOTE: Before enabling the scaling group, it must have a active scaling configuration.

    NOTE: If the number of attached ECS instances by instance_ids is smaller than MinSize, the Auto Scaling Service will automatically create ECS Pay-As-You-Go instance to cater to MinSize. For example, MinSize=5 and 2 existing ECS instances has been attached to the scaling group. When the scaling group is enabled, it will create 3 instnaces automatically based on its current active scaling configuration.

    NOTE: Restrictions on attaching ECS instances:

    • The attached ECS instances and the scaling group must have the same region and network type(Classic or VPC).
    • The attached ECS instances and the instance with active scaling configurations must have the same instance type.
    • The attached ECS instances must in the running state.
    • The attached ECS instances has not been attached to other scaling groups.
    • The attached ECS instances supports Subscription and Pay-As-You-Go payment methods.

    NOTE: The last scaling configuration can't be set to inactive and deleted alone.

    SpotStrategy string
    The spot strategy for a Pay-As-You-Go instance. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.
    Substitute string
    The another scaling configuration which will be active automatically and replace current configuration when setting active to 'false'. It is invalid when active is 'true'.
    SystemDiskAutoSnapshotPolicyId string
    The id of auto snapshot policy for system disk.
    SystemDiskCategory string
    Category of the system disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd, cloud_essd and cloud. cloud only is used to some no I/O optimized instance. Default to cloud_efficiency.
    SystemDiskDescription string
    The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    SystemDiskEncrypted bool
    Whether to encrypt the system disk.
    SystemDiskName string
    The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    SystemDiskPerformanceLevel string
    The performance level of the ESSD used as the system disk.
    SystemDiskSize int
    Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
    Tags Dictionary<string, object>
    A mapping of tags to assign to the resource. It will be applied for ECS instances finally.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "http://", or "https://" It can be a null string.
    UserData string
    User-defined data to customize the startup behaviors of the ECS instance and to pass data into the ECS instance.
    ScalingGroupId string
    ID of the scaling group of a scaling configuration.
    Active bool
    Whether active current scaling configuration in the specified scaling group. Default to false.
    CreditSpecification string
    Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
    DataDisks []ScalingConfigurationDataDiskArgs
    DataDisk mappings to attach to ecs instance. See data_disk below for details.
    Enable bool
    Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
    ForceDelete bool
    The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
    HostName string
    Hostname of an ECS instance.
    ImageId string
    ID of an image file, indicating the image resource selected when an instance is enabled.
    ImageName string
    Name of an image file, indicating the image resource selected when an instance is enabled.
    InstanceIds []string
    It has been deprecated from version 1.6.0. New resource alicloud.ess.Attachment replaces it.

    Deprecated: Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.

    InstanceName string
    Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
    InstancePatternInfos []ScalingConfigurationInstancePatternInfoArgs
    intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See instance_pattern_info below for details.
    InstanceType string
    Resource type of an ECS instance.
    InstanceTypeOverrides []ScalingConfigurationInstanceTypeOverrideArgs
    specify the weight of instance type. See instance_type_override below for details.
    InstanceTypes []string
    Resource types of an ECS instance.
    InternetChargeType string
    Network billing type, Values: PayByBandwidth or PayByTraffic. Default to PayByBandwidth.
    InternetMaxBandwidthIn int
    Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). The value range is [1,200].
    InternetMaxBandwidthOut int
    Maximum outgoing bandwidth from the public network, measured in Mbps (Mega bit per second). The value range for PayByBandwidth is [0,1024].
    IoOptimized string
    It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.

    Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.

    IsOutdated bool
    Whether to use outdated instance type. Default to false.
    KeyName string
    The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
    KmsEncryptedPassword string
    An KMS encrypts password used to a db account. If the password is filled in, this field will be ignored.
    KmsEncryptionContext map[string]interface{}
    An KMS encryption context used to decrypt kms_encrypted_password before creating or updating a db account with kms_encrypted_password. See Encryption Context. It is valid when kms_encrypted_password is set.
    Override bool
    Indicates whether to overwrite the existing data. Default to false.
    Password string
    The password of the ECS instance. The password must be 8 to 30 characters in length. It must contains at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include () ~!@#$%^&*-_+=\|{}[]:;'<>,.?/, The password of Windows-based instances cannot start with a forward slash (/).
    PasswordInherit bool
    Specifies whether to use the password that is predefined in the image. If the PasswordInherit parameter is set to true, the password and kms_encrypted_password will be ignored. You must ensure that the selected image has a password configured.
    ResourceGroupId string
    ID of resource group.
    RoleName string
    Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
    ScalingConfigurationName string
    Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores _, hypens -, and decimal point .. If this parameter value is not specified, the default value is ScalingConfigurationId.
    SecurityGroupId string
    ID of the security group used to create new instance. It is conflict with security_group_ids.
    SecurityGroupIds []string
    List IDs of the security group used to create new instances. It is conflict with security_group_id.
    SpotPriceLimits []ScalingConfigurationSpotPriceLimitArgs

    Sets the maximum price hourly for instance types. See spot_price_limit below for details.

    NOTE: Before enabling the scaling group, it must have a active scaling configuration.

    NOTE: If the number of attached ECS instances by instance_ids is smaller than MinSize, the Auto Scaling Service will automatically create ECS Pay-As-You-Go instance to cater to MinSize. For example, MinSize=5 and 2 existing ECS instances has been attached to the scaling group. When the scaling group is enabled, it will create 3 instnaces automatically based on its current active scaling configuration.

    NOTE: Restrictions on attaching ECS instances:

    • The attached ECS instances and the scaling group must have the same region and network type(Classic or VPC).
    • The attached ECS instances and the instance with active scaling configurations must have the same instance type.
    • The attached ECS instances must in the running state.
    • The attached ECS instances has not been attached to other scaling groups.
    • The attached ECS instances supports Subscription and Pay-As-You-Go payment methods.

    NOTE: The last scaling configuration can't be set to inactive and deleted alone.

    SpotStrategy string
    The spot strategy for a Pay-As-You-Go instance. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.
    Substitute string
    The another scaling configuration which will be active automatically and replace current configuration when setting active to 'false'. It is invalid when active is 'true'.
    SystemDiskAutoSnapshotPolicyId string
    The id of auto snapshot policy for system disk.
    SystemDiskCategory string
    Category of the system disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd, cloud_essd and cloud. cloud only is used to some no I/O optimized instance. Default to cloud_efficiency.
    SystemDiskDescription string
    The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    SystemDiskEncrypted bool
    Whether to encrypt the system disk.
    SystemDiskName string
    The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    SystemDiskPerformanceLevel string
    The performance level of the ESSD used as the system disk.
    SystemDiskSize int
    Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
    Tags map[string]interface{}
    A mapping of tags to assign to the resource. It will be applied for ECS instances finally.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "http://", or "https://" It can be a null string.
    UserData string
    User-defined data to customize the startup behaviors of the ECS instance and to pass data into the ECS instance.
    scalingGroupId String
    ID of the scaling group of a scaling configuration.
    active Boolean
    Whether active current scaling configuration in the specified scaling group. Default to false.
    creditSpecification String
    Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
    dataDisks List<ScalingConfigurationDataDisk>
    DataDisk mappings to attach to ecs instance. See data_disk below for details.
    enable Boolean
    Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
    forceDelete Boolean
    The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
    hostName String
    Hostname of an ECS instance.
    imageId String
    ID of an image file, indicating the image resource selected when an instance is enabled.
    imageName String
    Name of an image file, indicating the image resource selected when an instance is enabled.
    instanceIds List<String>
    It has been deprecated from version 1.6.0. New resource alicloud.ess.Attachment replaces it.

    Deprecated: Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.

    instanceName String
    Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
    instancePatternInfos List<ScalingConfigurationInstancePatternInfo>
    intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See instance_pattern_info below for details.
    instanceType String
    Resource type of an ECS instance.
    instanceTypeOverrides List<ScalingConfigurationInstanceTypeOverride>
    specify the weight of instance type. See instance_type_override below for details.
    instanceTypes List<String>
    Resource types of an ECS instance.
    internetChargeType String
    Network billing type, Values: PayByBandwidth or PayByTraffic. Default to PayByBandwidth.
    internetMaxBandwidthIn Integer
    Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). The value range is [1,200].
    internetMaxBandwidthOut Integer
    Maximum outgoing bandwidth from the public network, measured in Mbps (Mega bit per second). The value range for PayByBandwidth is [0,1024].
    ioOptimized String
    It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.

    Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.

    isOutdated Boolean
    Whether to use outdated instance type. Default to false.
    keyName String
    The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
    kmsEncryptedPassword String
    An KMS encrypts password used to a db account. If the password is filled in, this field will be ignored.
    kmsEncryptionContext Map<String,Object>
    An KMS encryption context used to decrypt kms_encrypted_password before creating or updating a db account with kms_encrypted_password. See Encryption Context. It is valid when kms_encrypted_password is set.
    override Boolean
    Indicates whether to overwrite the existing data. Default to false.
    password String
    The password of the ECS instance. The password must be 8 to 30 characters in length. It must contains at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include () ~!@#$%^&*-_+=\|{}[]:;'<>,.?/, The password of Windows-based instances cannot start with a forward slash (/).
    passwordInherit Boolean
    Specifies whether to use the password that is predefined in the image. If the PasswordInherit parameter is set to true, the password and kms_encrypted_password will be ignored. You must ensure that the selected image has a password configured.
    resourceGroupId String
    ID of resource group.
    roleName String
    Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
    scalingConfigurationName String
    Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores _, hypens -, and decimal point .. If this parameter value is not specified, the default value is ScalingConfigurationId.
    securityGroupId String
    ID of the security group used to create new instance. It is conflict with security_group_ids.
    securityGroupIds List<String>
    List IDs of the security group used to create new instances. It is conflict with security_group_id.
    spotPriceLimits List<ScalingConfigurationSpotPriceLimit>

    Sets the maximum price hourly for instance types. See spot_price_limit below for details.

    NOTE: Before enabling the scaling group, it must have a active scaling configuration.

    NOTE: If the number of attached ECS instances by instance_ids is smaller than MinSize, the Auto Scaling Service will automatically create ECS Pay-As-You-Go instance to cater to MinSize. For example, MinSize=5 and 2 existing ECS instances has been attached to the scaling group. When the scaling group is enabled, it will create 3 instnaces automatically based on its current active scaling configuration.

    NOTE: Restrictions on attaching ECS instances:

    • The attached ECS instances and the scaling group must have the same region and network type(Classic or VPC).
    • The attached ECS instances and the instance with active scaling configurations must have the same instance type.
    • The attached ECS instances must in the running state.
    • The attached ECS instances has not been attached to other scaling groups.
    • The attached ECS instances supports Subscription and Pay-As-You-Go payment methods.

    NOTE: The last scaling configuration can't be set to inactive and deleted alone.

    spotStrategy String
    The spot strategy for a Pay-As-You-Go instance. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.
    substitute String
    The another scaling configuration which will be active automatically and replace current configuration when setting active to 'false'. It is invalid when active is 'true'.
    systemDiskAutoSnapshotPolicyId String
    The id of auto snapshot policy for system disk.
    systemDiskCategory String
    Category of the system disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd, cloud_essd and cloud. cloud only is used to some no I/O optimized instance. Default to cloud_efficiency.
    systemDiskDescription String
    The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    systemDiskEncrypted Boolean
    Whether to encrypt the system disk.
    systemDiskName String
    The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    systemDiskPerformanceLevel String
    The performance level of the ESSD used as the system disk.
    systemDiskSize Integer
    Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
    tags Map<String,Object>
    A mapping of tags to assign to the resource. It will be applied for ECS instances finally.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "http://", or "https://" It can be a null string.
    userData String
    User-defined data to customize the startup behaviors of the ECS instance and to pass data into the ECS instance.
    scalingGroupId string
    ID of the scaling group of a scaling configuration.
    active boolean
    Whether active current scaling configuration in the specified scaling group. Default to false.
    creditSpecification string
    Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
    dataDisks ScalingConfigurationDataDisk[]
    DataDisk mappings to attach to ecs instance. See data_disk below for details.
    enable boolean
    Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
    forceDelete boolean
    The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
    hostName string
    Hostname of an ECS instance.
    imageId string
    ID of an image file, indicating the image resource selected when an instance is enabled.
    imageName string
    Name of an image file, indicating the image resource selected when an instance is enabled.
    instanceIds string[]
    It has been deprecated from version 1.6.0. New resource alicloud.ess.Attachment replaces it.

    Deprecated: Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.

    instanceName string
    Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
    instancePatternInfos ScalingConfigurationInstancePatternInfo[]
    intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See instance_pattern_info below for details.
    instanceType string
    Resource type of an ECS instance.
    instanceTypeOverrides ScalingConfigurationInstanceTypeOverride[]
    specify the weight of instance type. See instance_type_override below for details.
    instanceTypes string[]
    Resource types of an ECS instance.
    internetChargeType string
    Network billing type, Values: PayByBandwidth or PayByTraffic. Default to PayByBandwidth.
    internetMaxBandwidthIn number
    Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). The value range is [1,200].
    internetMaxBandwidthOut number
    Maximum outgoing bandwidth from the public network, measured in Mbps (Mega bit per second). The value range for PayByBandwidth is [0,1024].
    ioOptimized string
    It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.

    Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.

    isOutdated boolean
    Whether to use outdated instance type. Default to false.
    keyName string
    The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
    kmsEncryptedPassword string
    An KMS encrypts password used to a db account. If the password is filled in, this field will be ignored.
    kmsEncryptionContext {[key: string]: any}
    An KMS encryption context used to decrypt kms_encrypted_password before creating or updating a db account with kms_encrypted_password. See Encryption Context. It is valid when kms_encrypted_password is set.
    override boolean
    Indicates whether to overwrite the existing data. Default to false.
    password string
    The password of the ECS instance. The password must be 8 to 30 characters in length. It must contains at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include () ~!@#$%^&*-_+=\|{}[]:;'<>,.?/, The password of Windows-based instances cannot start with a forward slash (/).
    passwordInherit boolean
    Specifies whether to use the password that is predefined in the image. If the PasswordInherit parameter is set to true, the password and kms_encrypted_password will be ignored. You must ensure that the selected image has a password configured.
    resourceGroupId string
    ID of resource group.
    roleName string
    Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
    scalingConfigurationName string
    Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores _, hypens -, and decimal point .. If this parameter value is not specified, the default value is ScalingConfigurationId.
    securityGroupId string
    ID of the security group used to create new instance. It is conflict with security_group_ids.
    securityGroupIds string[]
    List IDs of the security group used to create new instances. It is conflict with security_group_id.
    spotPriceLimits ScalingConfigurationSpotPriceLimit[]

    Sets the maximum price hourly for instance types. See spot_price_limit below for details.

    NOTE: Before enabling the scaling group, it must have a active scaling configuration.

    NOTE: If the number of attached ECS instances by instance_ids is smaller than MinSize, the Auto Scaling Service will automatically create ECS Pay-As-You-Go instance to cater to MinSize. For example, MinSize=5 and 2 existing ECS instances has been attached to the scaling group. When the scaling group is enabled, it will create 3 instnaces automatically based on its current active scaling configuration.

    NOTE: Restrictions on attaching ECS instances:

    • The attached ECS instances and the scaling group must have the same region and network type(Classic or VPC).
    • The attached ECS instances and the instance with active scaling configurations must have the same instance type.
    • The attached ECS instances must in the running state.
    • The attached ECS instances has not been attached to other scaling groups.
    • The attached ECS instances supports Subscription and Pay-As-You-Go payment methods.

    NOTE: The last scaling configuration can't be set to inactive and deleted alone.

    spotStrategy string
    The spot strategy for a Pay-As-You-Go instance. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.
    substitute string
    The another scaling configuration which will be active automatically and replace current configuration when setting active to 'false'. It is invalid when active is 'true'.
    systemDiskAutoSnapshotPolicyId string
    The id of auto snapshot policy for system disk.
    systemDiskCategory string
    Category of the system disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd, cloud_essd and cloud. cloud only is used to some no I/O optimized instance. Default to cloud_efficiency.
    systemDiskDescription string
    The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    systemDiskEncrypted boolean
    Whether to encrypt the system disk.
    systemDiskName string
    The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    systemDiskPerformanceLevel string
    The performance level of the ESSD used as the system disk.
    systemDiskSize number
    Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
    tags {[key: string]: any}
    A mapping of tags to assign to the resource. It will be applied for ECS instances finally.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "http://", or "https://" It can be a null string.
    userData string
    User-defined data to customize the startup behaviors of the ECS instance and to pass data into the ECS instance.
    scaling_group_id str
    ID of the scaling group of a scaling configuration.
    active bool
    Whether active current scaling configuration in the specified scaling group. Default to false.
    credit_specification str
    Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
    data_disks Sequence[ScalingConfigurationDataDiskArgs]
    DataDisk mappings to attach to ecs instance. See data_disk below for details.
    enable bool
    Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
    force_delete bool
    The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
    host_name str
    Hostname of an ECS instance.
    image_id str
    ID of an image file, indicating the image resource selected when an instance is enabled.
    image_name str
    Name of an image file, indicating the image resource selected when an instance is enabled.
    instance_ids Sequence[str]
    It has been deprecated from version 1.6.0. New resource alicloud.ess.Attachment replaces it.

    Deprecated: Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.

    instance_name str
    Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
    instance_pattern_infos Sequence[ScalingConfigurationInstancePatternInfoArgs]
    intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See instance_pattern_info below for details.
    instance_type str
    Resource type of an ECS instance.
    instance_type_overrides Sequence[ScalingConfigurationInstanceTypeOverrideArgs]
    specify the weight of instance type. See instance_type_override below for details.
    instance_types Sequence[str]
    Resource types of an ECS instance.
    internet_charge_type str
    Network billing type, Values: PayByBandwidth or PayByTraffic. Default to PayByBandwidth.
    internet_max_bandwidth_in int
    Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). The value range is [1,200].
    internet_max_bandwidth_out int
    Maximum outgoing bandwidth from the public network, measured in Mbps (Mega bit per second). The value range for PayByBandwidth is [0,1024].
    io_optimized str
    It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.

    Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.

    is_outdated bool
    Whether to use outdated instance type. Default to false.
    key_name str
    The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
    kms_encrypted_password str
    An KMS encrypts password used to a db account. If the password is filled in, this field will be ignored.
    kms_encryption_context Mapping[str, Any]
    An KMS encryption context used to decrypt kms_encrypted_password before creating or updating a db account with kms_encrypted_password. See Encryption Context. It is valid when kms_encrypted_password is set.
    override bool
    Indicates whether to overwrite the existing data. Default to false.
    password str
    The password of the ECS instance. The password must be 8 to 30 characters in length. It must contains at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include () ~!@#$%^&*-_+=\|{}[]:;'<>,.?/, The password of Windows-based instances cannot start with a forward slash (/).
    password_inherit bool
    Specifies whether to use the password that is predefined in the image. If the PasswordInherit parameter is set to true, the password and kms_encrypted_password will be ignored. You must ensure that the selected image has a password configured.
    resource_group_id str
    ID of resource group.
    role_name str
    Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
    scaling_configuration_name str
    Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores _, hypens -, and decimal point .. If this parameter value is not specified, the default value is ScalingConfigurationId.
    security_group_id str
    ID of the security group used to create new instance. It is conflict with security_group_ids.
    security_group_ids Sequence[str]
    List IDs of the security group used to create new instances. It is conflict with security_group_id.
    spot_price_limits Sequence[ScalingConfigurationSpotPriceLimitArgs]

    Sets the maximum price hourly for instance types. See spot_price_limit below for details.

    NOTE: Before enabling the scaling group, it must have a active scaling configuration.

    NOTE: If the number of attached ECS instances by instance_ids is smaller than MinSize, the Auto Scaling Service will automatically create ECS Pay-As-You-Go instance to cater to MinSize. For example, MinSize=5 and 2 existing ECS instances has been attached to the scaling group. When the scaling group is enabled, it will create 3 instnaces automatically based on its current active scaling configuration.

    NOTE: Restrictions on attaching ECS instances:

    • The attached ECS instances and the scaling group must have the same region and network type(Classic or VPC).
    • The attached ECS instances and the instance with active scaling configurations must have the same instance type.
    • The attached ECS instances must in the running state.
    • The attached ECS instances has not been attached to other scaling groups.
    • The attached ECS instances supports Subscription and Pay-As-You-Go payment methods.

    NOTE: The last scaling configuration can't be set to inactive and deleted alone.

    spot_strategy str
    The spot strategy for a Pay-As-You-Go instance. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.
    substitute str
    The another scaling configuration which will be active automatically and replace current configuration when setting active to 'false'. It is invalid when active is 'true'.
    system_disk_auto_snapshot_policy_id str
    The id of auto snapshot policy for system disk.
    system_disk_category str
    Category of the system disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd, cloud_essd and cloud. cloud only is used to some no I/O optimized instance. Default to cloud_efficiency.
    system_disk_description str
    The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    system_disk_encrypted bool
    Whether to encrypt the system disk.
    system_disk_name str
    The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    system_disk_performance_level str
    The performance level of the ESSD used as the system disk.
    system_disk_size int
    Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
    tags Mapping[str, Any]
    A mapping of tags to assign to the resource. It will be applied for ECS instances finally.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "http://", or "https://" It can be a null string.
    user_data str
    User-defined data to customize the startup behaviors of the ECS instance and to pass data into the ECS instance.
    scalingGroupId String
    ID of the scaling group of a scaling configuration.
    active Boolean
    Whether active current scaling configuration in the specified scaling group. Default to false.
    creditSpecification String
    Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
    dataDisks List<Property Map>
    DataDisk mappings to attach to ecs instance. See data_disk below for details.
    enable Boolean
    Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
    forceDelete Boolean
    The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
    hostName String
    Hostname of an ECS instance.
    imageId String
    ID of an image file, indicating the image resource selected when an instance is enabled.
    imageName String
    Name of an image file, indicating the image resource selected when an instance is enabled.
    instanceIds List<String>
    It has been deprecated from version 1.6.0. New resource alicloud.ess.Attachment replaces it.

    Deprecated: Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.

    instanceName String
    Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
    instancePatternInfos List<Property Map>
    intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See instance_pattern_info below for details.
    instanceType String
    Resource type of an ECS instance.
    instanceTypeOverrides List<Property Map>
    specify the weight of instance type. See instance_type_override below for details.
    instanceTypes List<String>
    Resource types of an ECS instance.
    internetChargeType String
    Network billing type, Values: PayByBandwidth or PayByTraffic. Default to PayByBandwidth.
    internetMaxBandwidthIn Number
    Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). The value range is [1,200].
    internetMaxBandwidthOut Number
    Maximum outgoing bandwidth from the public network, measured in Mbps (Mega bit per second). The value range for PayByBandwidth is [0,1024].
    ioOptimized String
    It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.

    Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.

    isOutdated Boolean
    Whether to use outdated instance type. Default to false.
    keyName String
    The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
    kmsEncryptedPassword String
    An KMS encrypts password used to a db account. If the password is filled in, this field will be ignored.
    kmsEncryptionContext Map<Any>
    An KMS encryption context used to decrypt kms_encrypted_password before creating or updating a db account with kms_encrypted_password. See Encryption Context. It is valid when kms_encrypted_password is set.
    override Boolean
    Indicates whether to overwrite the existing data. Default to false.
    password String
    The password of the ECS instance. The password must be 8 to 30 characters in length. It must contains at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include () ~!@#$%^&*-_+=\|{}[]:;'<>,.?/, The password of Windows-based instances cannot start with a forward slash (/).
    passwordInherit Boolean
    Specifies whether to use the password that is predefined in the image. If the PasswordInherit parameter is set to true, the password and kms_encrypted_password will be ignored. You must ensure that the selected image has a password configured.
    resourceGroupId String
    ID of resource group.
    roleName String
    Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
    scalingConfigurationName String
    Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores _, hypens -, and decimal point .. If this parameter value is not specified, the default value is ScalingConfigurationId.
    securityGroupId String
    ID of the security group used to create new instance. It is conflict with security_group_ids.
    securityGroupIds List<String>
    List IDs of the security group used to create new instances. It is conflict with security_group_id.
    spotPriceLimits List<Property Map>

    Sets the maximum price hourly for instance types. See spot_price_limit below for details.

    NOTE: Before enabling the scaling group, it must have a active scaling configuration.

    NOTE: If the number of attached ECS instances by instance_ids is smaller than MinSize, the Auto Scaling Service will automatically create ECS Pay-As-You-Go instance to cater to MinSize. For example, MinSize=5 and 2 existing ECS instances has been attached to the scaling group. When the scaling group is enabled, it will create 3 instnaces automatically based on its current active scaling configuration.

    NOTE: Restrictions on attaching ECS instances:

    • The attached ECS instances and the scaling group must have the same region and network type(Classic or VPC).
    • The attached ECS instances and the instance with active scaling configurations must have the same instance type.
    • The attached ECS instances must in the running state.
    • The attached ECS instances has not been attached to other scaling groups.
    • The attached ECS instances supports Subscription and Pay-As-You-Go payment methods.

    NOTE: The last scaling configuration can't be set to inactive and deleted alone.

    spotStrategy String
    The spot strategy for a Pay-As-You-Go instance. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.
    substitute String
    The another scaling configuration which will be active automatically and replace current configuration when setting active to 'false'. It is invalid when active is 'true'.
    systemDiskAutoSnapshotPolicyId String
    The id of auto snapshot policy for system disk.
    systemDiskCategory String
    Category of the system disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd, cloud_essd and cloud. cloud only is used to some no I/O optimized instance. Default to cloud_efficiency.
    systemDiskDescription String
    The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    systemDiskEncrypted Boolean
    Whether to encrypt the system disk.
    systemDiskName String
    The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    systemDiskPerformanceLevel String
    The performance level of the ESSD used as the system disk.
    systemDiskSize Number
    Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
    tags Map<Any>
    A mapping of tags to assign to the resource. It will be applied for ECS instances finally.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "http://", or "https://" It can be a null string.
    userData String
    User-defined data to customize the startup behaviors of the ECS instance and to pass data into the ECS instance.

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing ScalingConfiguration Resource

    Get an existing ScalingConfiguration resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ScalingConfigurationState, opts?: CustomResourceOptions): ScalingConfiguration
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            active: Optional[bool] = None,
            credit_specification: Optional[str] = None,
            data_disks: Optional[Sequence[ScalingConfigurationDataDiskArgs]] = None,
            enable: Optional[bool] = None,
            force_delete: Optional[bool] = None,
            host_name: Optional[str] = None,
            image_id: Optional[str] = None,
            image_name: Optional[str] = None,
            instance_ids: Optional[Sequence[str]] = None,
            instance_name: Optional[str] = None,
            instance_pattern_infos: Optional[Sequence[ScalingConfigurationInstancePatternInfoArgs]] = None,
            instance_type: Optional[str] = None,
            instance_type_overrides: Optional[Sequence[ScalingConfigurationInstanceTypeOverrideArgs]] = None,
            instance_types: Optional[Sequence[str]] = None,
            internet_charge_type: Optional[str] = None,
            internet_max_bandwidth_in: Optional[int] = None,
            internet_max_bandwidth_out: Optional[int] = None,
            io_optimized: Optional[str] = None,
            is_outdated: Optional[bool] = None,
            key_name: Optional[str] = None,
            kms_encrypted_password: Optional[str] = None,
            kms_encryption_context: Optional[Mapping[str, Any]] = None,
            override: Optional[bool] = None,
            password: Optional[str] = None,
            password_inherit: Optional[bool] = None,
            resource_group_id: Optional[str] = None,
            role_name: Optional[str] = None,
            scaling_configuration_name: Optional[str] = None,
            scaling_group_id: Optional[str] = None,
            security_group_id: Optional[str] = None,
            security_group_ids: Optional[Sequence[str]] = None,
            spot_price_limits: Optional[Sequence[ScalingConfigurationSpotPriceLimitArgs]] = None,
            spot_strategy: Optional[str] = None,
            substitute: Optional[str] = None,
            system_disk_auto_snapshot_policy_id: Optional[str] = None,
            system_disk_category: Optional[str] = None,
            system_disk_description: Optional[str] = None,
            system_disk_encrypted: Optional[bool] = None,
            system_disk_name: Optional[str] = None,
            system_disk_performance_level: Optional[str] = None,
            system_disk_size: Optional[int] = None,
            tags: Optional[Mapping[str, Any]] = None,
            user_data: Optional[str] = None) -> ScalingConfiguration
    func GetScalingConfiguration(ctx *Context, name string, id IDInput, state *ScalingConfigurationState, opts ...ResourceOption) (*ScalingConfiguration, error)
    public static ScalingConfiguration Get(string name, Input<string> id, ScalingConfigurationState? state, CustomResourceOptions? opts = null)
    public static ScalingConfiguration get(String name, Output<String> id, ScalingConfigurationState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Active bool
    Whether active current scaling configuration in the specified scaling group. Default to false.
    CreditSpecification string
    Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
    DataDisks List<Pulumi.AliCloud.Ess.Inputs.ScalingConfigurationDataDisk>
    DataDisk mappings to attach to ecs instance. See data_disk below for details.
    Enable bool
    Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
    ForceDelete bool
    The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
    HostName string
    Hostname of an ECS instance.
    ImageId string
    ID of an image file, indicating the image resource selected when an instance is enabled.
    ImageName string
    Name of an image file, indicating the image resource selected when an instance is enabled.
    InstanceIds List<string>
    It has been deprecated from version 1.6.0. New resource alicloud.ess.Attachment replaces it.

    Deprecated: Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.

    InstanceName string
    Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
    InstancePatternInfos List<Pulumi.AliCloud.Ess.Inputs.ScalingConfigurationInstancePatternInfo>
    intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See instance_pattern_info below for details.
    InstanceType string
    Resource type of an ECS instance.
    InstanceTypeOverrides List<Pulumi.AliCloud.Ess.Inputs.ScalingConfigurationInstanceTypeOverride>
    specify the weight of instance type. See instance_type_override below for details.
    InstanceTypes List<string>
    Resource types of an ECS instance.
    InternetChargeType string
    Network billing type, Values: PayByBandwidth or PayByTraffic. Default to PayByBandwidth.
    InternetMaxBandwidthIn int
    Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). The value range is [1,200].
    InternetMaxBandwidthOut int
    Maximum outgoing bandwidth from the public network, measured in Mbps (Mega bit per second). The value range for PayByBandwidth is [0,1024].
    IoOptimized string
    It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.

    Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.

    IsOutdated bool
    Whether to use outdated instance type. Default to false.
    KeyName string
    The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
    KmsEncryptedPassword string
    An KMS encrypts password used to a db account. If the password is filled in, this field will be ignored.
    KmsEncryptionContext Dictionary<string, object>
    An KMS encryption context used to decrypt kms_encrypted_password before creating or updating a db account with kms_encrypted_password. See Encryption Context. It is valid when kms_encrypted_password is set.
    Override bool
    Indicates whether to overwrite the existing data. Default to false.
    Password string
    The password of the ECS instance. The password must be 8 to 30 characters in length. It must contains at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include () ~!@#$%^&*-_+=\|{}[]:;'<>,.?/, The password of Windows-based instances cannot start with a forward slash (/).
    PasswordInherit bool
    Specifies whether to use the password that is predefined in the image. If the PasswordInherit parameter is set to true, the password and kms_encrypted_password will be ignored. You must ensure that the selected image has a password configured.
    ResourceGroupId string
    ID of resource group.
    RoleName string
    Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
    ScalingConfigurationName string
    Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores _, hypens -, and decimal point .. If this parameter value is not specified, the default value is ScalingConfigurationId.
    ScalingGroupId string
    ID of the scaling group of a scaling configuration.
    SecurityGroupId string
    ID of the security group used to create new instance. It is conflict with security_group_ids.
    SecurityGroupIds List<string>
    List IDs of the security group used to create new instances. It is conflict with security_group_id.
    SpotPriceLimits List<Pulumi.AliCloud.Ess.Inputs.ScalingConfigurationSpotPriceLimit>

    Sets the maximum price hourly for instance types. See spot_price_limit below for details.

    NOTE: Before enabling the scaling group, it must have a active scaling configuration.

    NOTE: If the number of attached ECS instances by instance_ids is smaller than MinSize, the Auto Scaling Service will automatically create ECS Pay-As-You-Go instance to cater to MinSize. For example, MinSize=5 and 2 existing ECS instances has been attached to the scaling group. When the scaling group is enabled, it will create 3 instnaces automatically based on its current active scaling configuration.

    NOTE: Restrictions on attaching ECS instances:

    • The attached ECS instances and the scaling group must have the same region and network type(Classic or VPC).
    • The attached ECS instances and the instance with active scaling configurations must have the same instance type.
    • The attached ECS instances must in the running state.
    • The attached ECS instances has not been attached to other scaling groups.
    • The attached ECS instances supports Subscription and Pay-As-You-Go payment methods.

    NOTE: The last scaling configuration can't be set to inactive and deleted alone.

    SpotStrategy string
    The spot strategy for a Pay-As-You-Go instance. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.
    Substitute string
    The another scaling configuration which will be active automatically and replace current configuration when setting active to 'false'. It is invalid when active is 'true'.
    SystemDiskAutoSnapshotPolicyId string
    The id of auto snapshot policy for system disk.
    SystemDiskCategory string
    Category of the system disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd, cloud_essd and cloud. cloud only is used to some no I/O optimized instance. Default to cloud_efficiency.
    SystemDiskDescription string
    The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    SystemDiskEncrypted bool
    Whether to encrypt the system disk.
    SystemDiskName string
    The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    SystemDiskPerformanceLevel string
    The performance level of the ESSD used as the system disk.
    SystemDiskSize int
    Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
    Tags Dictionary<string, object>
    A mapping of tags to assign to the resource. It will be applied for ECS instances finally.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "http://", or "https://" It can be a null string.
    UserData string
    User-defined data to customize the startup behaviors of the ECS instance and to pass data into the ECS instance.
    Active bool
    Whether active current scaling configuration in the specified scaling group. Default to false.
    CreditSpecification string
    Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
    DataDisks []ScalingConfigurationDataDiskArgs
    DataDisk mappings to attach to ecs instance. See data_disk below for details.
    Enable bool
    Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
    ForceDelete bool
    The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
    HostName string
    Hostname of an ECS instance.
    ImageId string
    ID of an image file, indicating the image resource selected when an instance is enabled.
    ImageName string
    Name of an image file, indicating the image resource selected when an instance is enabled.
    InstanceIds []string
    It has been deprecated from version 1.6.0. New resource alicloud.ess.Attachment replaces it.

    Deprecated: Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.

    InstanceName string
    Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
    InstancePatternInfos []ScalingConfigurationInstancePatternInfoArgs
    intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See instance_pattern_info below for details.
    InstanceType string
    Resource type of an ECS instance.
    InstanceTypeOverrides []ScalingConfigurationInstanceTypeOverrideArgs
    specify the weight of instance type. See instance_type_override below for details.
    InstanceTypes []string
    Resource types of an ECS instance.
    InternetChargeType string
    Network billing type, Values: PayByBandwidth or PayByTraffic. Default to PayByBandwidth.
    InternetMaxBandwidthIn int
    Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). The value range is [1,200].
    InternetMaxBandwidthOut int
    Maximum outgoing bandwidth from the public network, measured in Mbps (Mega bit per second). The value range for PayByBandwidth is [0,1024].
    IoOptimized string
    It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.

    Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.

    IsOutdated bool
    Whether to use outdated instance type. Default to false.
    KeyName string
    The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
    KmsEncryptedPassword string
    An KMS encrypts password used to a db account. If the password is filled in, this field will be ignored.
    KmsEncryptionContext map[string]interface{}
    An KMS encryption context used to decrypt kms_encrypted_password before creating or updating a db account with kms_encrypted_password. See Encryption Context. It is valid when kms_encrypted_password is set.
    Override bool
    Indicates whether to overwrite the existing data. Default to false.
    Password string
    The password of the ECS instance. The password must be 8 to 30 characters in length. It must contains at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include () ~!@#$%^&*-_+=\|{}[]:;'<>,.?/, The password of Windows-based instances cannot start with a forward slash (/).
    PasswordInherit bool
    Specifies whether to use the password that is predefined in the image. If the PasswordInherit parameter is set to true, the password and kms_encrypted_password will be ignored. You must ensure that the selected image has a password configured.
    ResourceGroupId string
    ID of resource group.
    RoleName string
    Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
    ScalingConfigurationName string
    Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores _, hypens -, and decimal point .. If this parameter value is not specified, the default value is ScalingConfigurationId.
    ScalingGroupId string
    ID of the scaling group of a scaling configuration.
    SecurityGroupId string
    ID of the security group used to create new instance. It is conflict with security_group_ids.
    SecurityGroupIds []string
    List IDs of the security group used to create new instances. It is conflict with security_group_id.
    SpotPriceLimits []ScalingConfigurationSpotPriceLimitArgs

    Sets the maximum price hourly for instance types. See spot_price_limit below for details.

    NOTE: Before enabling the scaling group, it must have a active scaling configuration.

    NOTE: If the number of attached ECS instances by instance_ids is smaller than MinSize, the Auto Scaling Service will automatically create ECS Pay-As-You-Go instance to cater to MinSize. For example, MinSize=5 and 2 existing ECS instances has been attached to the scaling group. When the scaling group is enabled, it will create 3 instnaces automatically based on its current active scaling configuration.

    NOTE: Restrictions on attaching ECS instances:

    • The attached ECS instances and the scaling group must have the same region and network type(Classic or VPC).
    • The attached ECS instances and the instance with active scaling configurations must have the same instance type.
    • The attached ECS instances must in the running state.
    • The attached ECS instances has not been attached to other scaling groups.
    • The attached ECS instances supports Subscription and Pay-As-You-Go payment methods.

    NOTE: The last scaling configuration can't be set to inactive and deleted alone.

    SpotStrategy string
    The spot strategy for a Pay-As-You-Go instance. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.
    Substitute string
    The another scaling configuration which will be active automatically and replace current configuration when setting active to 'false'. It is invalid when active is 'true'.
    SystemDiskAutoSnapshotPolicyId string
    The id of auto snapshot policy for system disk.
    SystemDiskCategory string
    Category of the system disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd, cloud_essd and cloud. cloud only is used to some no I/O optimized instance. Default to cloud_efficiency.
    SystemDiskDescription string
    The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    SystemDiskEncrypted bool
    Whether to encrypt the system disk.
    SystemDiskName string
    The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    SystemDiskPerformanceLevel string
    The performance level of the ESSD used as the system disk.
    SystemDiskSize int
    Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
    Tags map[string]interface{}
    A mapping of tags to assign to the resource. It will be applied for ECS instances finally.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "http://", or "https://" It can be a null string.
    UserData string
    User-defined data to customize the startup behaviors of the ECS instance and to pass data into the ECS instance.
    active Boolean
    Whether active current scaling configuration in the specified scaling group. Default to false.
    creditSpecification String
    Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
    dataDisks List<ScalingConfigurationDataDisk>
    DataDisk mappings to attach to ecs instance. See data_disk below for details.
    enable Boolean
    Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
    forceDelete Boolean
    The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
    hostName String
    Hostname of an ECS instance.
    imageId String
    ID of an image file, indicating the image resource selected when an instance is enabled.
    imageName String
    Name of an image file, indicating the image resource selected when an instance is enabled.
    instanceIds List<String>
    It has been deprecated from version 1.6.0. New resource alicloud.ess.Attachment replaces it.

    Deprecated: Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.

    instanceName String
    Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
    instancePatternInfos List<ScalingConfigurationInstancePatternInfo>
    intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See instance_pattern_info below for details.
    instanceType String
    Resource type of an ECS instance.
    instanceTypeOverrides List<ScalingConfigurationInstanceTypeOverride>
    specify the weight of instance type. See instance_type_override below for details.
    instanceTypes List<String>
    Resource types of an ECS instance.
    internetChargeType String
    Network billing type, Values: PayByBandwidth or PayByTraffic. Default to PayByBandwidth.
    internetMaxBandwidthIn Integer
    Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). The value range is [1,200].
    internetMaxBandwidthOut Integer
    Maximum outgoing bandwidth from the public network, measured in Mbps (Mega bit per second). The value range for PayByBandwidth is [0,1024].
    ioOptimized String
    It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.

    Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.

    isOutdated Boolean
    Whether to use outdated instance type. Default to false.
    keyName String
    The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
    kmsEncryptedPassword String
    An KMS encrypts password used to a db account. If the password is filled in, this field will be ignored.
    kmsEncryptionContext Map<String,Object>
    An KMS encryption context used to decrypt kms_encrypted_password before creating or updating a db account with kms_encrypted_password. See Encryption Context. It is valid when kms_encrypted_password is set.
    override Boolean
    Indicates whether to overwrite the existing data. Default to false.
    password String
    The password of the ECS instance. The password must be 8 to 30 characters in length. It must contains at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include () ~!@#$%^&*-_+=\|{}[]:;'<>,.?/, The password of Windows-based instances cannot start with a forward slash (/).
    passwordInherit Boolean
    Specifies whether to use the password that is predefined in the image. If the PasswordInherit parameter is set to true, the password and kms_encrypted_password will be ignored. You must ensure that the selected image has a password configured.
    resourceGroupId String
    ID of resource group.
    roleName String
    Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
    scalingConfigurationName String
    Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores _, hypens -, and decimal point .. If this parameter value is not specified, the default value is ScalingConfigurationId.
    scalingGroupId String
    ID of the scaling group of a scaling configuration.
    securityGroupId String
    ID of the security group used to create new instance. It is conflict with security_group_ids.
    securityGroupIds List<String>
    List IDs of the security group used to create new instances. It is conflict with security_group_id.
    spotPriceLimits List<ScalingConfigurationSpotPriceLimit>

    Sets the maximum price hourly for instance types. See spot_price_limit below for details.

    NOTE: Before enabling the scaling group, it must have a active scaling configuration.

    NOTE: If the number of attached ECS instances by instance_ids is smaller than MinSize, the Auto Scaling Service will automatically create ECS Pay-As-You-Go instance to cater to MinSize. For example, MinSize=5 and 2 existing ECS instances has been attached to the scaling group. When the scaling group is enabled, it will create 3 instnaces automatically based on its current active scaling configuration.

    NOTE: Restrictions on attaching ECS instances:

    • The attached ECS instances and the scaling group must have the same region and network type(Classic or VPC).
    • The attached ECS instances and the instance with active scaling configurations must have the same instance type.
    • The attached ECS instances must in the running state.
    • The attached ECS instances has not been attached to other scaling groups.
    • The attached ECS instances supports Subscription and Pay-As-You-Go payment methods.

    NOTE: The last scaling configuration can't be set to inactive and deleted alone.

    spotStrategy String
    The spot strategy for a Pay-As-You-Go instance. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.
    substitute String
    The another scaling configuration which will be active automatically and replace current configuration when setting active to 'false'. It is invalid when active is 'true'.
    systemDiskAutoSnapshotPolicyId String
    The id of auto snapshot policy for system disk.
    systemDiskCategory String
    Category of the system disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd, cloud_essd and cloud. cloud only is used to some no I/O optimized instance. Default to cloud_efficiency.
    systemDiskDescription String
    The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    systemDiskEncrypted Boolean
    Whether to encrypt the system disk.
    systemDiskName String
    The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    systemDiskPerformanceLevel String
    The performance level of the ESSD used as the system disk.
    systemDiskSize Integer
    Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
    tags Map<String,Object>
    A mapping of tags to assign to the resource. It will be applied for ECS instances finally.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "http://", or "https://" It can be a null string.
    userData String
    User-defined data to customize the startup behaviors of the ECS instance and to pass data into the ECS instance.
    active boolean
    Whether active current scaling configuration in the specified scaling group. Default to false.
    creditSpecification string
    Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
    dataDisks ScalingConfigurationDataDisk[]
    DataDisk mappings to attach to ecs instance. See data_disk below for details.
    enable boolean
    Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
    forceDelete boolean
    The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
    hostName string
    Hostname of an ECS instance.
    imageId string
    ID of an image file, indicating the image resource selected when an instance is enabled.
    imageName string
    Name of an image file, indicating the image resource selected when an instance is enabled.
    instanceIds string[]
    It has been deprecated from version 1.6.0. New resource alicloud.ess.Attachment replaces it.

    Deprecated: Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.

    instanceName string
    Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
    instancePatternInfos ScalingConfigurationInstancePatternInfo[]
    intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See instance_pattern_info below for details.
    instanceType string
    Resource type of an ECS instance.
    instanceTypeOverrides ScalingConfigurationInstanceTypeOverride[]
    specify the weight of instance type. See instance_type_override below for details.
    instanceTypes string[]
    Resource types of an ECS instance.
    internetChargeType string
    Network billing type, Values: PayByBandwidth or PayByTraffic. Default to PayByBandwidth.
    internetMaxBandwidthIn number
    Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). The value range is [1,200].
    internetMaxBandwidthOut number
    Maximum outgoing bandwidth from the public network, measured in Mbps (Mega bit per second). The value range for PayByBandwidth is [0,1024].
    ioOptimized string
    It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.

    Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.

    isOutdated boolean
    Whether to use outdated instance type. Default to false.
    keyName string
    The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
    kmsEncryptedPassword string
    An KMS encrypts password used to a db account. If the password is filled in, this field will be ignored.
    kmsEncryptionContext {[key: string]: any}
    An KMS encryption context used to decrypt kms_encrypted_password before creating or updating a db account with kms_encrypted_password. See Encryption Context. It is valid when kms_encrypted_password is set.
    override boolean
    Indicates whether to overwrite the existing data. Default to false.
    password string
    The password of the ECS instance. The password must be 8 to 30 characters in length. It must contains at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include () ~!@#$%^&*-_+=\|{}[]:;'<>,.?/, The password of Windows-based instances cannot start with a forward slash (/).
    passwordInherit boolean
    Specifies whether to use the password that is predefined in the image. If the PasswordInherit parameter is set to true, the password and kms_encrypted_password will be ignored. You must ensure that the selected image has a password configured.
    resourceGroupId string
    ID of resource group.
    roleName string
    Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
    scalingConfigurationName string
    Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores _, hypens -, and decimal point .. If this parameter value is not specified, the default value is ScalingConfigurationId.
    scalingGroupId string
    ID of the scaling group of a scaling configuration.
    securityGroupId string
    ID of the security group used to create new instance. It is conflict with security_group_ids.
    securityGroupIds string[]
    List IDs of the security group used to create new instances. It is conflict with security_group_id.
    spotPriceLimits ScalingConfigurationSpotPriceLimit[]

    Sets the maximum price hourly for instance types. See spot_price_limit below for details.

    NOTE: Before enabling the scaling group, it must have a active scaling configuration.

    NOTE: If the number of attached ECS instances by instance_ids is smaller than MinSize, the Auto Scaling Service will automatically create ECS Pay-As-You-Go instance to cater to MinSize. For example, MinSize=5 and 2 existing ECS instances has been attached to the scaling group. When the scaling group is enabled, it will create 3 instnaces automatically based on its current active scaling configuration.

    NOTE: Restrictions on attaching ECS instances:

    • The attached ECS instances and the scaling group must have the same region and network type(Classic or VPC).
    • The attached ECS instances and the instance with active scaling configurations must have the same instance type.
    • The attached ECS instances must in the running state.
    • The attached ECS instances has not been attached to other scaling groups.
    • The attached ECS instances supports Subscription and Pay-As-You-Go payment methods.

    NOTE: The last scaling configuration can't be set to inactive and deleted alone.

    spotStrategy string
    The spot strategy for a Pay-As-You-Go instance. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.
    substitute string
    The another scaling configuration which will be active automatically and replace current configuration when setting active to 'false'. It is invalid when active is 'true'.
    systemDiskAutoSnapshotPolicyId string
    The id of auto snapshot policy for system disk.
    systemDiskCategory string
    Category of the system disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd, cloud_essd and cloud. cloud only is used to some no I/O optimized instance. Default to cloud_efficiency.
    systemDiskDescription string
    The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    systemDiskEncrypted boolean
    Whether to encrypt the system disk.
    systemDiskName string
    The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    systemDiskPerformanceLevel string
    The performance level of the ESSD used as the system disk.
    systemDiskSize number
    Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
    tags {[key: string]: any}
    A mapping of tags to assign to the resource. It will be applied for ECS instances finally.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "http://", or "https://" It can be a null string.
    userData string
    User-defined data to customize the startup behaviors of the ECS instance and to pass data into the ECS instance.
    active bool
    Whether active current scaling configuration in the specified scaling group. Default to false.
    credit_specification str
    Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
    data_disks Sequence[ScalingConfigurationDataDiskArgs]
    DataDisk mappings to attach to ecs instance. See data_disk below for details.
    enable bool
    Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
    force_delete bool
    The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
    host_name str
    Hostname of an ECS instance.
    image_id str
    ID of an image file, indicating the image resource selected when an instance is enabled.
    image_name str
    Name of an image file, indicating the image resource selected when an instance is enabled.
    instance_ids Sequence[str]
    It has been deprecated from version 1.6.0. New resource alicloud.ess.Attachment replaces it.

    Deprecated: Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.

    instance_name str
    Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
    instance_pattern_infos Sequence[ScalingConfigurationInstancePatternInfoArgs]
    intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See instance_pattern_info below for details.
    instance_type str
    Resource type of an ECS instance.
    instance_type_overrides Sequence[ScalingConfigurationInstanceTypeOverrideArgs]
    specify the weight of instance type. See instance_type_override below for details.
    instance_types Sequence[str]
    Resource types of an ECS instance.
    internet_charge_type str
    Network billing type, Values: PayByBandwidth or PayByTraffic. Default to PayByBandwidth.
    internet_max_bandwidth_in int
    Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). The value range is [1,200].
    internet_max_bandwidth_out int
    Maximum outgoing bandwidth from the public network, measured in Mbps (Mega bit per second). The value range for PayByBandwidth is [0,1024].
    io_optimized str
    It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.

    Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.

    is_outdated bool
    Whether to use outdated instance type. Default to false.
    key_name str
    The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
    kms_encrypted_password str
    An KMS encrypts password used to a db account. If the password is filled in, this field will be ignored.
    kms_encryption_context Mapping[str, Any]
    An KMS encryption context used to decrypt kms_encrypted_password before creating or updating a db account with kms_encrypted_password. See Encryption Context. It is valid when kms_encrypted_password is set.
    override bool
    Indicates whether to overwrite the existing data. Default to false.
    password str
    The password of the ECS instance. The password must be 8 to 30 characters in length. It must contains at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include () ~!@#$%^&*-_+=\|{}[]:;'<>,.?/, The password of Windows-based instances cannot start with a forward slash (/).
    password_inherit bool
    Specifies whether to use the password that is predefined in the image. If the PasswordInherit parameter is set to true, the password and kms_encrypted_password will be ignored. You must ensure that the selected image has a password configured.
    resource_group_id str
    ID of resource group.
    role_name str
    Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
    scaling_configuration_name str
    Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores _, hypens -, and decimal point .. If this parameter value is not specified, the default value is ScalingConfigurationId.
    scaling_group_id str
    ID of the scaling group of a scaling configuration.
    security_group_id str
    ID of the security group used to create new instance. It is conflict with security_group_ids.
    security_group_ids Sequence[str]
    List IDs of the security group used to create new instances. It is conflict with security_group_id.
    spot_price_limits Sequence[ScalingConfigurationSpotPriceLimitArgs]

    Sets the maximum price hourly for instance types. See spot_price_limit below for details.

    NOTE: Before enabling the scaling group, it must have a active scaling configuration.

    NOTE: If the number of attached ECS instances by instance_ids is smaller than MinSize, the Auto Scaling Service will automatically create ECS Pay-As-You-Go instance to cater to MinSize. For example, MinSize=5 and 2 existing ECS instances has been attached to the scaling group. When the scaling group is enabled, it will create 3 instnaces automatically based on its current active scaling configuration.

    NOTE: Restrictions on attaching ECS instances:

    • The attached ECS instances and the scaling group must have the same region and network type(Classic or VPC).
    • The attached ECS instances and the instance with active scaling configurations must have the same instance type.
    • The attached ECS instances must in the running state.
    • The attached ECS instances has not been attached to other scaling groups.
    • The attached ECS instances supports Subscription and Pay-As-You-Go payment methods.

    NOTE: The last scaling configuration can't be set to inactive and deleted alone.

    spot_strategy str
    The spot strategy for a Pay-As-You-Go instance. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.
    substitute str
    The another scaling configuration which will be active automatically and replace current configuration when setting active to 'false'. It is invalid when active is 'true'.
    system_disk_auto_snapshot_policy_id str
    The id of auto snapshot policy for system disk.
    system_disk_category str
    Category of the system disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd, cloud_essd and cloud. cloud only is used to some no I/O optimized instance. Default to cloud_efficiency.
    system_disk_description str
    The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    system_disk_encrypted bool
    Whether to encrypt the system disk.
    system_disk_name str
    The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    system_disk_performance_level str
    The performance level of the ESSD used as the system disk.
    system_disk_size int
    Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
    tags Mapping[str, Any]
    A mapping of tags to assign to the resource. It will be applied for ECS instances finally.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "http://", or "https://" It can be a null string.
    user_data str
    User-defined data to customize the startup behaviors of the ECS instance and to pass data into the ECS instance.
    active Boolean
    Whether active current scaling configuration in the specified scaling group. Default to false.
    creditSpecification String
    Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.
    dataDisks List<Property Map>
    DataDisk mappings to attach to ecs instance. See data_disk below for details.
    enable Boolean
    Whether enable the specified scaling group(make it active) to which the current scaling configuration belongs.
    forceDelete Boolean
    The last scaling configuration will be deleted forcibly with deleting its scaling group. Default to false.
    hostName String
    Hostname of an ECS instance.
    imageId String
    ID of an image file, indicating the image resource selected when an instance is enabled.
    imageName String
    Name of an image file, indicating the image resource selected when an instance is enabled.
    instanceIds List<String>
    It has been deprecated from version 1.6.0. New resource alicloud.ess.Attachment replaces it.

    Deprecated: Field 'instance_ids' has been deprecated from provider version 1.6.0. New resource 'alicloud_ess_attachment' replaces it.

    instanceName String
    Name of an ECS instance. Default to "ESS-Instance". It is valid from version 1.7.1.
    instancePatternInfos List<Property Map>
    intelligent configuration mode. In this mode, you only need to specify the number of vCPUs, memory size, instance family, and maximum price. The system selects an instance type that is provided at the lowest price based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode helps reduce the failures of scale-out activities caused by insufficient inventory of instance types. See instance_pattern_info below for details.
    instanceType String
    Resource type of an ECS instance.
    instanceTypeOverrides List<Property Map>
    specify the weight of instance type. See instance_type_override below for details.
    instanceTypes List<String>
    Resource types of an ECS instance.
    internetChargeType String
    Network billing type, Values: PayByBandwidth or PayByTraffic. Default to PayByBandwidth.
    internetMaxBandwidthIn Number
    Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). The value range is [1,200].
    internetMaxBandwidthOut Number
    Maximum outgoing bandwidth from the public network, measured in Mbps (Mega bit per second). The value range for PayByBandwidth is [0,1024].
    ioOptimized String
    It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.

    Deprecated: Attribute io_optimized has been deprecated on instance resource. All the launched alicloud instances will be IO optimized. Suggest to remove it from your template.

    isOutdated Boolean
    Whether to use outdated instance type. Default to false.
    keyName String
    The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
    kmsEncryptedPassword String
    An KMS encrypts password used to a db account. If the password is filled in, this field will be ignored.
    kmsEncryptionContext Map<Any>
    An KMS encryption context used to decrypt kms_encrypted_password before creating or updating a db account with kms_encrypted_password. See Encryption Context. It is valid when kms_encrypted_password is set.
    override Boolean
    Indicates whether to overwrite the existing data. Default to false.
    password String
    The password of the ECS instance. The password must be 8 to 30 characters in length. It must contains at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include () ~!@#$%^&*-_+=\|{}[]:;'<>,.?/, The password of Windows-based instances cannot start with a forward slash (/).
    passwordInherit Boolean
    Specifies whether to use the password that is predefined in the image. If the PasswordInherit parameter is set to true, the password and kms_encrypted_password will be ignored. You must ensure that the selected image has a password configured.
    resourceGroupId String
    ID of resource group.
    roleName String
    Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
    scalingConfigurationName String
    Name shown for the scheduled task. which must contain 2-64 characters (English or Chinese), starting with numbers, English letters or Chinese characters, and can contain number, underscores _, hypens -, and decimal point .. If this parameter value is not specified, the default value is ScalingConfigurationId.
    scalingGroupId String
    ID of the scaling group of a scaling configuration.
    securityGroupId String
    ID of the security group used to create new instance. It is conflict with security_group_ids.
    securityGroupIds List<String>
    List IDs of the security group used to create new instances. It is conflict with security_group_id.
    spotPriceLimits List<Property Map>

    Sets the maximum price hourly for instance types. See spot_price_limit below for details.

    NOTE: Before enabling the scaling group, it must have a active scaling configuration.

    NOTE: If the number of attached ECS instances by instance_ids is smaller than MinSize, the Auto Scaling Service will automatically create ECS Pay-As-You-Go instance to cater to MinSize. For example, MinSize=5 and 2 existing ECS instances has been attached to the scaling group. When the scaling group is enabled, it will create 3 instnaces automatically based on its current active scaling configuration.

    NOTE: Restrictions on attaching ECS instances:

    • The attached ECS instances and the scaling group must have the same region and network type(Classic or VPC).
    • The attached ECS instances and the instance with active scaling configurations must have the same instance type.
    • The attached ECS instances must in the running state.
    • The attached ECS instances has not been attached to other scaling groups.
    • The attached ECS instances supports Subscription and Pay-As-You-Go payment methods.

    NOTE: The last scaling configuration can't be set to inactive and deleted alone.

    spotStrategy String
    The spot strategy for a Pay-As-You-Go instance. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.
    substitute String
    The another scaling configuration which will be active automatically and replace current configuration when setting active to 'false'. It is invalid when active is 'true'.
    systemDiskAutoSnapshotPolicyId String
    The id of auto snapshot policy for system disk.
    systemDiskCategory String
    Category of the system disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd, cloud_essd and cloud. cloud only is used to some no I/O optimized instance. Default to cloud_efficiency.
    systemDiskDescription String
    The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    systemDiskEncrypted Boolean
    Whether to encrypt the system disk.
    systemDiskName String
    The name of the system disk. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    systemDiskPerformanceLevel String
    The performance level of the ESSD used as the system disk.
    systemDiskSize Number
    Size of system disk, in GiB. Optional values: cloud: 20-500, cloud_efficiency: 20-500, cloud_ssd: 20-500, ephemeral_ssd: 20-500 The default value is max{40, ImageSize}. If this parameter is set, the system disk size must be greater than or equal to max{40, ImageSize}.
    tags Map<Any>
    A mapping of tags to assign to the resource. It will be applied for ECS instances finally.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "http://", or "https://" It can be a null string.
    userData String
    User-defined data to customize the startup behaviors of the ECS instance and to pass data into the ECS instance.

    Supporting Types

    ScalingConfigurationDataDisk, ScalingConfigurationDataDiskArgs

    AutoSnapshotPolicyId string
    The id of auto snapshot policy for data disk.
    Category string
    Category of data disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd , cloud_essd and cloud.
    DeleteWithInstance bool
    Whether to delete data disks attached on ecs when release ecs instance. Optional value: true or false, default to true.
    Description string
    The description of data disk N. Valid values of N: 1 to 16. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    Device string
    The mount point of data disk N. Valid values of N: 1 to 16. If this parameter is not specified, the system automatically allocates a mount point to created ECS instances. The name of the mount point ranges from /dev/xvdb to /dev/xvdz in alphabetical order.

    Deprecated: Attribute device has been deprecated on disk attachment resource. Suggest to remove it from your template.

    Encrypted bool
    Specifies whether data disk N is to be encrypted. Valid values of N: 1 to 16. Valid values: true: encrypted, false: not encrypted. Default value: false.
    KmsKeyId string
    The CMK ID for data disk N. Valid values of N: 1 to 16.
    Name string
    The name of data disk N. Valid values of N: 1 to 16. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    PerformanceLevel string
    The performance level of the ESSD used as data disk.
    Size int
    Size of data disk, in GB. The value ranges [5,2000] for a cloud disk, [5,1024] for an ephemeral disk, [5,800] for an ephemeral_ssd disk, [20,32768] for cloud_efficiency, cloud_ssd, cloud_essd disk.
    SnapshotId string
    Snapshot used for creating the data disk. If this parameter is specified, the size parameter is neglected, and the size of the created disk is the size of the snapshot.
    AutoSnapshotPolicyId string
    The id of auto snapshot policy for data disk.
    Category string
    Category of data disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd , cloud_essd and cloud.
    DeleteWithInstance bool
    Whether to delete data disks attached on ecs when release ecs instance. Optional value: true or false, default to true.
    Description string
    The description of data disk N. Valid values of N: 1 to 16. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    Device string
    The mount point of data disk N. Valid values of N: 1 to 16. If this parameter is not specified, the system automatically allocates a mount point to created ECS instances. The name of the mount point ranges from /dev/xvdb to /dev/xvdz in alphabetical order.

    Deprecated: Attribute device has been deprecated on disk attachment resource. Suggest to remove it from your template.

    Encrypted bool
    Specifies whether data disk N is to be encrypted. Valid values of N: 1 to 16. Valid values: true: encrypted, false: not encrypted. Default value: false.
    KmsKeyId string
    The CMK ID for data disk N. Valid values of N: 1 to 16.
    Name string
    The name of data disk N. Valid values of N: 1 to 16. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    PerformanceLevel string
    The performance level of the ESSD used as data disk.
    Size int
    Size of data disk, in GB. The value ranges [5,2000] for a cloud disk, [5,1024] for an ephemeral disk, [5,800] for an ephemeral_ssd disk, [20,32768] for cloud_efficiency, cloud_ssd, cloud_essd disk.
    SnapshotId string
    Snapshot used for creating the data disk. If this parameter is specified, the size parameter is neglected, and the size of the created disk is the size of the snapshot.
    autoSnapshotPolicyId String
    The id of auto snapshot policy for data disk.
    category String
    Category of data disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd , cloud_essd and cloud.
    deleteWithInstance Boolean
    Whether to delete data disks attached on ecs when release ecs instance. Optional value: true or false, default to true.
    description String
    The description of data disk N. Valid values of N: 1 to 16. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    device String
    The mount point of data disk N. Valid values of N: 1 to 16. If this parameter is not specified, the system automatically allocates a mount point to created ECS instances. The name of the mount point ranges from /dev/xvdb to /dev/xvdz in alphabetical order.

    Deprecated: Attribute device has been deprecated on disk attachment resource. Suggest to remove it from your template.

    encrypted Boolean
    Specifies whether data disk N is to be encrypted. Valid values of N: 1 to 16. Valid values: true: encrypted, false: not encrypted. Default value: false.
    kmsKeyId String
    The CMK ID for data disk N. Valid values of N: 1 to 16.
    name String
    The name of data disk N. Valid values of N: 1 to 16. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    performanceLevel String
    The performance level of the ESSD used as data disk.
    size Integer
    Size of data disk, in GB. The value ranges [5,2000] for a cloud disk, [5,1024] for an ephemeral disk, [5,800] for an ephemeral_ssd disk, [20,32768] for cloud_efficiency, cloud_ssd, cloud_essd disk.
    snapshotId String
    Snapshot used for creating the data disk. If this parameter is specified, the size parameter is neglected, and the size of the created disk is the size of the snapshot.
    autoSnapshotPolicyId string
    The id of auto snapshot policy for data disk.
    category string
    Category of data disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd , cloud_essd and cloud.
    deleteWithInstance boolean
    Whether to delete data disks attached on ecs when release ecs instance. Optional value: true or false, default to true.
    description string
    The description of data disk N. Valid values of N: 1 to 16. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    device string
    The mount point of data disk N. Valid values of N: 1 to 16. If this parameter is not specified, the system automatically allocates a mount point to created ECS instances. The name of the mount point ranges from /dev/xvdb to /dev/xvdz in alphabetical order.

    Deprecated: Attribute device has been deprecated on disk attachment resource. Suggest to remove it from your template.

    encrypted boolean
    Specifies whether data disk N is to be encrypted. Valid values of N: 1 to 16. Valid values: true: encrypted, false: not encrypted. Default value: false.
    kmsKeyId string
    The CMK ID for data disk N. Valid values of N: 1 to 16.
    name string
    The name of data disk N. Valid values of N: 1 to 16. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    performanceLevel string
    The performance level of the ESSD used as data disk.
    size number
    Size of data disk, in GB. The value ranges [5,2000] for a cloud disk, [5,1024] for an ephemeral disk, [5,800] for an ephemeral_ssd disk, [20,32768] for cloud_efficiency, cloud_ssd, cloud_essd disk.
    snapshotId string
    Snapshot used for creating the data disk. If this parameter is specified, the size parameter is neglected, and the size of the created disk is the size of the snapshot.
    auto_snapshot_policy_id str
    The id of auto snapshot policy for data disk.
    category str
    Category of data disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd , cloud_essd and cloud.
    delete_with_instance bool
    Whether to delete data disks attached on ecs when release ecs instance. Optional value: true or false, default to true.
    description str
    The description of data disk N. Valid values of N: 1 to 16. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    device str
    The mount point of data disk N. Valid values of N: 1 to 16. If this parameter is not specified, the system automatically allocates a mount point to created ECS instances. The name of the mount point ranges from /dev/xvdb to /dev/xvdz in alphabetical order.

    Deprecated: Attribute device has been deprecated on disk attachment resource. Suggest to remove it from your template.

    encrypted bool
    Specifies whether data disk N is to be encrypted. Valid values of N: 1 to 16. Valid values: true: encrypted, false: not encrypted. Default value: false.
    kms_key_id str
    The CMK ID for data disk N. Valid values of N: 1 to 16.
    name str
    The name of data disk N. Valid values of N: 1 to 16. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    performance_level str
    The performance level of the ESSD used as data disk.
    size int
    Size of data disk, in GB. The value ranges [5,2000] for a cloud disk, [5,1024] for an ephemeral disk, [5,800] for an ephemeral_ssd disk, [20,32768] for cloud_efficiency, cloud_ssd, cloud_essd disk.
    snapshot_id str
    Snapshot used for creating the data disk. If this parameter is specified, the size parameter is neglected, and the size of the created disk is the size of the snapshot.
    autoSnapshotPolicyId String
    The id of auto snapshot policy for data disk.
    category String
    Category of data disk. The parameter value options are ephemeral_ssd, cloud_efficiency, cloud_ssd , cloud_essd and cloud.
    deleteWithInstance Boolean
    Whether to delete data disks attached on ecs when release ecs instance. Optional value: true or false, default to true.
    description String
    The description of data disk N. Valid values of N: 1 to 16. The description must be 2 to 256 characters in length and cannot start with http:// or https://.
    device String
    The mount point of data disk N. Valid values of N: 1 to 16. If this parameter is not specified, the system automatically allocates a mount point to created ECS instances. The name of the mount point ranges from /dev/xvdb to /dev/xvdz in alphabetical order.

    Deprecated: Attribute device has been deprecated on disk attachment resource. Suggest to remove it from your template.

    encrypted Boolean
    Specifies whether data disk N is to be encrypted. Valid values of N: 1 to 16. Valid values: true: encrypted, false: not encrypted. Default value: false.
    kmsKeyId String
    The CMK ID for data disk N. Valid values of N: 1 to 16.
    name String
    The name of data disk N. Valid values of N: 1 to 16. It must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-). Default value: null.
    performanceLevel String
    The performance level of the ESSD used as data disk.
    size Number
    Size of data disk, in GB. The value ranges [5,2000] for a cloud disk, [5,1024] for an ephemeral disk, [5,800] for an ephemeral_ssd disk, [20,32768] for cloud_efficiency, cloud_ssd, cloud_essd disk.
    snapshotId String
    Snapshot used for creating the data disk. If this parameter is specified, the size parameter is neglected, and the size of the created disk is the size of the snapshot.

    ScalingConfigurationInstancePatternInfo, ScalingConfigurationInstancePatternInfoArgs

    Architectures List<string>
    Architecture N of instance type N. Valid values: X86, Heterogeneous, BareMetal, Arm, SuperComputeCluster.
    BurstablePerformance string
    Specifies whether to include burstable instance types. Valid values: Exclude, Include, Required.
    Cores int
    The number of vCPUs that are specified for an instance type in instancePatternInfo.
    ExcludedInstanceTypes List<string>
    Instance type N that you want to exclude. You can use wildcard characters, such as an asterisk (*), to exclude an instance type or an instance family.
    InstanceFamilyLevel string
    The instance family level in instancePatternInfo.
    MaxPrice double
    The maximum hourly price for a pay-as-you-go instance or a preemptible instance in instancePatternInfo.
    Memory double
    The memory size that is specified for an instance type in instancePatternInfo.
    Architectures []string
    Architecture N of instance type N. Valid values: X86, Heterogeneous, BareMetal, Arm, SuperComputeCluster.
    BurstablePerformance string
    Specifies whether to include burstable instance types. Valid values: Exclude, Include, Required.
    Cores int
    The number of vCPUs that are specified for an instance type in instancePatternInfo.
    ExcludedInstanceTypes []string
    Instance type N that you want to exclude. You can use wildcard characters, such as an asterisk (*), to exclude an instance type or an instance family.
    InstanceFamilyLevel string
    The instance family level in instancePatternInfo.
    MaxPrice float64
    The maximum hourly price for a pay-as-you-go instance or a preemptible instance in instancePatternInfo.
    Memory float64
    The memory size that is specified for an instance type in instancePatternInfo.
    architectures List<String>
    Architecture N of instance type N. Valid values: X86, Heterogeneous, BareMetal, Arm, SuperComputeCluster.
    burstablePerformance String
    Specifies whether to include burstable instance types. Valid values: Exclude, Include, Required.
    cores Integer
    The number of vCPUs that are specified for an instance type in instancePatternInfo.
    excludedInstanceTypes List<String>
    Instance type N that you want to exclude. You can use wildcard characters, such as an asterisk (*), to exclude an instance type or an instance family.
    instanceFamilyLevel String
    The instance family level in instancePatternInfo.
    maxPrice Double
    The maximum hourly price for a pay-as-you-go instance or a preemptible instance in instancePatternInfo.
    memory Double
    The memory size that is specified for an instance type in instancePatternInfo.
    architectures string[]
    Architecture N of instance type N. Valid values: X86, Heterogeneous, BareMetal, Arm, SuperComputeCluster.
    burstablePerformance string
    Specifies whether to include burstable instance types. Valid values: Exclude, Include, Required.
    cores number
    The number of vCPUs that are specified for an instance type in instancePatternInfo.
    excludedInstanceTypes string[]
    Instance type N that you want to exclude. You can use wildcard characters, such as an asterisk (*), to exclude an instance type or an instance family.
    instanceFamilyLevel string
    The instance family level in instancePatternInfo.
    maxPrice number
    The maximum hourly price for a pay-as-you-go instance or a preemptible instance in instancePatternInfo.
    memory number
    The memory size that is specified for an instance type in instancePatternInfo.
    architectures Sequence[str]
    Architecture N of instance type N. Valid values: X86, Heterogeneous, BareMetal, Arm, SuperComputeCluster.
    burstable_performance str
    Specifies whether to include burstable instance types. Valid values: Exclude, Include, Required.
    cores int
    The number of vCPUs that are specified for an instance type in instancePatternInfo.
    excluded_instance_types Sequence[str]
    Instance type N that you want to exclude. You can use wildcard characters, such as an asterisk (*), to exclude an instance type or an instance family.
    instance_family_level str
    The instance family level in instancePatternInfo.
    max_price float
    The maximum hourly price for a pay-as-you-go instance or a preemptible instance in instancePatternInfo.
    memory float
    The memory size that is specified for an instance type in instancePatternInfo.
    architectures List<String>
    Architecture N of instance type N. Valid values: X86, Heterogeneous, BareMetal, Arm, SuperComputeCluster.
    burstablePerformance String
    Specifies whether to include burstable instance types. Valid values: Exclude, Include, Required.
    cores Number
    The number of vCPUs that are specified for an instance type in instancePatternInfo.
    excludedInstanceTypes List<String>
    Instance type N that you want to exclude. You can use wildcard characters, such as an asterisk (*), to exclude an instance type or an instance family.
    instanceFamilyLevel String
    The instance family level in instancePatternInfo.
    maxPrice Number
    The maximum hourly price for a pay-as-you-go instance or a preemptible instance in instancePatternInfo.
    memory Number
    The memory size that is specified for an instance type in instancePatternInfo.

    ScalingConfigurationInstanceTypeOverride, ScalingConfigurationInstanceTypeOverrideArgs

    InstanceType string
    The is specified for an instance type in instanceTypeOverride.
    WeightedCapacity int
    The weight of instance type in instanceTypeOverride.
    InstanceType string
    The is specified for an instance type in instanceTypeOverride.
    WeightedCapacity int
    The weight of instance type in instanceTypeOverride.
    instanceType String
    The is specified for an instance type in instanceTypeOverride.
    weightedCapacity Integer
    The weight of instance type in instanceTypeOverride.
    instanceType string
    The is specified for an instance type in instanceTypeOverride.
    weightedCapacity number
    The weight of instance type in instanceTypeOverride.
    instance_type str
    The is specified for an instance type in instanceTypeOverride.
    weighted_capacity int
    The weight of instance type in instanceTypeOverride.
    instanceType String
    The is specified for an instance type in instanceTypeOverride.
    weightedCapacity Number
    The weight of instance type in instanceTypeOverride.

    ScalingConfigurationSpotPriceLimit, ScalingConfigurationSpotPriceLimitArgs

    InstanceType string
    Resource type of an ECS instance.
    PriceLimit double
    Price limit hourly of instance type, 2 decimals is allowed at most.
    InstanceType string
    Resource type of an ECS instance.
    PriceLimit float64
    Price limit hourly of instance type, 2 decimals is allowed at most.
    instanceType String
    Resource type of an ECS instance.
    priceLimit Double
    Price limit hourly of instance type, 2 decimals is allowed at most.
    instanceType string
    Resource type of an ECS instance.
    priceLimit number
    Price limit hourly of instance type, 2 decimals is allowed at most.
    instance_type str
    Resource type of an ECS instance.
    price_limit float
    Price limit hourly of instance type, 2 decimals is allowed at most.
    instanceType String
    Resource type of an ECS instance.
    priceLimit Number
    Price limit hourly of instance type, 2 decimals is allowed at most.

    Import

    ESS scaling configuration can be imported using the id, e.g.

    $ pulumi import alicloud:ess/scalingConfiguration:ScalingConfiguration example asg-abc123456
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Alibaba Cloud pulumi/pulumi-alicloud
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the alicloud Terraform Provider.
    alicloud logo
    Alibaba Cloud v3.57.0 published on Saturday, Jun 15, 2024 by Pulumi