Alibaba Cloud

v3.28.0 published on Tuesday, Aug 16, 2022 by Pulumi

AutoProvisioningGroup

Provides a ECS auto provisioning group resource which is a solution that uses preemptive instances and pay_as_you_go instances to rapidly deploy clusters.

NOTE: Available in 1.79.0+

Block config

The config mapping supports the following:

  • instance_type - (Optional) The instance type of the Nth extended configurations of the launch template.
  • max_price - (Required) The maximum price of the instance type specified in the Nth extended configurations of the launch template.
  • vswitch_id - (Required) The ID of the VSwitch in the Nth extended configurations of the launch template.
  • weighted_capacity - (Required) The weight of the instance type specified in the Nth extended configurations of the launch template.
  • priority - (Optional) The priority of the instance type specified in the Nth extended configurations of the launch template. A value of 0 indicates the highest priority.

Example Usage

using Pulumi;
using AliCloud = Pulumi.AliCloud;

class MyStack : Stack
{
    public MyStack()
    {
        var config = new Config();
        var name = config.Get("name") ?? "auto_provisioning_group";
        var defaultZones = Output.Create(AliCloud.GetZones.InvokeAsync(new AliCloud.GetZonesArgs
        {
            AvailableDiskCategory = "cloud_efficiency",
            AvailableResourceCreation = "VSwitch",
        }));
        var defaultNetwork = new AliCloud.Vpc.Network("defaultNetwork", new AliCloud.Vpc.NetworkArgs
        {
            VpcName = name,
            CidrBlock = "172.16.0.0/16",
        });
        var defaultSwitch = new AliCloud.Vpc.Switch("defaultSwitch", new AliCloud.Vpc.SwitchArgs
        {
            VpcId = defaultNetwork.Id,
            CidrBlock = "172.16.0.0/24",
            ZoneId = defaultZones.Apply(defaultZones => defaultZones.Zones?[0]?.Id),
            VswitchName = name,
        });
        var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup("defaultSecurityGroup", new AliCloud.Ecs.SecurityGroupArgs
        {
            VpcId = defaultNetwork.Id,
        });
        var defaultImages = Output.Create(AliCloud.Ecs.GetImages.InvokeAsync(new AliCloud.Ecs.GetImagesArgs
        {
            NameRegex = "^ubuntu_18.*64",
            MostRecent = true,
            Owners = "system",
        }));
        var template = new AliCloud.Ecs.EcsLaunchTemplate("template", new AliCloud.Ecs.EcsLaunchTemplateArgs
        {
            ImageId = defaultImages.Apply(defaultImages => defaultImages.Images?[0]?.Id),
            InstanceType = "ecs.n1.tiny",
            SecurityGroupId = defaultSecurityGroup.Id,
        });
        var defaultAutoProvisioningGroup = new AliCloud.Ecs.AutoProvisioningGroup("defaultAutoProvisioningGroup", new AliCloud.Ecs.AutoProvisioningGroupArgs
        {
            LaunchTemplateId = template.Id,
            TotalTargetCapacity = "4",
            PayAsYouGoTargetCapacity = "1",
            SpotTargetCapacity = "2",
            LaunchTemplateConfigs = 
            {
                new AliCloud.Ecs.Inputs.AutoProvisioningGroupLaunchTemplateConfigArgs
                {
                    InstanceType = "ecs.n1.small",
                    VswitchId = defaultSwitch.Id,
                    WeightedCapacity = "2",
                    MaxPrice = "2",
                },
            },
        });
    }

}
package main

