1. Packages
  2. Flexibleengine Provider
  3. API Docs
  4. AsGroup
flexibleengine 1.46.0 published on Monday, Apr 14, 2025 by flexibleenginecloud

flexibleengine.AsGroup

Explore with Pulumi AI

flexibleengine logo
flexibleengine 1.46.0 published on Monday, Apr 14, 2025 by flexibleenginecloud

    Manages a V1 Autoscaling Group resource within flexibleengine.

    Example Usage

    Basic Autoscaling Group

    import * as pulumi from "@pulumi/pulumi";
    import * as flexibleengine from "@pulumi/flexibleengine";
    
    const exampleVpc = new flexibleengine.VpcV1("exampleVpc", {cidr: "192.168.0.0/16"});
    const exampleSubnet = new flexibleengine.VpcSubnetV1("exampleSubnet", {
        cidr: "192.168.0.0/24",
        gatewayIp: "192.168.0.1",
        vpcId: exampleVpc.vpcV1Id,
    });
    const myAsGroup = new flexibleengine.AsGroup("myAsGroup", {
        scalingGroupName: "my_as_group",
        desireInstanceNumber: 2,
        minInstanceNumber: 0,
        maxInstanceNumber: 10,
        scalingConfigurationId: "37e310f5-db9d-446e-9135-c625f9c2bbfc",
        vpcId: exampleVpc.vpcV1Id,
        deletePublicip: true,
        deleteInstances: "yes",
        networks: [{
            id: exampleSubnet.vpcSubnetV1Id,
        }],
        securityGroups: [{
            id: "45e4c6de-6bf0-4843-8953-2babde3d4810",
        }],
    });
    
    import pulumi
    import pulumi_flexibleengine as flexibleengine
    
    example_vpc = flexibleengine.VpcV1("exampleVpc", cidr="192.168.0.0/16")
    example_subnet = flexibleengine.VpcSubnetV1("exampleSubnet",
        cidr="192.168.0.0/24",
        gateway_ip="192.168.0.1",
        vpc_id=example_vpc.vpc_v1_id)
    my_as_group = flexibleengine.AsGroup("myAsGroup",
        scaling_group_name="my_as_group",
        desire_instance_number=2,
        min_instance_number=0,
        max_instance_number=10,
        scaling_configuration_id="37e310f5-db9d-446e-9135-c625f9c2bbfc",
        vpc_id=example_vpc.vpc_v1_id,
        delete_publicip=True,
        delete_instances="yes",
        networks=[{
            "id": example_subnet.vpc_subnet_v1_id,
        }],
        security_groups=[{
            "id": "45e4c6de-6bf0-4843-8953-2babde3d4810",
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/flexibleengine/flexibleengine"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		exampleVpc, err := flexibleengine.NewVpcV1(ctx, "exampleVpc", &flexibleengine.VpcV1Args{
    			Cidr: pulumi.String("192.168.0.0/16"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleSubnet, err := flexibleengine.NewVpcSubnetV1(ctx, "exampleSubnet", &flexibleengine.VpcSubnetV1Args{
    			Cidr:      pulumi.String("192.168.0.0/24"),
    			GatewayIp: pulumi.String("192.168.0.1"),
    			VpcId:     exampleVpc.VpcV1Id,
    		})
    		if err != nil {
    			return err
    		}
    		_, err = flexibleengine.NewAsGroup(ctx, "myAsGroup", &flexibleengine.AsGroupArgs{
    			ScalingGroupName:       pulumi.String("my_as_group"),
    			DesireInstanceNumber:   pulumi.Float64(2),
    			MinInstanceNumber:      pulumi.Float64(0),
    			MaxInstanceNumber:      pulumi.Float64(10),
    			ScalingConfigurationId: pulumi.String("37e310f5-db9d-446e-9135-c625f9c2bbfc"),
    			VpcId:                  exampleVpc.VpcV1Id,
    			DeletePublicip:         pulumi.Bool(true),
    			DeleteInstances:        pulumi.String("yes"),
    			Networks: flexibleengine.AsGroupNetworkArray{
    				&flexibleengine.AsGroupNetworkArgs{
    					Id: exampleSubnet.VpcSubnetV1Id,
    				},
    			},
    			SecurityGroups: flexibleengine.AsGroupSecurityGroupArray{
    				&flexibleengine.AsGroupSecurityGroupArgs{
    					Id: pulumi.String("45e4c6de-6bf0-4843-8953-2babde3d4810"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Flexibleengine = Pulumi.Flexibleengine;
    
    return await Deployment.RunAsync(() => 
    {
        var exampleVpc = new Flexibleengine.VpcV1("exampleVpc", new()
        {
            Cidr = "192.168.0.0/16",
        });
    
        var exampleSubnet = new Flexibleengine.VpcSubnetV1("exampleSubnet", new()
        {
            Cidr = "192.168.0.0/24",
            GatewayIp = "192.168.0.1",
            VpcId = exampleVpc.VpcV1Id,
        });
    
        var myAsGroup = new Flexibleengine.AsGroup("myAsGroup", new()
        {
            ScalingGroupName = "my_as_group",
            DesireInstanceNumber = 2,
            MinInstanceNumber = 0,
            MaxInstanceNumber = 10,
            ScalingConfigurationId = "37e310f5-db9d-446e-9135-c625f9c2bbfc",
            VpcId = exampleVpc.VpcV1Id,
            DeletePublicip = true,
            DeleteInstances = "yes",
            Networks = new[]
            {
                new Flexibleengine.Inputs.AsGroupNetworkArgs
                {
                    Id = exampleSubnet.VpcSubnetV1Id,
                },
            },
            SecurityGroups = new[]
            {
                new Flexibleengine.Inputs.AsGroupSecurityGroupArgs
                {
                    Id = "45e4c6de-6bf0-4843-8953-2babde3d4810",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.flexibleengine.VpcV1;
    import com.pulumi.flexibleengine.VpcV1Args;
    import com.pulumi.flexibleengine.VpcSubnetV1;
    import com.pulumi.flexibleengine.VpcSubnetV1Args;
    import com.pulumi.flexibleengine.AsGroup;
    import com.pulumi.flexibleengine.AsGroupArgs;
    import com.pulumi.flexibleengine.inputs.AsGroupNetworkArgs;
    import com.pulumi.flexibleengine.inputs.AsGroupSecurityGroupArgs;
    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) {
            var exampleVpc = new VpcV1("exampleVpc", VpcV1Args.builder()
                .cidr("192.168.0.0/16")
                .build());
    
            var exampleSubnet = new VpcSubnetV1("exampleSubnet", VpcSubnetV1Args.builder()
                .cidr("192.168.0.0/24")
                .gatewayIp("192.168.0.1")
                .vpcId(exampleVpc.vpcV1Id())
                .build());
    
            var myAsGroup = new AsGroup("myAsGroup", AsGroupArgs.builder()
                .scalingGroupName("my_as_group")
                .desireInstanceNumber(2)
                .minInstanceNumber(0)
                .maxInstanceNumber(10)
                .scalingConfigurationId("37e310f5-db9d-446e-9135-c625f9c2bbfc")
                .vpcId(exampleVpc.vpcV1Id())
                .deletePublicip(true)
                .deleteInstances("yes")
                .networks(AsGroupNetworkArgs.builder()
                    .id(exampleSubnet.vpcSubnetV1Id())
                    .build())
                .securityGroups(AsGroupSecurityGroupArgs.builder()
                    .id("45e4c6de-6bf0-4843-8953-2babde3d4810")
                    .build())
                .build());
    
        }
    }
    
    resources:
      exampleVpc:
        type: flexibleengine:VpcV1
        properties:
          cidr: 192.168.0.0/16
      exampleSubnet:
        type: flexibleengine:VpcSubnetV1
        properties:
          cidr: 192.168.0.0/24
          gatewayIp: 192.168.0.1
          vpcId: ${exampleVpc.vpcV1Id}
      myAsGroup:
        type: flexibleengine:AsGroup
        properties:
          scalingGroupName: my_as_group
          desireInstanceNumber: 2
          minInstanceNumber: 0
          maxInstanceNumber: 10
          scalingConfigurationId: 37e310f5-db9d-446e-9135-c625f9c2bbfc
          vpcId: ${exampleVpc.vpcV1Id}
          deletePublicip: true
          deleteInstances: yes
          networks:
            - id: ${exampleSubnet.vpcSubnetV1Id}
          securityGroups:
            - id: 45e4c6de-6bf0-4843-8953-2babde3d4810
    

    Autoscaling Group Only Remove Members When Scaling Down

    import * as pulumi from "@pulumi/pulumi";
    import * as flexibleengine from "@pulumi/flexibleengine";
    
    const exampleVpc = new flexibleengine.VpcV1("exampleVpc", {cidr: "192.168.0.0/16"});
    const exampleSubnet = new flexibleengine.VpcSubnetV1("exampleSubnet", {
        cidr: "192.168.0.0/24",
        gatewayIp: "192.168.0.1",
        vpcId: exampleVpc.vpcV1Id,
    });
    const myAsGroupOnlyRemoveMembers = new flexibleengine.AsGroup("myAsGroupOnlyRemoveMembers", {
        scalingGroupName: "my_as_group_only_remove_members",
        desireInstanceNumber: 2,
        minInstanceNumber: 0,
        maxInstanceNumber: 10,
        scalingConfigurationId: "37e310f5-db9d-446e-9135-c625f9c2bbfc",
        vpcId: exampleVpc.vpcV1Id,
        deletePublicip: true,
        deleteInstances: "no",
        networks: [{
            id: exampleSubnet.vpcSubnetV1Id,
        }],
        securityGroups: [{
            id: "45e4c6de-6bf0-4843-8953-2babde3d4810",
        }],
    });
    
    import pulumi
    import pulumi_flexibleengine as flexibleengine
    
    example_vpc = flexibleengine.VpcV1("exampleVpc", cidr="192.168.0.0/16")
    example_subnet = flexibleengine.VpcSubnetV1("exampleSubnet",
        cidr="192.168.0.0/24",
        gateway_ip="192.168.0.1",
        vpc_id=example_vpc.vpc_v1_id)
    my_as_group_only_remove_members = flexibleengine.AsGroup("myAsGroupOnlyRemoveMembers",
        scaling_group_name="my_as_group_only_remove_members",
        desire_instance_number=2,
        min_instance_number=0,
        max_instance_number=10,
        scaling_configuration_id="37e310f5-db9d-446e-9135-c625f9c2bbfc",
        vpc_id=example_vpc.vpc_v1_id,
        delete_publicip=True,
        delete_instances="no",
        networks=[{
            "id": example_subnet.vpc_subnet_v1_id,
        }],
        security_groups=[{
            "id": "45e4c6de-6bf0-4843-8953-2babde3d4810",
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/flexibleengine/flexibleengine"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		exampleVpc, err := flexibleengine.NewVpcV1(ctx, "exampleVpc", &flexibleengine.VpcV1Args{
    			Cidr: pulumi.String("192.168.0.0/16"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleSubnet, err := flexibleengine.NewVpcSubnetV1(ctx, "exampleSubnet", &flexibleengine.VpcSubnetV1Args{
    			Cidr:      pulumi.String("192.168.0.0/24"),
    			GatewayIp: pulumi.String("192.168.0.1"),
    			VpcId:     exampleVpc.VpcV1Id,
    		})
    		if err != nil {
    			return err
    		}
    		_, err = flexibleengine.NewAsGroup(ctx, "myAsGroupOnlyRemoveMembers", &flexibleengine.AsGroupArgs{
    			ScalingGroupName:       pulumi.String("my_as_group_only_remove_members"),
    			DesireInstanceNumber:   pulumi.Float64(2),
    			MinInstanceNumber:      pulumi.Float64(0),
    			MaxInstanceNumber:      pulumi.Float64(10),
    			ScalingConfigurationId: pulumi.String("37e310f5-db9d-446e-9135-c625f9c2bbfc"),
    			VpcId:                  exampleVpc.VpcV1Id,
    			DeletePublicip:         pulumi.Bool(true),
    			DeleteInstances:        pulumi.String("no"),
    			Networks: flexibleengine.AsGroupNetworkArray{
    				&flexibleengine.AsGroupNetworkArgs{
    					Id: exampleSubnet.VpcSubnetV1Id,
    				},
    			},
    			SecurityGroups: flexibleengine.AsGroupSecurityGroupArray{
    				&flexibleengine.AsGroupSecurityGroupArgs{
    					Id: pulumi.String("45e4c6de-6bf0-4843-8953-2babde3d4810"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Flexibleengine = Pulumi.Flexibleengine;
    
    return await Deployment.RunAsync(() => 
    {
        var exampleVpc = new Flexibleengine.VpcV1("exampleVpc", new()
        {
            Cidr = "192.168.0.0/16",
        });
    
        var exampleSubnet = new Flexibleengine.VpcSubnetV1("exampleSubnet", new()
        {
            Cidr = "192.168.0.0/24",
            GatewayIp = "192.168.0.1",
            VpcId = exampleVpc.VpcV1Id,
        });
    
        var myAsGroupOnlyRemoveMembers = new Flexibleengine.AsGroup("myAsGroupOnlyRemoveMembers", new()
        {
            ScalingGroupName = "my_as_group_only_remove_members",
            DesireInstanceNumber = 2,
            MinInstanceNumber = 0,
            MaxInstanceNumber = 10,
            ScalingConfigurationId = "37e310f5-db9d-446e-9135-c625f9c2bbfc",
            VpcId = exampleVpc.VpcV1Id,
            DeletePublicip = true,
            DeleteInstances = "no",
            Networks = new[]
            {
                new Flexibleengine.Inputs.AsGroupNetworkArgs
                {
                    Id = exampleSubnet.VpcSubnetV1Id,
                },
            },
            SecurityGroups = new[]
            {
                new Flexibleengine.Inputs.AsGroupSecurityGroupArgs
                {
                    Id = "45e4c6de-6bf0-4843-8953-2babde3d4810",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.flexibleengine.VpcV1;
    import com.pulumi.flexibleengine.VpcV1Args;
    import com.pulumi.flexibleengine.VpcSubnetV1;
    import com.pulumi.flexibleengine.VpcSubnetV1Args;
    import com.pulumi.flexibleengine.AsGroup;
    import com.pulumi.flexibleengine.AsGroupArgs;
    import com.pulumi.flexibleengine.inputs.AsGroupNetworkArgs;
    import com.pulumi.flexibleengine.inputs.AsGroupSecurityGroupArgs;
    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) {
            var exampleVpc = new VpcV1("exampleVpc", VpcV1Args.builder()
                .cidr("192.168.0.0/16")
                .build());
    
            var exampleSubnet = new VpcSubnetV1("exampleSubnet", VpcSubnetV1Args.builder()
                .cidr("192.168.0.0/24")
                .gatewayIp("192.168.0.1")
                .vpcId(exampleVpc.vpcV1Id())
                .build());
    
            var myAsGroupOnlyRemoveMembers = new AsGroup("myAsGroupOnlyRemoveMembers", AsGroupArgs.builder()
                .scalingGroupName("my_as_group_only_remove_members")
                .desireInstanceNumber(2)
                .minInstanceNumber(0)
                .maxInstanceNumber(10)
                .scalingConfigurationId("37e310f5-db9d-446e-9135-c625f9c2bbfc")
                .vpcId(exampleVpc.vpcV1Id())
                .deletePublicip(true)
                .deleteInstances("no")
                .networks(AsGroupNetworkArgs.builder()
                    .id(exampleSubnet.vpcSubnetV1Id())
                    .build())
                .securityGroups(AsGroupSecurityGroupArgs.builder()
                    .id("45e4c6de-6bf0-4843-8953-2babde3d4810")
                    .build())
                .build());
    
        }
    }
    
    resources:
      exampleVpc:
        type: flexibleengine:VpcV1
        properties:
          cidr: 192.168.0.0/16
      exampleSubnet:
        type: flexibleengine:VpcSubnetV1
        properties:
          cidr: 192.168.0.0/24
          gatewayIp: 192.168.0.1
          vpcId: ${exampleVpc.vpcV1Id}
      myAsGroupOnlyRemoveMembers:
        type: flexibleengine:AsGroup
        properties:
          scalingGroupName: my_as_group_only_remove_members
          desireInstanceNumber: 2
          minInstanceNumber: 0
          maxInstanceNumber: 10
          scalingConfigurationId: 37e310f5-db9d-446e-9135-c625f9c2bbfc
          vpcId: ${exampleVpc.vpcV1Id}
          deletePublicip: true
          deleteInstances: no
          networks:
            - id: ${exampleSubnet.vpcSubnetV1Id}
          securityGroups:
            - id: 45e4c6de-6bf0-4843-8953-2babde3d4810
    

    Autoscaling Group With ELB Listener

    import * as pulumi from "@pulumi/pulumi";
    import * as flexibleengine from "@pulumi/flexibleengine";
    
    const exampleVpc = new flexibleengine.VpcV1("exampleVpc", {cidr: "192.168.0.0/16"});
    const exampleSubnet = new flexibleengine.VpcSubnetV1("exampleSubnet", {
        cidr: "192.168.0.0/24",
        gatewayIp: "192.168.0.1",
        vpcId: exampleVpc.vpcV1Id,
    });
    const lb1 = new flexibleengine.LbLoadbalancerV2("lb1", {vipSubnetId: exampleSubnet.ipv4SubnetId});
    const listener1 = new flexibleengine.LbListenerV2("listener1", {
        protocol: "HTTP",
        protocolPort: 8080,
        loadbalancerId: lb1.lbLoadbalancerV2Id,
    });
    const myAsGroupWithElb = new flexibleengine.AsGroup("myAsGroupWithElb", {
        scalingGroupName: "my_as_group_with_elb",
        desireInstanceNumber: 2,
        minInstanceNumber: 0,
        maxInstanceNumber: 10,
        lbListenerId: listener1.lbListenerV2Id,
        scalingConfigurationId: "37e310f5-db9d-446e-9135-c625f9c2bbfc",
        vpcId: exampleVpc.vpcV1Id,
        deletePublicip: true,
        deleteInstances: "yes",
        networks: [{
            id: exampleSubnet.vpcSubnetV1Id,
        }],
        securityGroups: [{
            id: "45e4c6de-6bf0-4843-8953-2babde3d4810",
        }],
    });
    
    import pulumi
    import pulumi_flexibleengine as flexibleengine
    
    example_vpc = flexibleengine.VpcV1("exampleVpc", cidr="192.168.0.0/16")
    example_subnet = flexibleengine.VpcSubnetV1("exampleSubnet",
        cidr="192.168.0.0/24",
        gateway_ip="192.168.0.1",
        vpc_id=example_vpc.vpc_v1_id)
    lb1 = flexibleengine.LbLoadbalancerV2("lb1", vip_subnet_id=example_subnet.ipv4_subnet_id)
    listener1 = flexibleengine.LbListenerV2("listener1",
        protocol="HTTP",
        protocol_port=8080,
        loadbalancer_id=lb1.lb_loadbalancer_v2_id)
    my_as_group_with_elb = flexibleengine.AsGroup("myAsGroupWithElb",
        scaling_group_name="my_as_group_with_elb",
        desire_instance_number=2,
        min_instance_number=0,
        max_instance_number=10,
        lb_listener_id=listener1.lb_listener_v2_id,
        scaling_configuration_id="37e310f5-db9d-446e-9135-c625f9c2bbfc",
        vpc_id=example_vpc.vpc_v1_id,
        delete_publicip=True,
        delete_instances="yes",
        networks=[{
            "id": example_subnet.vpc_subnet_v1_id,
        }],
        security_groups=[{
            "id": "45e4c6de-6bf0-4843-8953-2babde3d4810",
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/flexibleengine/flexibleengine"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		exampleVpc, err := flexibleengine.NewVpcV1(ctx, "exampleVpc", &flexibleengine.VpcV1Args{
    			Cidr: pulumi.String("192.168.0.0/16"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleSubnet, err := flexibleengine.NewVpcSubnetV1(ctx, "exampleSubnet", &flexibleengine.VpcSubnetV1Args{
    			Cidr:      pulumi.String("192.168.0.0/24"),
    			GatewayIp: pulumi.String("192.168.0.1"),
    			VpcId:     exampleVpc.VpcV1Id,
    		})
    		if err != nil {
    			return err
    		}
    		lb1, err := flexibleengine.NewLbLoadbalancerV2(ctx, "lb1", &flexibleengine.LbLoadbalancerV2Args{
    			VipSubnetId: exampleSubnet.Ipv4SubnetId,
    		})
    		if err != nil {
    			return err
    		}
    		listener1, err := flexibleengine.NewLbListenerV2(ctx, "listener1", &flexibleengine.LbListenerV2Args{
    			Protocol:       pulumi.String("HTTP"),
    			ProtocolPort:   pulumi.Float64(8080),
    			LoadbalancerId: lb1.LbLoadbalancerV2Id,
    		})
    		if err != nil {
    			return err
    		}
    		_, err = flexibleengine.NewAsGroup(ctx, "myAsGroupWithElb", &flexibleengine.AsGroupArgs{
    			ScalingGroupName:       pulumi.String("my_as_group_with_elb"),
    			DesireInstanceNumber:   pulumi.Float64(2),
    			MinInstanceNumber:      pulumi.Float64(0),
    			MaxInstanceNumber:      pulumi.Float64(10),
    			LbListenerId:           listener1.LbListenerV2Id,
    			ScalingConfigurationId: pulumi.String("37e310f5-db9d-446e-9135-c625f9c2bbfc"),
    			VpcId:                  exampleVpc.VpcV1Id,
    			DeletePublicip:         pulumi.Bool(true),
    			DeleteInstances:        pulumi.String("yes"),
    			Networks: flexibleengine.AsGroupNetworkArray{
    				&flexibleengine.AsGroupNetworkArgs{
    					Id: exampleSubnet.VpcSubnetV1Id,
    				},
    			},
    			SecurityGroups: flexibleengine.AsGroupSecurityGroupArray{
    				&flexibleengine.AsGroupSecurityGroupArgs{
    					Id: pulumi.String("45e4c6de-6bf0-4843-8953-2babde3d4810"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Flexibleengine = Pulumi.Flexibleengine;
    
    return await Deployment.RunAsync(() => 
    {
        var exampleVpc = new Flexibleengine.VpcV1("exampleVpc", new()
        {
            Cidr = "192.168.0.0/16",
        });
    
        var exampleSubnet = new Flexibleengine.VpcSubnetV1("exampleSubnet", new()
        {
            Cidr = "192.168.0.0/24",
            GatewayIp = "192.168.0.1",
            VpcId = exampleVpc.VpcV1Id,
        });
    
        var lb1 = new Flexibleengine.LbLoadbalancerV2("lb1", new()
        {
            VipSubnetId = exampleSubnet.Ipv4SubnetId,
        });
    
        var listener1 = new Flexibleengine.LbListenerV2("listener1", new()
        {
            Protocol = "HTTP",
            ProtocolPort = 8080,
            LoadbalancerId = lb1.LbLoadbalancerV2Id,
        });
    
        var myAsGroupWithElb = new Flexibleengine.AsGroup("myAsGroupWithElb", new()
        {
            ScalingGroupName = "my_as_group_with_elb",
            DesireInstanceNumber = 2,
            MinInstanceNumber = 0,
            MaxInstanceNumber = 10,
            LbListenerId = listener1.LbListenerV2Id,
            ScalingConfigurationId = "37e310f5-db9d-446e-9135-c625f9c2bbfc",
            VpcId = exampleVpc.VpcV1Id,
            DeletePublicip = true,
            DeleteInstances = "yes",
            Networks = new[]
            {
                new Flexibleengine.Inputs.AsGroupNetworkArgs
                {
                    Id = exampleSubnet.VpcSubnetV1Id,
                },
            },
            SecurityGroups = new[]
            {
                new Flexibleengine.Inputs.AsGroupSecurityGroupArgs
                {
                    Id = "45e4c6de-6bf0-4843-8953-2babde3d4810",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.flexibleengine.VpcV1;
    import com.pulumi.flexibleengine.VpcV1Args;
    import com.pulumi.flexibleengine.VpcSubnetV1;
    import com.pulumi.flexibleengine.VpcSubnetV1Args;
    import com.pulumi.flexibleengine.LbLoadbalancerV2;
    import com.pulumi.flexibleengine.LbLoadbalancerV2Args;
    import com.pulumi.flexibleengine.LbListenerV2;
    import com.pulumi.flexibleengine.LbListenerV2Args;
    import com.pulumi.flexibleengine.AsGroup;
    import com.pulumi.flexibleengine.AsGroupArgs;
    import com.pulumi.flexibleengine.inputs.AsGroupNetworkArgs;
    import com.pulumi.flexibleengine.inputs.AsGroupSecurityGroupArgs;
    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) {
            var exampleVpc = new VpcV1("exampleVpc", VpcV1Args.builder()
                .cidr("192.168.0.0/16")
                .build());
    
            var exampleSubnet = new VpcSubnetV1("exampleSubnet", VpcSubnetV1Args.builder()
                .cidr("192.168.0.0/24")
                .gatewayIp("192.168.0.1")
                .vpcId(exampleVpc.vpcV1Id())
                .build());
    
            var lb1 = new LbLoadbalancerV2("lb1", LbLoadbalancerV2Args.builder()
                .vipSubnetId(exampleSubnet.ipv4SubnetId())
                .build());
    
            var listener1 = new LbListenerV2("listener1", LbListenerV2Args.builder()
                .protocol("HTTP")
                .protocolPort(8080)
                .loadbalancerId(lb1.lbLoadbalancerV2Id())
                .build());
    
            var myAsGroupWithElb = new AsGroup("myAsGroupWithElb", AsGroupArgs.builder()
                .scalingGroupName("my_as_group_with_elb")
                .desireInstanceNumber(2)
                .minInstanceNumber(0)
                .maxInstanceNumber(10)
                .lbListenerId(listener1.lbListenerV2Id())
                .scalingConfigurationId("37e310f5-db9d-446e-9135-c625f9c2bbfc")
                .vpcId(exampleVpc.vpcV1Id())
                .deletePublicip(true)
                .deleteInstances("yes")
                .networks(AsGroupNetworkArgs.builder()
                    .id(exampleSubnet.vpcSubnetV1Id())
                    .build())
                .securityGroups(AsGroupSecurityGroupArgs.builder()
                    .id("45e4c6de-6bf0-4843-8953-2babde3d4810")
                    .build())
                .build());
    
        }
    }
    
    resources:
      exampleVpc:
        type: flexibleengine:VpcV1
        properties:
          cidr: 192.168.0.0/16
      exampleSubnet:
        type: flexibleengine:VpcSubnetV1
        properties:
          cidr: 192.168.0.0/24
          gatewayIp: 192.168.0.1
          vpcId: ${exampleVpc.vpcV1Id}
      lb1:
        type: flexibleengine:LbLoadbalancerV2
        properties:
          vipSubnetId: ${exampleSubnet.ipv4SubnetId}
      listener1:
        type: flexibleengine:LbListenerV2
        properties:
          protocol: HTTP
          protocolPort: 8080
          loadbalancerId: ${lb1.lbLoadbalancerV2Id}
      myAsGroupWithElb:
        type: flexibleengine:AsGroup
        properties:
          scalingGroupName: my_as_group_with_elb
          desireInstanceNumber: 2
          minInstanceNumber: 0
          maxInstanceNumber: 10
          lbListenerId: ${listener1.lbListenerV2Id}
          scalingConfigurationId: 37e310f5-db9d-446e-9135-c625f9c2bbfc
          vpcId: ${exampleVpc.vpcV1Id}
          deletePublicip: true
          deleteInstances: yes
          networks:
            - id: ${exampleSubnet.vpcSubnetV1Id}
          securityGroups:
            - id: 45e4c6de-6bf0-4843-8953-2babde3d4810
    

    Create AsGroup Resource

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

    Constructor syntax

    new AsGroup(name: string, args: AsGroupArgs, opts?: CustomResourceOptions);
    @overload
    def AsGroup(resource_name: str,
                args: AsGroupArgs,
                opts: Optional[ResourceOptions] = None)
    
    @overload
    def AsGroup(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                networks: Optional[Sequence[AsGroupNetworkArgs]] = None,
                vpc_id: Optional[str] = None,
                security_groups: Optional[Sequence[AsGroupSecurityGroupArgs]] = None,
                scaling_group_name: Optional[str] = None,
                lb_listener_id: Optional[str] = None,
                min_instance_number: Optional[float] = None,
                force_delete: Optional[bool] = None,
                health_periodic_audit_method: Optional[str] = None,
                health_periodic_audit_time: Optional[float] = None,
                instance_terminate_policy: Optional[str] = None,
                as_group_id: Optional[str] = None,
                lbaas_listeners: Optional[Sequence[AsGroupLbaasListenerArgs]] = None,
                max_instance_number: Optional[float] = None,
                desire_instance_number: Optional[float] = None,
                delete_publicip: Optional[bool] = None,
                notifications: Optional[Sequence[str]] = None,
                region: Optional[str] = None,
                scaling_configuration_id: Optional[str] = None,
                delete_instances: Optional[str] = None,
                cool_down_time: Optional[float] = None,
                tags: Optional[Mapping[str, str]] = None,
                timeouts: Optional[AsGroupTimeoutsArgs] = None,
                available_zones: Optional[Sequence[str]] = None)
    func NewAsGroup(ctx *Context, name string, args AsGroupArgs, opts ...ResourceOption) (*AsGroup, error)
    public AsGroup(string name, AsGroupArgs args, CustomResourceOptions? opts = null)
    public AsGroup(String name, AsGroupArgs args)
    public AsGroup(String name, AsGroupArgs args, CustomResourceOptions options)
    
    type: flexibleengine:AsGroup
    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 AsGroupArgs
    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 AsGroupArgs
    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 AsGroupArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args AsGroupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args AsGroupArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

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

    var asGroupResource = new Flexibleengine.AsGroup("asGroupResource", new()
    {
        Networks = new[]
        {
            new Flexibleengine.Inputs.AsGroupNetworkArgs
            {
                Id = "string",
            },
        },
        VpcId = "string",
        SecurityGroups = new[]
        {
            new Flexibleengine.Inputs.AsGroupSecurityGroupArgs
            {
                Id = "string",
            },
        },
        ScalingGroupName = "string",
        LbListenerId = "string",
        MinInstanceNumber = 0,
        ForceDelete = false,
        HealthPeriodicAuditMethod = "string",
        HealthPeriodicAuditTime = 0,
        InstanceTerminatePolicy = "string",
        AsGroupId = "string",
        LbaasListeners = new[]
        {
            new Flexibleengine.Inputs.AsGroupLbaasListenerArgs
            {
                PoolId = "string",
                ProtocolPort = 0,
                Weight = 0,
            },
        },
        MaxInstanceNumber = 0,
        DesireInstanceNumber = 0,
        DeletePublicip = false,
        Notifications = new[]
        {
            "string",
        },
        Region = "string",
        ScalingConfigurationId = "string",
        DeleteInstances = "string",
        CoolDownTime = 0,
        Tags = 
        {
            { "string", "string" },
        },
        Timeouts = new Flexibleengine.Inputs.AsGroupTimeoutsArgs
        {
            Create = "string",
            Delete = "string",
        },
        AvailableZones = new[]
        {
            "string",
        },
    });
    
    example, err := flexibleengine.NewAsGroup(ctx, "asGroupResource", &flexibleengine.AsGroupArgs{
    	Networks: flexibleengine.AsGroupNetworkArray{
    		&flexibleengine.AsGroupNetworkArgs{
    			Id: pulumi.String("string"),
    		},
    	},
    	VpcId: pulumi.String("string"),
    	SecurityGroups: flexibleengine.AsGroupSecurityGroupArray{
    		&flexibleengine.AsGroupSecurityGroupArgs{
    			Id: pulumi.String("string"),
    		},
    	},
    	ScalingGroupName:          pulumi.String("string"),
    	LbListenerId:              pulumi.String("string"),
    	MinInstanceNumber:         pulumi.Float64(0),
    	ForceDelete:               pulumi.Bool(false),
    	HealthPeriodicAuditMethod: pulumi.String("string"),
    	HealthPeriodicAuditTime:   pulumi.Float64(0),
    	InstanceTerminatePolicy:   pulumi.String("string"),
    	AsGroupId:                 pulumi.String("string"),
    	LbaasListeners: flexibleengine.AsGroupLbaasListenerArray{
    		&flexibleengine.AsGroupLbaasListenerArgs{
    			PoolId:       pulumi.String("string"),
    			ProtocolPort: pulumi.Float64(0),
    			Weight:       pulumi.Float64(0),
    		},
    	},
    	MaxInstanceNumber:    pulumi.Float64(0),
    	DesireInstanceNumber: pulumi.Float64(0),
    	DeletePublicip:       pulumi.Bool(false),
    	Notifications: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Region:                 pulumi.String("string"),
    	ScalingConfigurationId: pulumi.String("string"),
    	DeleteInstances:        pulumi.String("string"),
    	CoolDownTime:           pulumi.Float64(0),
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Timeouts: &flexibleengine.AsGroupTimeoutsArgs{
    		Create: pulumi.String("string"),
    		Delete: pulumi.String("string"),
    	},
    	AvailableZones: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    })
    
    var asGroupResource = new AsGroup("asGroupResource", AsGroupArgs.builder()
        .networks(AsGroupNetworkArgs.builder()
            .id("string")
            .build())
        .vpcId("string")
        .securityGroups(AsGroupSecurityGroupArgs.builder()
            .id("string")
            .build())
        .scalingGroupName("string")
        .lbListenerId("string")
        .minInstanceNumber(0)
        .forceDelete(false)
        .healthPeriodicAuditMethod("string")
        .healthPeriodicAuditTime(0)
        .instanceTerminatePolicy("string")
        .asGroupId("string")
        .lbaasListeners(AsGroupLbaasListenerArgs.builder()
            .poolId("string")
            .protocolPort(0)
            .weight(0)
            .build())
        .maxInstanceNumber(0)
        .desireInstanceNumber(0)
        .deletePublicip(false)
        .notifications("string")
        .region("string")
        .scalingConfigurationId("string")
        .deleteInstances("string")
        .coolDownTime(0)
        .tags(Map.of("string", "string"))
        .timeouts(AsGroupTimeoutsArgs.builder()
            .create("string")
            .delete("string")
            .build())
        .availableZones("string")
        .build());
    
    as_group_resource = flexibleengine.AsGroup("asGroupResource",
        networks=[{
            "id": "string",
        }],
        vpc_id="string",
        security_groups=[{
            "id": "string",
        }],
        scaling_group_name="string",
        lb_listener_id="string",
        min_instance_number=0,
        force_delete=False,
        health_periodic_audit_method="string",
        health_periodic_audit_time=0,
        instance_terminate_policy="string",
        as_group_id="string",
        lbaas_listeners=[{
            "pool_id": "string",
            "protocol_port": 0,
            "weight": 0,
        }],
        max_instance_number=0,
        desire_instance_number=0,
        delete_publicip=False,
        notifications=["string"],
        region="string",
        scaling_configuration_id="string",
        delete_instances="string",
        cool_down_time=0,
        tags={
            "string": "string",
        },
        timeouts={
            "create": "string",
            "delete": "string",
        },
        available_zones=["string"])
    
    const asGroupResource = new flexibleengine.AsGroup("asGroupResource", {
        networks: [{
            id: "string",
        }],
        vpcId: "string",
        securityGroups: [{
            id: "string",
        }],
        scalingGroupName: "string",
        lbListenerId: "string",
        minInstanceNumber: 0,
        forceDelete: false,
        healthPeriodicAuditMethod: "string",
        healthPeriodicAuditTime: 0,
        instanceTerminatePolicy: "string",
        asGroupId: "string",
        lbaasListeners: [{
            poolId: "string",
            protocolPort: 0,
            weight: 0,
        }],
        maxInstanceNumber: 0,
        desireInstanceNumber: 0,
        deletePublicip: false,
        notifications: ["string"],
        region: "string",
        scalingConfigurationId: "string",
        deleteInstances: "string",
        coolDownTime: 0,
        tags: {
            string: "string",
        },
        timeouts: {
            create: "string",
            "delete": "string",
        },
        availableZones: ["string"],
    });
    
    type: flexibleengine:AsGroup
    properties:
        asGroupId: string
        availableZones:
            - string
        coolDownTime: 0
        deleteInstances: string
        deletePublicip: false
        desireInstanceNumber: 0
        forceDelete: false
        healthPeriodicAuditMethod: string
        healthPeriodicAuditTime: 0
        instanceTerminatePolicy: string
        lbListenerId: string
        lbaasListeners:
            - poolId: string
              protocolPort: 0
              weight: 0
        maxInstanceNumber: 0
        minInstanceNumber: 0
        networks:
            - id: string
        notifications:
            - string
        region: string
        scalingConfigurationId: string
        scalingGroupName: string
        securityGroups:
            - id: string
        tags:
            string: string
        timeouts:
            create: string
            delete: string
        vpcId: string
    

    AsGroup Resource Properties

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

    Inputs

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

    The AsGroup resource accepts the following input properties:

    Networks List<AsGroupNetwork>
    An array of one or more network IDs. The system supports up to five networks. The networks object structure is documented below.
    ScalingGroupName string
    The name of the scaling group. The name can contain letters, digits, underscores(_), and hyphens(-),and cannot exceed 64 characters.
    SecurityGroups List<AsGroupSecurityGroup>
    An array of one security group ID to associate with the group. The security_groups object structure is documented below.
    VpcId string
    The VPC ID. Changing this creates a new group.
    AsGroupId string
    AvailableZones List<string>
    The availability zones in which to create the instances in the autoscaling group.
    CoolDownTime double
    The cooling duration (in seconds). The value ranges from 0 to 86400, and is 900 by default.
    DeleteInstances string
    Whether to delete the instances in the AS group when deleting the AS group. The options are yes and no.
    DeletePublicip bool
    Whether to delete the elastic IP address bound to the instances of AS group when deleting the instances. The options are true and false.
    DesireInstanceNumber double
    The expected number of instances. The default value is the minimum number of instances. The value ranges from the minimum number of instances to the maximum number of instances.
    ForceDelete bool
    Whether to forcibly delete the AS group, remove the ECS instances and release them. The default value is false.
    HealthPeriodicAuditMethod string
    The health check method for instances in the AS group. The health check methods include ELB_AUDIT and NOVA_AUDIT. If load balancing is configured, the default value of this parameter is ELB_AUDIT. Otherwise, the default value is NOVA_AUDIT.
    HealthPeriodicAuditTime double
    The health check period for instances. The period has four options: 5 minutes (default), 15 minutes, 60 minutes, and 180 minutes.
    InstanceTerminatePolicy string
    The instance removal policy. The policy has four options: OLD_CONFIG_OLD_INSTANCE (default), OLD_CONFIG_NEW_INSTANCE, OLD_INSTANCE, and NEW_INSTANCE.
    LbListenerId string
    The ELB listener IDs. The system supports up to six ELB listeners, the IDs of which are separated using a comma (,).
    LbaasListeners List<AsGroupLbaasListener>
    An array of one or more enhanced load balancer. The system supports the binding of up to six load balancers. The field is alternative to lb_listener_id. The object structure is documented below.
    MaxInstanceNumber double
    The maximum number of instances. The default value is 0.
    MinInstanceNumber double
    The minimum number of instances. The default value is 0.
    Notifications List<string>
    The notification mode. The system only supports EMAIL mode which refers to notification by email.
    Region string
    The region in which to create the AS group. If omitted, the region argument of the provider is used. Changing this creates a new AS group.
    ScalingConfigurationId string
    The configuration ID which defines configurations of instances in the AS group.
    Tags Dictionary<string, string>
    The key/value pairs to associate with the scaling group.
    Timeouts AsGroupTimeouts
    Networks []AsGroupNetworkArgs
    An array of one or more network IDs. The system supports up to five networks. The networks object structure is documented below.
    ScalingGroupName string
    The name of the scaling group. The name can contain letters, digits, underscores(_), and hyphens(-),and cannot exceed 64 characters.
    SecurityGroups []AsGroupSecurityGroupArgs
    An array of one security group ID to associate with the group. The security_groups object structure is documented below.
    VpcId string
    The VPC ID. Changing this creates a new group.
    AsGroupId string
    AvailableZones []string
    The availability zones in which to create the instances in the autoscaling group.
    CoolDownTime float64
    The cooling duration (in seconds). The value ranges from 0 to 86400, and is 900 by default.
    DeleteInstances string
    Whether to delete the instances in the AS group when deleting the AS group. The options are yes and no.
    DeletePublicip bool
    Whether to delete the elastic IP address bound to the instances of AS group when deleting the instances. The options are true and false.
    DesireInstanceNumber float64
    The expected number of instances. The default value is the minimum number of instances. The value ranges from the minimum number of instances to the maximum number of instances.
    ForceDelete bool
    Whether to forcibly delete the AS group, remove the ECS instances and release them. The default value is false.
    HealthPeriodicAuditMethod string
    The health check method for instances in the AS group. The health check methods include ELB_AUDIT and NOVA_AUDIT. If load balancing is configured, the default value of this parameter is ELB_AUDIT. Otherwise, the default value is NOVA_AUDIT.
    HealthPeriodicAuditTime float64
    The health check period for instances. The period has four options: 5 minutes (default), 15 minutes, 60 minutes, and 180 minutes.
    InstanceTerminatePolicy string
    The instance removal policy. The policy has four options: OLD_CONFIG_OLD_INSTANCE (default), OLD_CONFIG_NEW_INSTANCE, OLD_INSTANCE, and NEW_INSTANCE.
    LbListenerId string
    The ELB listener IDs. The system supports up to six ELB listeners, the IDs of which are separated using a comma (,).
    LbaasListeners []AsGroupLbaasListenerArgs
    An array of one or more enhanced load balancer. The system supports the binding of up to six load balancers. The field is alternative to lb_listener_id. The object structure is documented below.
    MaxInstanceNumber float64
    The maximum number of instances. The default value is 0.
    MinInstanceNumber float64
    The minimum number of instances. The default value is 0.
    Notifications []string
    The notification mode. The system only supports EMAIL mode which refers to notification by email.
    Region string
    The region in which to create the AS group. If omitted, the region argument of the provider is used. Changing this creates a new AS group.
    ScalingConfigurationId string
    The configuration ID which defines configurations of instances in the AS group.
    Tags map[string]string
    The key/value pairs to associate with the scaling group.
    Timeouts AsGroupTimeoutsArgs
    networks List<AsGroupNetwork>
    An array of one or more network IDs. The system supports up to five networks. The networks object structure is documented below.
    scalingGroupName String
    The name of the scaling group. The name can contain letters, digits, underscores(_), and hyphens(-),and cannot exceed 64 characters.
    securityGroups List<AsGroupSecurityGroup>
    An array of one security group ID to associate with the group. The security_groups object structure is documented below.
    vpcId String
    The VPC ID. Changing this creates a new group.
    asGroupId String
    availableZones List<String>
    The availability zones in which to create the instances in the autoscaling group.
    coolDownTime Double
    The cooling duration (in seconds). The value ranges from 0 to 86400, and is 900 by default.
    deleteInstances String
    Whether to delete the instances in the AS group when deleting the AS group. The options are yes and no.
    deletePublicip Boolean
    Whether to delete the elastic IP address bound to the instances of AS group when deleting the instances. The options are true and false.
    desireInstanceNumber Double
    The expected number of instances. The default value is the minimum number of instances. The value ranges from the minimum number of instances to the maximum number of instances.
    forceDelete Boolean
    Whether to forcibly delete the AS group, remove the ECS instances and release them. The default value is false.
    healthPeriodicAuditMethod String
    The health check method for instances in the AS group. The health check methods include ELB_AUDIT and NOVA_AUDIT. If load balancing is configured, the default value of this parameter is ELB_AUDIT. Otherwise, the default value is NOVA_AUDIT.
    healthPeriodicAuditTime Double
    The health check period for instances. The period has four options: 5 minutes (default), 15 minutes, 60 minutes, and 180 minutes.
    instanceTerminatePolicy String
    The instance removal policy. The policy has four options: OLD_CONFIG_OLD_INSTANCE (default), OLD_CONFIG_NEW_INSTANCE, OLD_INSTANCE, and NEW_INSTANCE.
    lbListenerId String
    The ELB listener IDs. The system supports up to six ELB listeners, the IDs of which are separated using a comma (,).
    lbaasListeners List<AsGroupLbaasListener>
    An array of one or more enhanced load balancer. The system supports the binding of up to six load balancers. The field is alternative to lb_listener_id. The object structure is documented below.
    maxInstanceNumber Double
    The maximum number of instances. The default value is 0.
    minInstanceNumber Double
    The minimum number of instances. The default value is 0.
    notifications List<String>
    The notification mode. The system only supports EMAIL mode which refers to notification by email.
    region String
    The region in which to create the AS group. If omitted, the region argument of the provider is used. Changing this creates a new AS group.
    scalingConfigurationId String
    The configuration ID which defines configurations of instances in the AS group.
    tags Map<String,String>
    The key/value pairs to associate with the scaling group.
    timeouts AsGroupTimeouts
    networks AsGroupNetwork[]
    An array of one or more network IDs. The system supports up to five networks. The networks object structure is documented below.
    scalingGroupName string
    The name of the scaling group. The name can contain letters, digits, underscores(_), and hyphens(-),and cannot exceed 64 characters.
    securityGroups AsGroupSecurityGroup[]
    An array of one security group ID to associate with the group. The security_groups object structure is documented below.
    vpcId string
    The VPC ID. Changing this creates a new group.
    asGroupId string
    availableZones string[]
    The availability zones in which to create the instances in the autoscaling group.
    coolDownTime number
    The cooling duration (in seconds). The value ranges from 0 to 86400, and is 900 by default.
    deleteInstances string
    Whether to delete the instances in the AS group when deleting the AS group. The options are yes and no.
    deletePublicip boolean
    Whether to delete the elastic IP address bound to the instances of AS group when deleting the instances. The options are true and false.
    desireInstanceNumber number
    The expected number of instances. The default value is the minimum number of instances. The value ranges from the minimum number of instances to the maximum number of instances.
    forceDelete boolean
    Whether to forcibly delete the AS group, remove the ECS instances and release them. The default value is false.
    healthPeriodicAuditMethod string
    The health check method for instances in the AS group. The health check methods include ELB_AUDIT and NOVA_AUDIT. If load balancing is configured, the default value of this parameter is ELB_AUDIT. Otherwise, the default value is NOVA_AUDIT.
    healthPeriodicAuditTime number
    The health check period for instances. The period has four options: 5 minutes (default), 15 minutes, 60 minutes, and 180 minutes.
    instanceTerminatePolicy string
    The instance removal policy. The policy has four options: OLD_CONFIG_OLD_INSTANCE (default), OLD_CONFIG_NEW_INSTANCE, OLD_INSTANCE, and NEW_INSTANCE.
    lbListenerId string
    The ELB listener IDs. The system supports up to six ELB listeners, the IDs of which are separated using a comma (,).
    lbaasListeners AsGroupLbaasListener[]
    An array of one or more enhanced load balancer. The system supports the binding of up to six load balancers. The field is alternative to lb_listener_id. The object structure is documented below.
    maxInstanceNumber number
    The maximum number of instances. The default value is 0.
    minInstanceNumber number
    The minimum number of instances. The default value is 0.
    notifications string[]
    The notification mode. The system only supports EMAIL mode which refers to notification by email.
    region string
    The region in which to create the AS group. If omitted, the region argument of the provider is used. Changing this creates a new AS group.
    scalingConfigurationId string
    The configuration ID which defines configurations of instances in the AS group.
    tags {[key: string]: string}
    The key/value pairs to associate with the scaling group.
    timeouts AsGroupTimeouts
    networks Sequence[AsGroupNetworkArgs]
    An array of one or more network IDs. The system supports up to five networks. The networks object structure is documented below.
    scaling_group_name str
    The name of the scaling group. The name can contain letters, digits, underscores(_), and hyphens(-),and cannot exceed 64 characters.
    security_groups Sequence[AsGroupSecurityGroupArgs]
    An array of one security group ID to associate with the group. The security_groups object structure is documented below.
    vpc_id str
    The VPC ID. Changing this creates a new group.
    as_group_id str
    available_zones Sequence[str]
    The availability zones in which to create the instances in the autoscaling group.
    cool_down_time float
    The cooling duration (in seconds). The value ranges from 0 to 86400, and is 900 by default.
    delete_instances str
    Whether to delete the instances in the AS group when deleting the AS group. The options are yes and no.
    delete_publicip bool
    Whether to delete the elastic IP address bound to the instances of AS group when deleting the instances. The options are true and false.
    desire_instance_number float
    The expected number of instances. The default value is the minimum number of instances. The value ranges from the minimum number of instances to the maximum number of instances.
    force_delete bool
    Whether to forcibly delete the AS group, remove the ECS instances and release them. The default value is false.
    health_periodic_audit_method str
    The health check method for instances in the AS group. The health check methods include ELB_AUDIT and NOVA_AUDIT. If load balancing is configured, the default value of this parameter is ELB_AUDIT. Otherwise, the default value is NOVA_AUDIT.
    health_periodic_audit_time float
    The health check period for instances. The period has four options: 5 minutes (default), 15 minutes, 60 minutes, and 180 minutes.
    instance_terminate_policy str
    The instance removal policy. The policy has four options: OLD_CONFIG_OLD_INSTANCE (default), OLD_CONFIG_NEW_INSTANCE, OLD_INSTANCE, and NEW_INSTANCE.
    lb_listener_id str
    The ELB listener IDs. The system supports up to six ELB listeners, the IDs of which are separated using a comma (,).
    lbaas_listeners Sequence[AsGroupLbaasListenerArgs]
    An array of one or more enhanced load balancer. The system supports the binding of up to six load balancers. The field is alternative to lb_listener_id. The object structure is documented below.
    max_instance_number float
    The maximum number of instances. The default value is 0.
    min_instance_number float
    The minimum number of instances. The default value is 0.
    notifications Sequence[str]
    The notification mode. The system only supports EMAIL mode which refers to notification by email.
    region str
    The region in which to create the AS group. If omitted, the region argument of the provider is used. Changing this creates a new AS group.
    scaling_configuration_id str
    The configuration ID which defines configurations of instances in the AS group.
    tags Mapping[str, str]
    The key/value pairs to associate with the scaling group.
    timeouts AsGroupTimeoutsArgs
    networks List<Property Map>
    An array of one or more network IDs. The system supports up to five networks. The networks object structure is documented below.
    scalingGroupName String
    The name of the scaling group. The name can contain letters, digits, underscores(_), and hyphens(-),and cannot exceed 64 characters.
    securityGroups List<Property Map>
    An array of one security group ID to associate with the group. The security_groups object structure is documented below.
    vpcId String
    The VPC ID. Changing this creates a new group.
    asGroupId String
    availableZones List<String>
    The availability zones in which to create the instances in the autoscaling group.
    coolDownTime Number
    The cooling duration (in seconds). The value ranges from 0 to 86400, and is 900 by default.
    deleteInstances String
    Whether to delete the instances in the AS group when deleting the AS group. The options are yes and no.
    deletePublicip Boolean
    Whether to delete the elastic IP address bound to the instances of AS group when deleting the instances. The options are true and false.
    desireInstanceNumber Number
    The expected number of instances. The default value is the minimum number of instances. The value ranges from the minimum number of instances to the maximum number of instances.
    forceDelete Boolean
    Whether to forcibly delete the AS group, remove the ECS instances and release them. The default value is false.
    healthPeriodicAuditMethod String
    The health check method for instances in the AS group. The health check methods include ELB_AUDIT and NOVA_AUDIT. If load balancing is configured, the default value of this parameter is ELB_AUDIT. Otherwise, the default value is NOVA_AUDIT.
    healthPeriodicAuditTime Number
    The health check period for instances. The period has four options: 5 minutes (default), 15 minutes, 60 minutes, and 180 minutes.
    instanceTerminatePolicy String
    The instance removal policy. The policy has four options: OLD_CONFIG_OLD_INSTANCE (default), OLD_CONFIG_NEW_INSTANCE, OLD_INSTANCE, and NEW_INSTANCE.
    lbListenerId String
    The ELB listener IDs. The system supports up to six ELB listeners, the IDs of which are separated using a comma (,).
    lbaasListeners List<Property Map>
    An array of one or more enhanced load balancer. The system supports the binding of up to six load balancers. The field is alternative to lb_listener_id. The object structure is documented below.
    maxInstanceNumber Number
    The maximum number of instances. The default value is 0.
    minInstanceNumber Number
    The minimum number of instances. The default value is 0.
    notifications List<String>
    The notification mode. The system only supports EMAIL mode which refers to notification by email.
    region String
    The region in which to create the AS group. If omitted, the region argument of the provider is used. Changing this creates a new AS group.
    scalingConfigurationId String
    The configuration ID which defines configurations of instances in the AS group.
    tags Map<String>
    The key/value pairs to associate with the scaling group.
    timeouts Property Map

    Outputs

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

    CurrentInstanceNumber double
    Indicates the number of current instances in the AS group.
    Id string
    The provider-assigned unique ID for this managed resource.
    Instances List<string>
    The instances IDs of the AS group.
    Status string
    Indicates the status of the AS group.
    CurrentInstanceNumber float64
    Indicates the number of current instances in the AS group.
    Id string
    The provider-assigned unique ID for this managed resource.
    Instances []string
    The instances IDs of the AS group.
    Status string
    Indicates the status of the AS group.
    currentInstanceNumber Double
    Indicates the number of current instances in the AS group.
    id String
    The provider-assigned unique ID for this managed resource.
    instances List<String>
    The instances IDs of the AS group.
    status String
    Indicates the status of the AS group.
    currentInstanceNumber number
    Indicates the number of current instances in the AS group.
    id string
    The provider-assigned unique ID for this managed resource.
    instances string[]
    The instances IDs of the AS group.
    status string
    Indicates the status of the AS group.
    current_instance_number float
    Indicates the number of current instances in the AS group.
    id str
    The provider-assigned unique ID for this managed resource.
    instances Sequence[str]
    The instances IDs of the AS group.
    status str
    Indicates the status of the AS group.
    currentInstanceNumber Number
    Indicates the number of current instances in the AS group.
    id String
    The provider-assigned unique ID for this managed resource.
    instances List<String>
    The instances IDs of the AS group.
    status String
    Indicates the status of the AS group.

    Look up Existing AsGroup Resource

    Get an existing AsGroup 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?: AsGroupState, opts?: CustomResourceOptions): AsGroup
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            as_group_id: Optional[str] = None,
            available_zones: Optional[Sequence[str]] = None,
            cool_down_time: Optional[float] = None,
            current_instance_number: Optional[float] = None,
            delete_instances: Optional[str] = None,
            delete_publicip: Optional[bool] = None,
            desire_instance_number: Optional[float] = None,
            force_delete: Optional[bool] = None,
            health_periodic_audit_method: Optional[str] = None,
            health_periodic_audit_time: Optional[float] = None,
            instance_terminate_policy: Optional[str] = None,
            instances: Optional[Sequence[str]] = None,
            lb_listener_id: Optional[str] = None,
            lbaas_listeners: Optional[Sequence[AsGroupLbaasListenerArgs]] = None,
            max_instance_number: Optional[float] = None,
            min_instance_number: Optional[float] = None,
            networks: Optional[Sequence[AsGroupNetworkArgs]] = None,
            notifications: Optional[Sequence[str]] = None,
            region: Optional[str] = None,
            scaling_configuration_id: Optional[str] = None,
            scaling_group_name: Optional[str] = None,
            security_groups: Optional[Sequence[AsGroupSecurityGroupArgs]] = None,
            status: Optional[str] = None,
            tags: Optional[Mapping[str, str]] = None,
            timeouts: Optional[AsGroupTimeoutsArgs] = None,
            vpc_id: Optional[str] = None) -> AsGroup
    func GetAsGroup(ctx *Context, name string, id IDInput, state *AsGroupState, opts ...ResourceOption) (*AsGroup, error)
    public static AsGroup Get(string name, Input<string> id, AsGroupState? state, CustomResourceOptions? opts = null)
    public static AsGroup get(String name, Output<String> id, AsGroupState state, CustomResourceOptions options)
    resources:  _:    type: flexibleengine:AsGroup    get:      id: ${id}
    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:
    AsGroupId string
    AvailableZones List<string>
    The availability zones in which to create the instances in the autoscaling group.
    CoolDownTime double
    The cooling duration (in seconds). The value ranges from 0 to 86400, and is 900 by default.
    CurrentInstanceNumber double
    Indicates the number of current instances in the AS group.
    DeleteInstances string
    Whether to delete the instances in the AS group when deleting the AS group. The options are yes and no.
    DeletePublicip bool
    Whether to delete the elastic IP address bound to the instances of AS group when deleting the instances. The options are true and false.
    DesireInstanceNumber double
    The expected number of instances. The default value is the minimum number of instances. The value ranges from the minimum number of instances to the maximum number of instances.
    ForceDelete bool
    Whether to forcibly delete the AS group, remove the ECS instances and release them. The default value is false.
    HealthPeriodicAuditMethod string
    The health check method for instances in the AS group. The health check methods include ELB_AUDIT and NOVA_AUDIT. If load balancing is configured, the default value of this parameter is ELB_AUDIT. Otherwise, the default value is NOVA_AUDIT.
    HealthPeriodicAuditTime double
    The health check period for instances. The period has four options: 5 minutes (default), 15 minutes, 60 minutes, and 180 minutes.
    InstanceTerminatePolicy string
    The instance removal policy. The policy has four options: OLD_CONFIG_OLD_INSTANCE (default), OLD_CONFIG_NEW_INSTANCE, OLD_INSTANCE, and NEW_INSTANCE.
    Instances List<string>
    The instances IDs of the AS group.
    LbListenerId string
    The ELB listener IDs. The system supports up to six ELB listeners, the IDs of which are separated using a comma (,).
    LbaasListeners List<AsGroupLbaasListener>
    An array of one or more enhanced load balancer. The system supports the binding of up to six load balancers. The field is alternative to lb_listener_id. The object structure is documented below.
    MaxInstanceNumber double
    The maximum number of instances. The default value is 0.
    MinInstanceNumber double
    The minimum number of instances. The default value is 0.
    Networks List<AsGroupNetwork>
    An array of one or more network IDs. The system supports up to five networks. The networks object structure is documented below.
    Notifications List<string>
    The notification mode. The system only supports EMAIL mode which refers to notification by email.
    Region string
    The region in which to create the AS group. If omitted, the region argument of the provider is used. Changing this creates a new AS group.
    ScalingConfigurationId string
    The configuration ID which defines configurations of instances in the AS group.
    ScalingGroupName string
    The name of the scaling group. The name can contain letters, digits, underscores(_), and hyphens(-),and cannot exceed 64 characters.
    SecurityGroups List<AsGroupSecurityGroup>
    An array of one security group ID to associate with the group. The security_groups object structure is documented below.
    Status string
    Indicates the status of the AS group.
    Tags Dictionary<string, string>
    The key/value pairs to associate with the scaling group.
    Timeouts AsGroupTimeouts
    VpcId string
    The VPC ID. Changing this creates a new group.
    AsGroupId string
    AvailableZones []string
    The availability zones in which to create the instances in the autoscaling group.
    CoolDownTime float64
    The cooling duration (in seconds). The value ranges from 0 to 86400, and is 900 by default.
    CurrentInstanceNumber float64
    Indicates the number of current instances in the AS group.
    DeleteInstances string
    Whether to delete the instances in the AS group when deleting the AS group. The options are yes and no.
    DeletePublicip bool
    Whether to delete the elastic IP address bound to the instances of AS group when deleting the instances. The options are true and false.
    DesireInstanceNumber float64
    The expected number of instances. The default value is the minimum number of instances. The value ranges from the minimum number of instances to the maximum number of instances.
    ForceDelete bool
    Whether to forcibly delete the AS group, remove the ECS instances and release them. The default value is false.
    HealthPeriodicAuditMethod string
    The health check method for instances in the AS group. The health check methods include ELB_AUDIT and NOVA_AUDIT. If load balancing is configured, the default value of this parameter is ELB_AUDIT. Otherwise, the default value is NOVA_AUDIT.
    HealthPeriodicAuditTime float64
    The health check period for instances. The period has four options: 5 minutes (default), 15 minutes, 60 minutes, and 180 minutes.
    InstanceTerminatePolicy string
    The instance removal policy. The policy has four options: OLD_CONFIG_OLD_INSTANCE (default), OLD_CONFIG_NEW_INSTANCE, OLD_INSTANCE, and NEW_INSTANCE.
    Instances []string
    The instances IDs of the AS group.
    LbListenerId string
    The ELB listener IDs. The system supports up to six ELB listeners, the IDs of which are separated using a comma (,).
    LbaasListeners []AsGroupLbaasListenerArgs
    An array of one or more enhanced load balancer. The system supports the binding of up to six load balancers. The field is alternative to lb_listener_id. The object structure is documented below.
    MaxInstanceNumber float64
    The maximum number of instances. The default value is 0.
    MinInstanceNumber float64
    The minimum number of instances. The default value is 0.
    Networks []AsGroupNetworkArgs
    An array of one or more network IDs. The system supports up to five networks. The networks object structure is documented below.
    Notifications []string
    The notification mode. The system only supports EMAIL mode which refers to notification by email.
    Region string
    The region in which to create the AS group. If omitted, the region argument of the provider is used. Changing this creates a new AS group.
    ScalingConfigurationId string
    The configuration ID which defines configurations of instances in the AS group.
    ScalingGroupName string
    The name of the scaling group. The name can contain letters, digits, underscores(_), and hyphens(-),and cannot exceed 64 characters.
    SecurityGroups []AsGroupSecurityGroupArgs
    An array of one security group ID to associate with the group. The security_groups object structure is documented below.
    Status string
    Indicates the status of the AS group.
    Tags map[string]string
    The key/value pairs to associate with the scaling group.
    Timeouts AsGroupTimeoutsArgs
    VpcId string
    The VPC ID. Changing this creates a new group.
    asGroupId String
    availableZones List<String>
    The availability zones in which to create the instances in the autoscaling group.
    coolDownTime Double
    The cooling duration (in seconds). The value ranges from 0 to 86400, and is 900 by default.
    currentInstanceNumber Double
    Indicates the number of current instances in the AS group.
    deleteInstances String
    Whether to delete the instances in the AS group when deleting the AS group. The options are yes and no.
    deletePublicip Boolean
    Whether to delete the elastic IP address bound to the instances of AS group when deleting the instances. The options are true and false.
    desireInstanceNumber Double
    The expected number of instances. The default value is the minimum number of instances. The value ranges from the minimum number of instances to the maximum number of instances.
    forceDelete Boolean
    Whether to forcibly delete the AS group, remove the ECS instances and release them. The default value is false.
    healthPeriodicAuditMethod String
    The health check method for instances in the AS group. The health check methods include ELB_AUDIT and NOVA_AUDIT. If load balancing is configured, the default value of this parameter is ELB_AUDIT. Otherwise, the default value is NOVA_AUDIT.
    healthPeriodicAuditTime Double
    The health check period for instances. The period has four options: 5 minutes (default), 15 minutes, 60 minutes, and 180 minutes.
    instanceTerminatePolicy String
    The instance removal policy. The policy has four options: OLD_CONFIG_OLD_INSTANCE (default), OLD_CONFIG_NEW_INSTANCE, OLD_INSTANCE, and NEW_INSTANCE.
    instances List<String>
    The instances IDs of the AS group.
    lbListenerId String
    The ELB listener IDs. The system supports up to six ELB listeners, the IDs of which are separated using a comma (,).
    lbaasListeners List<AsGroupLbaasListener>
    An array of one or more enhanced load balancer. The system supports the binding of up to six load balancers. The field is alternative to lb_listener_id. The object structure is documented below.
    maxInstanceNumber Double
    The maximum number of instances. The default value is 0.
    minInstanceNumber Double
    The minimum number of instances. The default value is 0.
    networks List<AsGroupNetwork>
    An array of one or more network IDs. The system supports up to five networks. The networks object structure is documented below.
    notifications List<String>
    The notification mode. The system only supports EMAIL mode which refers to notification by email.
    region String
    The region in which to create the AS group. If omitted, the region argument of the provider is used. Changing this creates a new AS group.
    scalingConfigurationId String
    The configuration ID which defines configurations of instances in the AS group.
    scalingGroupName String
    The name of the scaling group. The name can contain letters, digits, underscores(_), and hyphens(-),and cannot exceed 64 characters.
    securityGroups List<AsGroupSecurityGroup>
    An array of one security group ID to associate with the group. The security_groups object structure is documented below.
    status String
    Indicates the status of the AS group.
    tags Map<String,String>
    The key/value pairs to associate with the scaling group.
    timeouts AsGroupTimeouts
    vpcId String
    The VPC ID. Changing this creates a new group.
    asGroupId string
    availableZones string[]
    The availability zones in which to create the instances in the autoscaling group.
    coolDownTime number
    The cooling duration (in seconds). The value ranges from 0 to 86400, and is 900 by default.
    currentInstanceNumber number
    Indicates the number of current instances in the AS group.
    deleteInstances string
    Whether to delete the instances in the AS group when deleting the AS group. The options are yes and no.
    deletePublicip boolean
    Whether to delete the elastic IP address bound to the instances of AS group when deleting the instances. The options are true and false.
    desireInstanceNumber number
    The expected number of instances. The default value is the minimum number of instances. The value ranges from the minimum number of instances to the maximum number of instances.
    forceDelete boolean
    Whether to forcibly delete the AS group, remove the ECS instances and release them. The default value is false.
    healthPeriodicAuditMethod string
    The health check method for instances in the AS group. The health check methods include ELB_AUDIT and NOVA_AUDIT. If load balancing is configured, the default value of this parameter is ELB_AUDIT. Otherwise, the default value is NOVA_AUDIT.
    healthPeriodicAuditTime number
    The health check period for instances. The period has four options: 5 minutes (default), 15 minutes, 60 minutes, and 180 minutes.
    instanceTerminatePolicy string
    The instance removal policy. The policy has four options: OLD_CONFIG_OLD_INSTANCE (default), OLD_CONFIG_NEW_INSTANCE, OLD_INSTANCE, and NEW_INSTANCE.
    instances string[]
    The instances IDs of the AS group.
    lbListenerId string
    The ELB listener IDs. The system supports up to six ELB listeners, the IDs of which are separated using a comma (,).
    lbaasListeners AsGroupLbaasListener[]
    An array of one or more enhanced load balancer. The system supports the binding of up to six load balancers. The field is alternative to lb_listener_id. The object structure is documented below.
    maxInstanceNumber number
    The maximum number of instances. The default value is 0.
    minInstanceNumber number
    The minimum number of instances. The default value is 0.
    networks AsGroupNetwork[]
    An array of one or more network IDs. The system supports up to five networks. The networks object structure is documented below.
    notifications string[]
    The notification mode. The system only supports EMAIL mode which refers to notification by email.
    region string
    The region in which to create the AS group. If omitted, the region argument of the provider is used. Changing this creates a new AS group.
    scalingConfigurationId string
    The configuration ID which defines configurations of instances in the AS group.
    scalingGroupName string
    The name of the scaling group. The name can contain letters, digits, underscores(_), and hyphens(-),and cannot exceed 64 characters.
    securityGroups AsGroupSecurityGroup[]
    An array of one security group ID to associate with the group. The security_groups object structure is documented below.
    status string
    Indicates the status of the AS group.
    tags {[key: string]: string}
    The key/value pairs to associate with the scaling group.
    timeouts AsGroupTimeouts
    vpcId string
    The VPC ID. Changing this creates a new group.
    as_group_id str
    available_zones Sequence[str]
    The availability zones in which to create the instances in the autoscaling group.
    cool_down_time float
    The cooling duration (in seconds). The value ranges from 0 to 86400, and is 900 by default.
    current_instance_number float
    Indicates the number of current instances in the AS group.
    delete_instances str
    Whether to delete the instances in the AS group when deleting the AS group. The options are yes and no.
    delete_publicip bool
    Whether to delete the elastic IP address bound to the instances of AS group when deleting the instances. The options are true and false.
    desire_instance_number float
    The expected number of instances. The default value is the minimum number of instances. The value ranges from the minimum number of instances to the maximum number of instances.
    force_delete bool
    Whether to forcibly delete the AS group, remove the ECS instances and release them. The default value is false.
    health_periodic_audit_method str
    The health check method for instances in the AS group. The health check methods include ELB_AUDIT and NOVA_AUDIT. If load balancing is configured, the default value of this parameter is ELB_AUDIT. Otherwise, the default value is NOVA_AUDIT.
    health_periodic_audit_time float
    The health check period for instances. The period has four options: 5 minutes (default), 15 minutes, 60 minutes, and 180 minutes.
    instance_terminate_policy str
    The instance removal policy. The policy has four options: OLD_CONFIG_OLD_INSTANCE (default), OLD_CONFIG_NEW_INSTANCE, OLD_INSTANCE, and NEW_INSTANCE.
    instances Sequence[str]
    The instances IDs of the AS group.
    lb_listener_id str
    The ELB listener IDs. The system supports up to six ELB listeners, the IDs of which are separated using a comma (,).
    lbaas_listeners Sequence[AsGroupLbaasListenerArgs]
    An array of one or more enhanced load balancer. The system supports the binding of up to six load balancers. The field is alternative to lb_listener_id. The object structure is documented below.
    max_instance_number float
    The maximum number of instances. The default value is 0.
    min_instance_number float
    The minimum number of instances. The default value is 0.
    networks Sequence[AsGroupNetworkArgs]
    An array of one or more network IDs. The system supports up to five networks. The networks object structure is documented below.
    notifications Sequence[str]
    The notification mode. The system only supports EMAIL mode which refers to notification by email.
    region str
    The region in which to create the AS group. If omitted, the region argument of the provider is used. Changing this creates a new AS group.
    scaling_configuration_id str
    The configuration ID which defines configurations of instances in the AS group.
    scaling_group_name str
    The name of the scaling group. The name can contain letters, digits, underscores(_), and hyphens(-),and cannot exceed 64 characters.
    security_groups Sequence[AsGroupSecurityGroupArgs]
    An array of one security group ID to associate with the group. The security_groups object structure is documented below.
    status str
    Indicates the status of the AS group.
    tags Mapping[str, str]
    The key/value pairs to associate with the scaling group.
    timeouts AsGroupTimeoutsArgs
    vpc_id str
    The VPC ID. Changing this creates a new group.
    asGroupId String
    availableZones List<String>
    The availability zones in which to create the instances in the autoscaling group.
    coolDownTime Number
    The cooling duration (in seconds). The value ranges from 0 to 86400, and is 900 by default.
    currentInstanceNumber Number
    Indicates the number of current instances in the AS group.
    deleteInstances String
    Whether to delete the instances in the AS group when deleting the AS group. The options are yes and no.
    deletePublicip Boolean
    Whether to delete the elastic IP address bound to the instances of AS group when deleting the instances. The options are true and false.
    desireInstanceNumber Number
    The expected number of instances. The default value is the minimum number of instances. The value ranges from the minimum number of instances to the maximum number of instances.
    forceDelete Boolean
    Whether to forcibly delete the AS group, remove the ECS instances and release them. The default value is false.
    healthPeriodicAuditMethod String
    The health check method for instances in the AS group. The health check methods include ELB_AUDIT and NOVA_AUDIT. If load balancing is configured, the default value of this parameter is ELB_AUDIT. Otherwise, the default value is NOVA_AUDIT.
    healthPeriodicAuditTime Number
    The health check period for instances. The period has four options: 5 minutes (default), 15 minutes, 60 minutes, and 180 minutes.
    instanceTerminatePolicy String
    The instance removal policy. The policy has four options: OLD_CONFIG_OLD_INSTANCE (default), OLD_CONFIG_NEW_INSTANCE, OLD_INSTANCE, and NEW_INSTANCE.
    instances List<String>
    The instances IDs of the AS group.
    lbListenerId String
    The ELB listener IDs. The system supports up to six ELB listeners, the IDs of which are separated using a comma (,).
    lbaasListeners List<Property Map>
    An array of one or more enhanced load balancer. The system supports the binding of up to six load balancers. The field is alternative to lb_listener_id. The object structure is documented below.
    maxInstanceNumber Number
    The maximum number of instances. The default value is 0.
    minInstanceNumber Number
    The minimum number of instances. The default value is 0.
    networks List<Property Map>
    An array of one or more network IDs. The system supports up to five networks. The networks object structure is documented below.
    notifications List<String>
    The notification mode. The system only supports EMAIL mode which refers to notification by email.
    region String
    The region in which to create the AS group. If omitted, the region argument of the provider is used. Changing this creates a new AS group.
    scalingConfigurationId String
    The configuration ID which defines configurations of instances in the AS group.
    scalingGroupName String
    The name of the scaling group. The name can contain letters, digits, underscores(_), and hyphens(-),and cannot exceed 64 characters.
    securityGroups List<Property Map>
    An array of one security group ID to associate with the group. The security_groups object structure is documented below.
    status String
    Indicates the status of the AS group.
    tags Map<String>
    The key/value pairs to associate with the scaling group.
    timeouts Property Map
    vpcId String
    The VPC ID. Changing this creates a new group.

    Supporting Types

    AsGroupLbaasListener, AsGroupLbaasListenerArgs

    PoolId string
    Specifies the backend ECS group ID.
    ProtocolPort double
    Specifies the backend protocol, which is the port on which a backend ECS listens for traffic. The number of the port ranges from 1 to 65535.
    Weight double
    Specifies the weight, which determines the portion of requests a backend ECS processes compared to other backend ECSs added to the same listener. The value of this parameter ranges from 0 to 100. The default value is 1.
    PoolId string
    Specifies the backend ECS group ID.
    ProtocolPort float64
    Specifies the backend protocol, which is the port on which a backend ECS listens for traffic. The number of the port ranges from 1 to 65535.
    Weight float64
    Specifies the weight, which determines the portion of requests a backend ECS processes compared to other backend ECSs added to the same listener. The value of this parameter ranges from 0 to 100. The default value is 1.
    poolId String
    Specifies the backend ECS group ID.
    protocolPort Double
    Specifies the backend protocol, which is the port on which a backend ECS listens for traffic. The number of the port ranges from 1 to 65535.
    weight Double
    Specifies the weight, which determines the portion of requests a backend ECS processes compared to other backend ECSs added to the same listener. The value of this parameter ranges from 0 to 100. The default value is 1.
    poolId string
    Specifies the backend ECS group ID.
    protocolPort number
    Specifies the backend protocol, which is the port on which a backend ECS listens for traffic. The number of the port ranges from 1 to 65535.
    weight number
    Specifies the weight, which determines the portion of requests a backend ECS processes compared to other backend ECSs added to the same listener. The value of this parameter ranges from 0 to 100. The default value is 1.
    pool_id str
    Specifies the backend ECS group ID.
    protocol_port float
    Specifies the backend protocol, which is the port on which a backend ECS listens for traffic. The number of the port ranges from 1 to 65535.
    weight float
    Specifies the weight, which determines the portion of requests a backend ECS processes compared to other backend ECSs added to the same listener. The value of this parameter ranges from 0 to 100. The default value is 1.
    poolId String
    Specifies the backend ECS group ID.
    protocolPort Number
    Specifies the backend protocol, which is the port on which a backend ECS listens for traffic. The number of the port ranges from 1 to 65535.
    weight Number
    Specifies the weight, which determines the portion of requests a backend ECS processes compared to other backend ECSs added to the same listener. The value of this parameter ranges from 0 to 100. The default value is 1.

    AsGroupNetwork, AsGroupNetworkArgs

    Id string
    The network UUID.
    Id string
    The network UUID.
    id String
    The network UUID.
    id string
    The network UUID.
    id str
    The network UUID.
    id String
    The network UUID.

    AsGroupSecurityGroup, AsGroupSecurityGroupArgs

    Id string
    The UUID of the security group.
    Id string
    The UUID of the security group.
    id String
    The UUID of the security group.
    id string
    The UUID of the security group.
    id str
    The UUID of the security group.
    id String
    The UUID of the security group.

    AsGroupTimeouts, AsGroupTimeoutsArgs

    Create string
    Delete string
    Create string
    Delete string
    create String
    delete String
    create string
    delete string
    create str
    delete str
    create String
    delete String

    Package Details

    Repository
    flexibleengine flexibleenginecloud/terraform-provider-flexibleengine
    License
    Notes
    This Pulumi package is based on the flexibleengine Terraform Provider.
    flexibleengine logo
    flexibleengine 1.46.0 published on Monday, Apr 14, 2025 by flexibleenginecloud