import (
	"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/vpc"
	"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 := "auto_provisioning_group"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		defaultZones, err := alicloud.GetZones(ctx, &GetZonesArgs{
			AvailableDiskCategory:     pulumi.StringRef("cloud_efficiency"),
			AvailableResourceCreation: pulumi.StringRef("VSwitch"),
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:       defaultNetwork.ID(),
			CidrBlock:   pulumi.String("172.16.0.0/24"),
			ZoneId:      pulumi.String(defaultZones.Zones[0].Id),
			VswitchName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "defaultSecurityGroup", &ecs.SecurityGroupArgs{
			VpcId: defaultNetwork.ID(),
		})
		if err != nil {
			return err
		}
		defaultImages, 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
		}
		template, err := ecs.NewEcsLaunchTemplate(ctx, "template", &ecs.EcsLaunchTemplateArgs{
			ImageId:         pulumi.String(defaultImages.Images[0].Id),
			InstanceType:    pulumi.String("ecs.n1.tiny"),
			SecurityGroupId: defaultSecurityGroup.ID(),
		})
		if err != nil {
			return err
		}
		_, err = ecs.NewAutoProvisioningGroup(ctx, "defaultAutoProvisioningGroup", &ecs.AutoProvisioningGroupArgs{
			LaunchTemplateId:         template.ID(),
			TotalTargetCapacity:      pulumi.String("4"),
			PayAsYouGoTargetCapacity: pulumi.String("1"),
			SpotTargetCapacity:       pulumi.String("2"),
			LaunchTemplateConfigs: ecs.AutoProvisioningGroupLaunchTemplateConfigArray{
				&ecs.AutoProvisioningGroupLaunchTemplateConfigArgs{
					InstanceType:     pulumi.String("ecs.n1.small"),
					VswitchId:        defaultSwitch.ID(),
					WeightedCapacity: pulumi.String("2"),
					MaxPrice:         pulumi.String("2"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.AlicloudFunctions;
import com.pulumi.alicloud.adb.inputs.GetZonesArgs;
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.EcsFunctions;
import com.pulumi.alicloud.ecs.inputs.GetImagesArgs;
import com.pulumi.alicloud.ecs.EcsLaunchTemplate;
import com.pulumi.alicloud.ecs.EcsLaunchTemplateArgs;
import com.pulumi.alicloud.ecs.AutoProvisioningGroup;
import com.pulumi.alicloud.ecs.AutoProvisioningGroupArgs;
import com.pulumi.alicloud.ecs.inputs.AutoProvisioningGroupLaunchTemplateConfigArgs;
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("auto_provisioning_group");
        final var defaultZones = AlicloudFunctions.getZones(GetZonesArgs.builder()
            .availableDiskCategory("cloud_efficiency")
            .availableResourceCreation("VSwitch")
            .build());

        var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()        
            .vpcName(name)
            .cidrBlock("172.16.0.0/16")
            .build());

        var defaultSwitch = new Switch("defaultSwitch", SwitchArgs.builder()        
            .vpcId(defaultNetwork.id())
            .cidrBlock("172.16.0.0/24")
            .zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
            .vswitchName(name)
            .build());

        var defaultSecurityGroup = new SecurityGroup("defaultSecurityGroup", SecurityGroupArgs.builder()        
            .vpcId(defaultNetwork.id())
            .build());

        final var defaultImages = EcsFunctions.getImages(GetImagesArgs.builder()
            .nameRegex("^ubuntu_18.*64")
            .mostRecent(true)
            .owners("system")
            .build());

        var template = new EcsLaunchTemplate("template", EcsLaunchTemplateArgs.builder()        
            .imageId(defaultImages.applyValue(getImagesResult -> getImagesResult.images()[0].id()))
            .instanceType("ecs.n1.tiny")
            .securityGroupId(defaultSecurityGroup.id())
            .build());

        var defaultAutoProvisioningGroup = new AutoProvisioningGroup("defaultAutoProvisioningGroup", AutoProvisioningGroupArgs.builder()        
            .launchTemplateId(template.id())
            .totalTargetCapacity("4")
            .payAsYouGoTargetCapacity("1")
            .spotTargetCapacity("2")
            .launchTemplateConfigs(AutoProvisioningGroupLaunchTemplateConfigArgs.builder()
                .instanceType("ecs.n1.small")
                .vswitchId(defaultSwitch.id())
                .weightedCapacity("2")
                .maxPrice("2")
                .build())
            .build());

    }
}
import pulumi
import pulumi_alicloud as alicloud

config = pulumi.Config()
name = config.get("name")
if name is None:
    name = "auto_provisioning_group"
default_zones = alicloud.get_zones(available_disk_category="cloud_efficiency",
    available_resource_creation="VSwitch")
default_network = alicloud.vpc.Network("defaultNetwork",
    vpc_name=name,
    cidr_block="172.16.0.0/16")
default_switch = alicloud.vpc.Switch("defaultSwitch",
    vpc_id=default_network.id,
    cidr_block="172.16.0.0/24",
    zone_id=default_zones.zones[0].id,
    vswitch_name=name)
default_security_group = alicloud.ecs.SecurityGroup("defaultSecurityGroup", vpc_id=default_network.id)
default_images = alicloud.ecs.get_images(name_regex="^ubuntu_18.*64",
    most_recent=True,
    owners="system")
template = alicloud.ecs.EcsLaunchTemplate("template",
    image_id=default_images.images[0].id,
    instance_type="ecs.n1.tiny",
    security_group_id=default_security_group.id)
default_auto_provisioning_group = alicloud.ecs.AutoProvisioningGroup("defaultAutoProvisioningGroup",
    launch_template_id=template.id,
    total_target_capacity="4",
    pay_as_you_go_target_capacity="1",
    spot_target_capacity="2",
    launch_template_configs=[alicloud.ecs.AutoProvisioningGroupLaunchTemplateConfigArgs(
        instance_type="ecs.n1.small",
        vswitch_id=default_switch.id,
        weighted_capacity="2",
        max_price="2",
    )])
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";

const config = new pulumi.Config();
const name = config.get("name") || "auto_provisioning_group";
const defaultZones = alicloud.getZones({
    availableDiskCategory: "cloud_efficiency",
    availableResourceCreation: "VSwitch",
});
const defaultNetwork = new alicloud.vpc.Network("defaultNetwork", {
    vpcName: name,
    cidrBlock: "172.16.0.0/16",
});
const defaultSwitch = new alicloud.vpc.Switch("defaultSwitch", {
    vpcId: defaultNetwork.id,
    cidrBlock: "172.16.0.0/24",
    zoneId: defaultZones.then(defaultZones => defaultZones.zones?[0]?.id),
    vswitchName: name,
});
const defaultSecurityGroup = new alicloud.ecs.SecurityGroup("defaultSecurityGroup", {vpcId: defaultNetwork.id});
const defaultImages = alicloud.ecs.getImages({
    nameRegex: "^ubuntu_18.*64",
    mostRecent: true,
    owners: "system",
});
const template = new alicloud.ecs.EcsLaunchTemplate("template", {
    imageId: defaultImages.then(defaultImages => defaultImages.images?[0]?.id),
    instanceType: "ecs.n1.tiny",
    securityGroupId: defaultSecurityGroup.id,
});
const defaultAutoProvisioningGroup = new alicloud.ecs.AutoProvisioningGroup("defaultAutoProvisioningGroup", {
    launchTemplateId: template.id,
    totalTargetCapacity: "4",
    payAsYouGoTargetCapacity: "1",
    spotTargetCapacity: "2",
    launchTemplateConfigs: [{
        instanceType: "ecs.n1.small",
        vswitchId: defaultSwitch.id,
        weightedCapacity: "2",
        maxPrice: "2",
    }],
});
configuration:
  name:
    type: string
    default: auto_provisioning_group
resources:
  defaultNetwork:
    type: alicloud:vpc:Network
    properties:
      vpcName: ${name}
      cidrBlock: 172.16.0.0/16
  defaultSwitch:
    type: alicloud:vpc:Switch
    properties:
      vpcId: ${defaultNetwork.id}
      cidrBlock: 172.16.0.0/24
      zoneId: ${defaultZones.zones[0].id}
      vswitchName: ${name}
  defaultAutoProvisioningGroup:
    type: alicloud:ecs:AutoProvisioningGroup
    properties:
      launchTemplateId: ${template.id}
      totalTargetCapacity: 4
      payAsYouGoTargetCapacity: 1
      spotTargetCapacity: 2
      launchTemplateConfigs:
        - instanceType: ecs.n1.small
          vswitchId: ${defaultSwitch.id}
          weightedCapacity: 2
          maxPrice: 2
  template:
    type: alicloud:ecs:EcsLaunchTemplate
    properties:
      imageId: ${defaultImages.images[0].id}
      instanceType: ecs.n1.tiny
      securityGroupId: ${defaultSecurityGroup.id}
  defaultSecurityGroup:
    type: alicloud:ecs:SecurityGroup
    properties:
      vpcId: ${defaultNetwork.id}
variables:
  defaultZones:
    Fn::Invoke:
      Function: alicloud:getZones
      Arguments:
        availableDiskCategory: cloud_efficiency
        availableResourceCreation: VSwitch
  defaultImages:
    Fn::Invoke:
      Function: alicloud:ecs:getImages
      Arguments:
        nameRegex: ^ubuntu_18.*64
        mostRecent: true
        owners: system

Create a AutoProvisioningGroup Resource

new AutoProvisioningGroup(name: string, args: AutoProvisioningGroupArgs, opts?: CustomResourceOptions);
@overload
def AutoProvisioningGroup(resource_name: str,
                          opts: Optional[ResourceOptions] = None,
                          auto_provisioning_group_name: Optional[str] = None,
                          auto_provisioning_group_type: Optional[str] = None,
                          default_target_capacity_type: Optional[str] = None,
                          description: Optional[str] = None,
                          excess_capacity_termination_policy: Optional[str] = None,
                          launch_template_configs: Optional[Sequence[AutoProvisioningGroupLaunchTemplateConfigArgs]] = None,
                          launch_template_id: Optional[str] = None,
                          launch_template_version: Optional[str] = None,
                          max_spot_price: Optional[float] = None,
                          pay_as_you_go_allocation_strategy: Optional[str] = None,
                          pay_as_you_go_target_capacity: Optional[str] = None,
                          spot_allocation_strategy: Optional[str] = None,
                          spot_instance_interruption_behavior: Optional[str] = None,
                          spot_instance_pools_to_use_count: Optional[int] = None,
                          spot_target_capacity: Optional[str] = None,
                          terminate_instances: Optional[bool] = None,
                          terminate_instances_with_expiration: Optional[bool] = None,
                          total_target_capacity: Optional[str] = None,
                          valid_from: Optional[str] = None,
                          valid_until: Optional[str] = None)
@overload
def AutoProvisioningGroup(resource_name: str,
                          args: AutoProvisioningGroupArgs,
                          opts: Optional[ResourceOptions] = None)
func NewAutoProvisioningGroup(ctx *Context, name string, args AutoProvisioningGroupArgs, opts ...ResourceOption) (*AutoProvisioningGroup, error)
public AutoProvisioningGroup(string name, AutoProvisioningGroupArgs args, CustomResourceOptions? opts = null)
public AutoProvisioningGroup(String name, AutoProvisioningGroupArgs args)
public AutoProvisioningGroup(String name, AutoProvisioningGroupArgs args, CustomResourceOptions options)
type: alicloud:ecs:AutoProvisioningGroup
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

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

AutoProvisioningGroup 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 AutoProvisioningGroup resource accepts the following input properties:

LaunchTemplateConfigs List<Pulumi.AliCloud.Ecs.Inputs.AutoProvisioningGroupLaunchTemplateConfigArgs>

DataDisk mappings to attach to ecs instance. See Block config below for details.

LaunchTemplateId string

The ID of the instance launch template associated with the auto provisioning group.

TotalTargetCapacity string

The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.

AutoProvisioningGroupName string

The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)

AutoProvisioningGroupType string

The type of the auto provisioning group. Valid values:request and maintain,Default value: maintain.

DefaultTargetCapacityType string

The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.

Description string

The description of the auto provisioning group.

ExcessCapacityTerminationPolicy string

The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.

LaunchTemplateVersion string

The version of the instance launch template associated with the auto provisioning group.

MaxSpotPrice double

The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.

PayAsYouGoAllocationStrategy string

The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.

PayAsYouGoTargetCapacity string

The target capacity of pay-as-you-go instances in the auto provisioning group.

SpotAllocationStrategy string

The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.

SpotInstanceInterruptionBehavior string

The default behavior after preemptible instances are shut down. Valid values: stop and terminate,Default value: stop.

SpotInstancePoolsToUseCount int

This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.

SpotTargetCapacity string

The target capacity of preemptible instances in the auto provisioning group.

TerminateInstances bool

Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.

TerminateInstancesWithExpiration bool

The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.

ValidFrom string

The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the valid_until parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.

ValidUntil string

The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the valid_from parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.

LaunchTemplateConfigs []AutoProvisioningGroupLaunchTemplateConfigArgs

DataDisk mappings to attach to ecs instance. See Block config below for details.

LaunchTemplateId string

The ID of the instance launch template associated with the auto provisioning group.

TotalTargetCapacity string

The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.

AutoProvisioningGroupName string

The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)

AutoProvisioningGroupType string

The type of the auto provisioning group. Valid values:request and maintain,Default value: maintain.

DefaultTargetCapacityType string

The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.

Description string

The description of the auto provisioning group.

ExcessCapacityTerminationPolicy string

The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.

LaunchTemplateVersion string

The version of the instance launch template associated with the auto provisioning group.

MaxSpotPrice float64

The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.

PayAsYouGoAllocationStrategy string

The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.

PayAsYouGoTargetCapacity string

The target capacity of pay-as-you-go instances in the auto provisioning group.

SpotAllocationStrategy string

The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.

SpotInstanceInterruptionBehavior string

The default behavior after preemptible instances are shut down. Valid values: stop and terminate,Default value: stop.

SpotInstancePoolsToUseCount int

This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.

SpotTargetCapacity string

The target capacity of preemptible instances in the auto provisioning group.

TerminateInstances bool

Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.

TerminateInstancesWithExpiration bool

The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.

ValidFrom string

The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the valid_until parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.

ValidUntil string

The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the valid_from parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.

launchTemplateConfigs List<AutoProvisioningGroupLaunchTemplateConfigArgs>

DataDisk mappings to attach to ecs instance. See Block config below for details.

launchTemplateId String

The ID of the instance launch template associated with the auto provisioning group.

totalTargetCapacity String

The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.

autoProvisioningGroupName String

The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)

autoProvisioningGroupType String

The type of the auto provisioning group. Valid values:request and maintain,Default value: maintain.

defaultTargetCapacityType String

The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.

description String

The description of the auto provisioning group.

excessCapacityTerminationPolicy String

The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.

launchTemplateVersion String

The version of the instance launch template associated with the auto provisioning group.

maxSpotPrice Double

The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.

payAsYouGoAllocationStrategy String

The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.

payAsYouGoTargetCapacity String

The target capacity of pay-as-you-go instances in the auto provisioning group.

spotAllocationStrategy String

The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.

spotInstanceInterruptionBehavior String

The default behavior after preemptible instances are shut down. Valid values: stop and terminate,Default value: stop.

spotInstancePoolsToUseCount Integer

This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.

spotTargetCapacity String

The target capacity of preemptible instances in the auto provisioning group.

terminateInstances Boolean

Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.

terminateInstancesWithExpiration Boolean

The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.

validFrom String

The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the valid_until parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.

validUntil String

The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the valid_from parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.

launchTemplateConfigs AutoProvisioningGroupLaunchTemplateConfigArgs[]

DataDisk mappings to attach to ecs instance. See Block config below for details.

launchTemplateId string

The ID of the instance launch template associated with the auto provisioning group.

totalTargetCapacity string

The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.

autoProvisioningGroupName string

The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)

autoProvisioningGroupType string

The type of the auto provisioning group. Valid values:request and maintain,Default value: maintain.

defaultTargetCapacityType string

The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.

description string

The description of the auto provisioning group.

excessCapacityTerminationPolicy string

The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.

launchTemplateVersion string

The version of the instance launch template associated with the auto provisioning group.

maxSpotPrice number

The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.

payAsYouGoAllocationStrategy string

The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.

payAsYouGoTargetCapacity string

The target capacity of pay-as-you-go instances in the auto provisioning group.

spotAllocationStrategy string

The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.

spotInstanceInterruptionBehavior string

The default behavior after preemptible instances are shut down. Valid values: stop and terminate,Default value: stop.

spotInstancePoolsToUseCount number

This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.

spotTargetCapacity string

The target capacity of preemptible instances in the auto provisioning group.

terminateInstances boolean

Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.

terminateInstancesWithExpiration boolean

The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.

validFrom string

The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the valid_until parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.

validUntil string

The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the valid_from parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.

launch_template_configs Sequence[AutoProvisioningGroupLaunchTemplateConfigArgs]

DataDisk mappings to attach to ecs instance. See Block config below for details.

launch_template_id str

The ID of the instance launch template associated with the auto provisioning group.

total_target_capacity str

The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.

auto_provisioning_group_name str

The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)

auto_provisioning_group_type str

The type of the auto provisioning group. Valid values:request and maintain,Default value: maintain.

default_target_capacity_type str

The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.

description str

The description of the auto provisioning group.

excess_capacity_termination_policy str

The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.

launch_template_version str

The version of the instance launch template associated with the auto provisioning group.

max_spot_price float

The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.

pay_as_you_go_allocation_strategy str

The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.

pay_as_you_go_target_capacity str

The target capacity of pay-as-you-go instances in the auto provisioning group.

spot_allocation_strategy str

The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.

spot_instance_interruption_behavior str

The default behavior after preemptible instances are shut down. Valid values: stop and terminate,Default value: stop.

spot_instance_pools_to_use_count int

This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.

spot_target_capacity str

The target capacity of preemptible instances in the auto provisioning group.

terminate_instances bool

Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.

terminate_instances_with_expiration bool

The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.

valid_from str

The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the valid_until parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.

valid_until str

The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the valid_from parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.

launchTemplateConfigs List<Property Map>

DataDisk mappings to attach to ecs instance. See Block config below for details.

launchTemplateId String

The ID of the instance launch template associated with the auto provisioning group.

totalTargetCapacity String

The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.

autoProvisioningGroupName String

The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)

autoProvisioningGroupType String

The type of the auto provisioning group. Valid values:request and maintain,Default value: maintain.

defaultTargetCapacityType String

The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.

description String

The description of the auto provisioning group.

excessCapacityTerminationPolicy String

The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.

launchTemplateVersion String

The version of the instance launch template associated with the auto provisioning group.

maxSpotPrice Number

The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.

payAsYouGoAllocationStrategy String

The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.

payAsYouGoTargetCapacity String

The target capacity of pay-as-you-go instances in the auto provisioning group.

spotAllocationStrategy String

The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.

spotInstanceInterruptionBehavior String

The default behavior after preemptible instances are shut down. Valid values: stop and terminate,Default value: stop.

spotInstancePoolsToUseCount Number

This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.

spotTargetCapacity String

The target capacity of preemptible instances in the auto provisioning group.

terminateInstances Boolean

Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.

terminateInstancesWithExpiration Boolean

The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.

validFrom String

The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the valid_until parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.

validUntil String

The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the valid_from parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.

Outputs

All input properties are implicitly available as output properties. Additionally, the AutoProvisioningGroup 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 an Existing AutoProvisioningGroup Resource

Get an existing AutoProvisioningGroup 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?: AutoProvisioningGroupState, opts?: CustomResourceOptions): AutoProvisioningGroup
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        auto_provisioning_group_name: Optional[str] = None,
        auto_provisioning_group_type: Optional[str] = None,
        default_target_capacity_type: Optional[str] = None,
        description: Optional[str] = None,
        excess_capacity_termination_policy: Optional[str] = None,
        launch_template_configs: Optional[Sequence[AutoProvisioningGroupLaunchTemplateConfigArgs]] = None,
        launch_template_id: Optional[str] = None,
        launch_template_version: Optional[str] = None,
        max_spot_price: Optional[float] = None,
        pay_as_you_go_allocation_strategy: Optional[str] = None,
        pay_as_you_go_target_capacity: Optional[str] = None,
        spot_allocation_strategy: Optional[str] = None,
        spot_instance_interruption_behavior: Optional[str] = None,
        spot_instance_pools_to_use_count: Optional[int] = None,
        spot_target_capacity: Optional[str] = None,
        terminate_instances: Optional[bool] = None,
        terminate_instances_with_expiration: Optional[bool] = None,
        total_target_capacity: Optional[str] = None,
        valid_from: Optional[str] = None,
        valid_until: Optional[str] = None) -> AutoProvisioningGroup
func GetAutoProvisioningGroup(ctx *Context, name string, id IDInput, state *AutoProvisioningGroupState, opts ...ResourceOption) (*AutoProvisioningGroup, error)
public static AutoProvisioningGroup Get(string name, Input<string> id, AutoProvisioningGroupState? state, CustomResourceOptions? opts = null)
public static AutoProvisioningGroup get(String name, Output<String> id, AutoProvisioningGroupState 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:
AutoProvisioningGroupName string

The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)

AutoProvisioningGroupType string

The type of the auto provisioning group. Valid values:request and maintain,Default value: maintain.

DefaultTargetCapacityType string

The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.

Description string

The description of the auto provisioning group.

ExcessCapacityTerminationPolicy string

The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.

LaunchTemplateConfigs List<Pulumi.AliCloud.Ecs.Inputs.AutoProvisioningGroupLaunchTemplateConfigArgs>

DataDisk mappings to attach to ecs instance. See Block config below for details.

LaunchTemplateId string

The ID of the instance launch template associated with the auto provisioning group.

LaunchTemplateVersion string

The version of the instance launch template associated with the auto provisioning group.

MaxSpotPrice double

The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.

PayAsYouGoAllocationStrategy string

The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.

PayAsYouGoTargetCapacity string

The target capacity of pay-as-you-go instances in the auto provisioning group.

SpotAllocationStrategy string

The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.

SpotInstanceInterruptionBehavior string

The default behavior after preemptible instances are shut down. Valid values: stop and terminate,Default value: stop.

SpotInstancePoolsToUseCount int

This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.

SpotTargetCapacity string

The target capacity of preemptible instances in the auto provisioning group.

TerminateInstances bool

Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.

TerminateInstancesWithExpiration bool

The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.

TotalTargetCapacity string

The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.

ValidFrom string

The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the valid_until parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.

ValidUntil string

The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the valid_from parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.

AutoProvisioningGroupName string

The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)

AutoProvisioningGroupType string

The type of the auto provisioning group. Valid values:request and maintain,Default value: maintain.

DefaultTargetCapacityType string

The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.

Description string

The description of the auto provisioning group.

ExcessCapacityTerminationPolicy string

The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.

LaunchTemplateConfigs []AutoProvisioningGroupLaunchTemplateConfigArgs

DataDisk mappings to attach to ecs instance. See Block config below for details.

LaunchTemplateId string

The ID of the instance launch template associated with the auto provisioning group.

LaunchTemplateVersion string

The version of the instance launch template associated with the auto provisioning group.

MaxSpotPrice float64

The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.

PayAsYouGoAllocationStrategy string

The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.

PayAsYouGoTargetCapacity string

The target capacity of pay-as-you-go instances in the auto provisioning group.

SpotAllocationStrategy string

The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.

SpotInstanceInterruptionBehavior string

The default behavior after preemptible instances are shut down. Valid values: stop and terminate,Default value: stop.

SpotInstancePoolsToUseCount int

This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.

SpotTargetCapacity string

The target capacity of preemptible instances in the auto provisioning group.

TerminateInstances bool

Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.

TerminateInstancesWithExpiration bool

The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.

TotalTargetCapacity string

The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.

ValidFrom string

The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the valid_until parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.

ValidUntil string

The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the valid_from parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.

autoProvisioningGroupName String

The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)

autoProvisioningGroupType String

The type of the auto provisioning group. Valid values:request and maintain,Default value: maintain.

defaultTargetCapacityType String

The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.

description String

The description of the auto provisioning group.

excessCapacityTerminationPolicy String

The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.

launchTemplateConfigs List<AutoProvisioningGroupLaunchTemplateConfigArgs>

DataDisk mappings to attach to ecs instance. See Block config below for details.

launchTemplateId String

The ID of the instance launch template associated with the auto provisioning group.

launchTemplateVersion String

The version of the instance launch template associated with the auto provisioning group.

maxSpotPrice Double

The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.

payAsYouGoAllocationStrategy String

The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.

payAsYouGoTargetCapacity String

The target capacity of pay-as-you-go instances in the auto provisioning group.

spotAllocationStrategy String

The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.

spotInstanceInterruptionBehavior String

The default behavior after preemptible instances are shut down. Valid values: stop and terminate,Default value: stop.

spotInstancePoolsToUseCount Integer

This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.

spotTargetCapacity String

The target capacity of preemptible instances in the auto provisioning group.

terminateInstances Boolean

Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.

terminateInstancesWithExpiration Boolean

The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.

totalTargetCapacity String

The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.

validFrom String

The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the valid_until parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.

validUntil String

The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the valid_from parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.

autoProvisioningGroupName string

The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)

autoProvisioningGroupType string

The type of the auto provisioning group. Valid values:request and maintain,Default value: maintain.

defaultTargetCapacityType string

The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.

description string

The description of the auto provisioning group.

excessCapacityTerminationPolicy string

The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.

launchTemplateConfigs AutoProvisioningGroupLaunchTemplateConfigArgs[]

DataDisk mappings to attach to ecs instance. See Block config below for details.

launchTemplateId string

The ID of the instance launch template associated with the auto provisioning group.

launchTemplateVersion string

The version of the instance launch template associated with the auto provisioning group.

maxSpotPrice number

The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.

payAsYouGoAllocationStrategy string

The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.

payAsYouGoTargetCapacity string

The target capacity of pay-as-you-go instances in the auto provisioning group.

spotAllocationStrategy string

The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.

spotInstanceInterruptionBehavior string

The default behavior after preemptible instances are shut down. Valid values: stop and terminate,Default value: stop.

spotInstancePoolsToUseCount number

This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.

spotTargetCapacity string

The target capacity of preemptible instances in the auto provisioning group.

terminateInstances boolean

Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.

terminateInstancesWithExpiration boolean

The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.

totalTargetCapacity string

The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.

validFrom string

The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the valid_until parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.

validUntil string

The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the valid_from parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.

auto_provisioning_group_name str

The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)

auto_provisioning_group_type str

The type of the auto provisioning group. Valid values:request and maintain,Default value: maintain.

default_target_capacity_type str

The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.

description str

The description of the auto provisioning group.

excess_capacity_termination_policy str

The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.

launch_template_configs Sequence[AutoProvisioningGroupLaunchTemplateConfigArgs]

DataDisk mappings to attach to ecs instance. See Block config below for details.

launch_template_id str

The ID of the instance launch template associated with the auto provisioning group.

launch_template_version str

The version of the instance launch template associated with the auto provisioning group.

max_spot_price float

The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.

pay_as_you_go_allocation_strategy str

The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.

pay_as_you_go_target_capacity str

The target capacity of pay-as-you-go instances in the auto provisioning group.

spot_allocation_strategy str

The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.

spot_instance_interruption_behavior str

The default behavior after preemptible instances are shut down. Valid values: stop and terminate,Default value: stop.

spot_instance_pools_to_use_count int

This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.

spot_target_capacity str

The target capacity of preemptible instances in the auto provisioning group.

terminate_instances bool

Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.

terminate_instances_with_expiration bool

The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.

total_target_capacity str

The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.

valid_from str

The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the valid_until parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.

valid_until str

The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the valid_from parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.

autoProvisioningGroupName String

The name of the auto provisioning group to be created. It must be 2 to 128 characters in length. It must start with a letter but cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), and hyphens (-)

autoProvisioningGroupType String

The type of the auto provisioning group. Valid values:request and maintain,Default value: maintain.

defaultTargetCapacityType String

The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.

description String

The description of the auto provisioning group.

excessCapacityTerminationPolicy String

The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.

launchTemplateConfigs List<Property Map>

DataDisk mappings to attach to ecs instance. See Block config below for details.

launchTemplateId String

The ID of the instance launch template associated with the auto provisioning group.

launchTemplateVersion String

The version of the instance launch template associated with the auto provisioning group.

maxSpotPrice Number

The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.

payAsYouGoAllocationStrategy String

The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.

payAsYouGoTargetCapacity String

The target capacity of pay-as-you-go instances in the auto provisioning group.

spotAllocationStrategy String

The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.

spotInstanceInterruptionBehavior String

The default behavior after preemptible instances are shut down. Valid values: stop and terminate,Default value: stop.

spotInstancePoolsToUseCount Number

This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.

spotTargetCapacity String

The target capacity of preemptible instances in the auto provisioning group.

terminateInstances Boolean

Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.

terminateInstancesWithExpiration Boolean

The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.

totalTargetCapacity String

The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.

validFrom String

The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the valid_until parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.

validUntil String

The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the valid_from parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.

Supporting Types

AutoProvisioningGroupLaunchTemplateConfig

Import

ECS auto provisioning group can be imported using the id, e.g.

 $ pulumi import alicloud:ecs/autoProvisioningGroup:AutoProvisioningGroup example asg-abc123456

Package Details

Repository
https://github.com/pulumi/pulumi-alicloud
License
Apache-2.0
Notes

This Pulumi package is based on the alicloud Terraform Provider.