1. Packages
  2. Alibaba Cloud
  3. API Docs
  4. ecs
  5. EcsLaunchTemplate
Alibaba Cloud v3.44.0 published on Thursday, Sep 28, 2023 by Pulumi

alicloud.ecs.EcsLaunchTemplate

Explore with Pulumi AI

alicloud logo
Alibaba Cloud v3.44.0 published on Thursday, Sep 28, 2023 by Pulumi

    Provides a ECS Launch Template resource.

    For information about ECS Launch Template and how to use it, see What is Launch Template.

    NOTE: Available in v1.120.0+.

    Example Usage

    Basic Usage

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AliCloud = Pulumi.AliCloud;
    
    return await Deployment.RunAsync(() => 
    {
        var defaultZones = AliCloud.GetZones.Invoke(new()
        {
            AvailableDiskCategory = "cloud_efficiency",
            AvailableResourceCreation = "VSwitch",
        });
    
        var defaultInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()
        {
            AvailabilityZone = defaultZones.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
        });
    
        var defaultImages = AliCloud.Ecs.GetImages.Invoke(new()
        {
            NameRegex = "^ubuntu_[0-9]+_[0-9]+_x64*",
            Owners = "system",
        });
    
        var defaultNetwork = new AliCloud.Vpc.Network("defaultNetwork", new()
        {
            VpcName = "terraform-example",
            CidrBlock = "172.17.3.0/24",
        });
    
        var defaultSwitch = new AliCloud.Vpc.Switch("defaultSwitch", new()
        {
            VswitchName = "terraform-example",
            CidrBlock = "172.17.3.0/24",
            VpcId = defaultNetwork.Id,
            ZoneId = defaultZones.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
        });
    
        var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup("defaultSecurityGroup", new()
        {
            VpcId = defaultNetwork.Id,
        });
    
        var defaultEcsLaunchTemplate = new AliCloud.Ecs.EcsLaunchTemplate("defaultEcsLaunchTemplate", new()
        {
            LaunchTemplateName = "terraform-example",
            Description = "terraform-example",
            ImageId = defaultImages.Apply(getImagesResult => getImagesResult.Images[0]?.Id),
            HostName = "terraform-example",
            InstanceChargeType = "PrePaid",
            InstanceName = "terraform-example",
            InstanceType = defaultInstanceTypes.Apply(getInstanceTypesResult => getInstanceTypesResult.InstanceTypes[0]?.Id),
            InternetChargeType = "PayByBandwidth",
            InternetMaxBandwidthIn = 5,
            InternetMaxBandwidthOut = 5,
            IoOptimized = "optimized",
            KeyPairName = "key_pair_name",
            RamRoleName = "ram_role_name",
            NetworkType = "vpc",
            SecurityEnhancementStrategy = "Active",
            SpotPriceLimit = 5,
            SpotStrategy = "SpotWithPriceLimit",
            SecurityGroupIds = new[]
            {
                defaultSecurityGroup.Id,
            },
            SystemDisk = new AliCloud.Ecs.Inputs.EcsLaunchTemplateSystemDiskArgs
            {
                Category = "cloud_ssd",
                Description = "Test For Terraform",
                Name = "terraform-example",
                Size = 40,
                DeleteWithInstance = false,
            },
            UserData = "xxxxxxx",
            VswitchId = defaultSwitch.Id,
            VpcId = defaultNetwork.Id,
            ZoneId = defaultZones.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
            TemplateTags = 
            {
                { "Create", "Terraform" },
                { "For", "example" },
            },
            NetworkInterfaces = new AliCloud.Ecs.Inputs.EcsLaunchTemplateNetworkInterfacesArgs
            {
                Name = "eth0",
                Description = "hello1",
                PrimaryIp = "10.0.0.2",
                SecurityGroupId = defaultSecurityGroup.Id,
                VswitchId = defaultSwitch.Id,
            },
            DataDisks = new[]
            {
                new AliCloud.Ecs.Inputs.EcsLaunchTemplateDataDiskArgs
                {
                    Name = "disk1",
                    Description = "description",
                    DeleteWithInstance = true,
                    Category = "cloud",
                    Encrypted = false,
                    PerformanceLevel = "PL0",
                    Size = 20,
                },
                new AliCloud.Ecs.Inputs.EcsLaunchTemplateDataDiskArgs
                {
                    Name = "disk2",
                    Description = "description2",
                    DeleteWithInstance = true,
                    Category = "cloud",
                    Encrypted = false,
                    PerformanceLevel = "PL0",
                    Size = 20,
                },
            },
        });
    
    });
    
    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"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
    			AvailableDiskCategory:     pulumi.StringRef("cloud_efficiency"),
    			AvailableResourceCreation: pulumi.StringRef("VSwitch"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		defaultInstanceTypes, err := ecs.GetInstanceTypes(ctx, &ecs.GetInstanceTypesArgs{
    			AvailabilityZone: pulumi.StringRef(defaultZones.Zones[0].Id),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		defaultImages, err := ecs.GetImages(ctx, &ecs.GetImagesArgs{
    			NameRegex: pulumi.StringRef("^ubuntu_[0-9]+_[0-9]+_x64*"),
    			Owners:    pulumi.StringRef("system"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
    			VpcName:   pulumi.String("terraform-example"),
    			CidrBlock: pulumi.String("172.17.3.0/24"),
    		})
    		if err != nil {
    			return err
    		}
    		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
    			VswitchName: pulumi.String("terraform-example"),
    			CidrBlock:   pulumi.String("172.17.3.0/24"),
    			VpcId:       defaultNetwork.ID(),
    			ZoneId:      *pulumi.String(defaultZones.Zones[0].Id),
    		})
    		if err != nil {
    			return err
    		}
    		defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "defaultSecurityGroup", &ecs.SecurityGroupArgs{
    			VpcId: defaultNetwork.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = ecs.NewEcsLaunchTemplate(ctx, "defaultEcsLaunchTemplate", &ecs.EcsLaunchTemplateArgs{
    			LaunchTemplateName:          pulumi.String("terraform-example"),
    			Description:                 pulumi.String("terraform-example"),
    			ImageId:                     *pulumi.String(defaultImages.Images[0].Id),
    			HostName:                    pulumi.String("terraform-example"),
    			InstanceChargeType:          pulumi.String("PrePaid"),
    			InstanceName:                pulumi.String("terraform-example"),
    			InstanceType:                *pulumi.String(defaultInstanceTypes.InstanceTypes[0].Id),
    			InternetChargeType:          pulumi.String("PayByBandwidth"),
    			InternetMaxBandwidthIn:      pulumi.Int(5),
    			InternetMaxBandwidthOut:     pulumi.Int(5),
    			IoOptimized:                 pulumi.String("optimized"),
    			KeyPairName:                 pulumi.String("key_pair_name"),
    			RamRoleName:                 pulumi.String("ram_role_name"),
    			NetworkType:                 pulumi.String("vpc"),
    			SecurityEnhancementStrategy: pulumi.String("Active"),
    			SpotPriceLimit:              pulumi.Float64(5),
    			SpotStrategy:                pulumi.String("SpotWithPriceLimit"),
    			SecurityGroupIds: pulumi.StringArray{
    				defaultSecurityGroup.ID(),
    			},
    			SystemDisk: &ecs.EcsLaunchTemplateSystemDiskArgs{
    				Category:           pulumi.String("cloud_ssd"),
    				Description:        pulumi.String("Test For Terraform"),
    				Name:               pulumi.String("terraform-example"),
    				Size:               pulumi.Int(40),
    				DeleteWithInstance: pulumi.Bool(false),
    			},
    			UserData:  pulumi.String("xxxxxxx"),
    			VswitchId: defaultSwitch.ID(),
    			VpcId:     defaultNetwork.ID(),
    			ZoneId:    *pulumi.String(defaultZones.Zones[0].Id),
    			TemplateTags: pulumi.AnyMap{
    				"Create": pulumi.Any("Terraform"),
    				"For":    pulumi.Any("example"),
    			},
    			NetworkInterfaces: &ecs.EcsLaunchTemplateNetworkInterfacesArgs{
    				Name:            pulumi.String("eth0"),
    				Description:     pulumi.String("hello1"),
    				PrimaryIp:       pulumi.String("10.0.0.2"),
    				SecurityGroupId: defaultSecurityGroup.ID(),
    				VswitchId:       defaultSwitch.ID(),
    			},
    			DataDisks: ecs.EcsLaunchTemplateDataDiskArray{
    				&ecs.EcsLaunchTemplateDataDiskArgs{
    					Name:               pulumi.String("disk1"),
    					Description:        pulumi.String("description"),
    					DeleteWithInstance: pulumi.Bool(true),
    					Category:           pulumi.String("cloud"),
    					Encrypted:          pulumi.Bool(false),
    					PerformanceLevel:   pulumi.String("PL0"),
    					Size:               pulumi.Int(20),
    				},
    				&ecs.EcsLaunchTemplateDataDiskArgs{
    					Name:               pulumi.String("disk2"),
    					Description:        pulumi.String("description2"),
    					DeleteWithInstance: pulumi.Bool(true),
    					Category:           pulumi.String("cloud"),
    					Encrypted:          pulumi.Bool(false),
    					PerformanceLevel:   pulumi.String("PL0"),
    					Size:               pulumi.Int(20),
    				},
    			},
    		})
    		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.inputs.GetZonesArgs;
    import com.pulumi.alicloud.ecs.EcsFunctions;
    import com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;
    import com.pulumi.alicloud.ecs.inputs.GetImagesArgs;
    import com.pulumi.alicloud.vpc.Network;
    import com.pulumi.alicloud.vpc.NetworkArgs;
    import com.pulumi.alicloud.vpc.Switch;
    import com.pulumi.alicloud.vpc.SwitchArgs;
    import com.pulumi.alicloud.ecs.SecurityGroup;
    import com.pulumi.alicloud.ecs.SecurityGroupArgs;
    import com.pulumi.alicloud.ecs.EcsLaunchTemplate;
    import com.pulumi.alicloud.ecs.EcsLaunchTemplateArgs;
    import com.pulumi.alicloud.ecs.inputs.EcsLaunchTemplateSystemDiskArgs;
    import com.pulumi.alicloud.ecs.inputs.EcsLaunchTemplateNetworkInterfacesArgs;
    import com.pulumi.alicloud.ecs.inputs.EcsLaunchTemplateDataDiskArgs;
    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 defaultZones = AlicloudFunctions.getZones(GetZonesArgs.builder()
                .availableDiskCategory("cloud_efficiency")
                .availableResourceCreation("VSwitch")
                .build());
    
            final var defaultInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()
                .availabilityZone(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
                .build());
    
            final var defaultImages = EcsFunctions.getImages(GetImagesArgs.builder()
                .nameRegex("^ubuntu_[0-9]+_[0-9]+_x64*")
                .owners("system")
                .build());
    
            var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()        
                .vpcName("terraform-example")
                .cidrBlock("172.17.3.0/24")
                .build());
    
            var defaultSwitch = new Switch("defaultSwitch", SwitchArgs.builder()        
                .vswitchName("terraform-example")
                .cidrBlock("172.17.3.0/24")
                .vpcId(defaultNetwork.id())
                .zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
                .build());
    
            var defaultSecurityGroup = new SecurityGroup("defaultSecurityGroup", SecurityGroupArgs.builder()        
                .vpcId(defaultNetwork.id())
                .build());
    
            var defaultEcsLaunchTemplate = new EcsLaunchTemplate("defaultEcsLaunchTemplate", EcsLaunchTemplateArgs.builder()        
                .launchTemplateName("terraform-example")
                .description("terraform-example")
                .imageId(defaultImages.applyValue(getImagesResult -> getImagesResult.images()[0].id()))
                .hostName("terraform-example")
                .instanceChargeType("PrePaid")
                .instanceName("terraform-example")
                .instanceType(defaultInstanceTypes.applyValue(getInstanceTypesResult -> getInstanceTypesResult.instanceTypes()[0].id()))
                .internetChargeType("PayByBandwidth")
                .internetMaxBandwidthIn("5")
                .internetMaxBandwidthOut("5")
                .ioOptimized("optimized")
                .keyPairName("key_pair_name")
                .ramRoleName("ram_role_name")
                .networkType("vpc")
                .securityEnhancementStrategy("Active")
                .spotPriceLimit("5")
                .spotStrategy("SpotWithPriceLimit")
                .securityGroupIds(defaultSecurityGroup.id())
                .systemDisk(EcsLaunchTemplateSystemDiskArgs.builder()
                    .category("cloud_ssd")
                    .description("Test For Terraform")
                    .name("terraform-example")
                    .size("40")
                    .deleteWithInstance("false")
                    .build())
                .userData("xxxxxxx")
                .vswitchId(defaultSwitch.id())
                .vpcId(defaultNetwork.id())
                .zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
                .templateTags(Map.ofEntries(
                    Map.entry("Create", "Terraform"),
                    Map.entry("For", "example")
                ))
                .networkInterfaces(EcsLaunchTemplateNetworkInterfacesArgs.builder()
                    .name("eth0")
                    .description("hello1")
                    .primaryIp("10.0.0.2")
                    .securityGroupId(defaultSecurityGroup.id())
                    .vswitchId(defaultSwitch.id())
                    .build())
                .dataDisks(            
                    EcsLaunchTemplateDataDiskArgs.builder()
                        .name("disk1")
                        .description("description")
                        .deleteWithInstance("true")
                        .category("cloud")
                        .encrypted("false")
                        .performanceLevel("PL0")
                        .size("20")
                        .build(),
                    EcsLaunchTemplateDataDiskArgs.builder()
                        .name("disk2")
                        .description("description2")
                        .deleteWithInstance("true")
                        .category("cloud")
                        .encrypted("false")
                        .performanceLevel("PL0")
                        .size("20")
                        .build())
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_alicloud as alicloud
    
    default_zones = alicloud.get_zones(available_disk_category="cloud_efficiency",
        available_resource_creation="VSwitch")
    default_instance_types = alicloud.ecs.get_instance_types(availability_zone=default_zones.zones[0].id)
    default_images = alicloud.ecs.get_images(name_regex="^ubuntu_[0-9]+_[0-9]+_x64*",
        owners="system")
    default_network = alicloud.vpc.Network("defaultNetwork",
        vpc_name="terraform-example",
        cidr_block="172.17.3.0/24")
    default_switch = alicloud.vpc.Switch("defaultSwitch",
        vswitch_name="terraform-example",
        cidr_block="172.17.3.0/24",
        vpc_id=default_network.id,
        zone_id=default_zones.zones[0].id)
    default_security_group = alicloud.ecs.SecurityGroup("defaultSecurityGroup", vpc_id=default_network.id)
    default_ecs_launch_template = alicloud.ecs.EcsLaunchTemplate("defaultEcsLaunchTemplate",
        launch_template_name="terraform-example",
        description="terraform-example",
        image_id=default_images.images[0].id,
        host_name="terraform-example",
        instance_charge_type="PrePaid",
        instance_name="terraform-example",
        instance_type=default_instance_types.instance_types[0].id,
        internet_charge_type="PayByBandwidth",
        internet_max_bandwidth_in=5,
        internet_max_bandwidth_out=5,
        io_optimized="optimized",
        key_pair_name="key_pair_name",
        ram_role_name="ram_role_name",
        network_type="vpc",
        security_enhancement_strategy="Active",
        spot_price_limit=5,
        spot_strategy="SpotWithPriceLimit",
        security_group_ids=[default_security_group.id],
        system_disk=alicloud.ecs.EcsLaunchTemplateSystemDiskArgs(
            category="cloud_ssd",
            description="Test For Terraform",
            name="terraform-example",
            size=40,
            delete_with_instance=False,
        ),
        user_data="xxxxxxx",
        vswitch_id=default_switch.id,
        vpc_id=default_network.id,
        zone_id=default_zones.zones[0].id,
        template_tags={
            "Create": "Terraform",
            "For": "example",
        },
        network_interfaces=alicloud.ecs.EcsLaunchTemplateNetworkInterfacesArgs(
            name="eth0",
            description="hello1",
            primary_ip="10.0.0.2",
            security_group_id=default_security_group.id,
            vswitch_id=default_switch.id,
        ),
        data_disks=[
            alicloud.ecs.EcsLaunchTemplateDataDiskArgs(
                name="disk1",
                description="description",
                delete_with_instance=True,
                category="cloud",
                encrypted=False,
                performance_level="PL0",
                size=20,
            ),
            alicloud.ecs.EcsLaunchTemplateDataDiskArgs(
                name="disk2",
                description="description2",
                delete_with_instance=True,
                category="cloud",
                encrypted=False,
                performance_level="PL0",
                size=20,
            ),
        ])
    
    import * as pulumi from "@pulumi/pulumi";
    import * as alicloud from "@pulumi/alicloud";
    
    const defaultZones = alicloud.getZones({
        availableDiskCategory: "cloud_efficiency",
        availableResourceCreation: "VSwitch",
    });
    const defaultInstanceTypes = defaultZones.then(defaultZones => alicloud.ecs.getInstanceTypes({
        availabilityZone: defaultZones.zones?.[0]?.id,
    }));
    const defaultImages = alicloud.ecs.getImages({
        nameRegex: "^ubuntu_[0-9]+_[0-9]+_x64*",
        owners: "system",
    });
    const defaultNetwork = new alicloud.vpc.Network("defaultNetwork", {
        vpcName: "terraform-example",
        cidrBlock: "172.17.3.0/24",
    });
    const defaultSwitch = new alicloud.vpc.Switch("defaultSwitch", {
        vswitchName: "terraform-example",
        cidrBlock: "172.17.3.0/24",
        vpcId: defaultNetwork.id,
        zoneId: defaultZones.then(defaultZones => defaultZones.zones?.[0]?.id),
    });
    const defaultSecurityGroup = new alicloud.ecs.SecurityGroup("defaultSecurityGroup", {vpcId: defaultNetwork.id});
    const defaultEcsLaunchTemplate = new alicloud.ecs.EcsLaunchTemplate("defaultEcsLaunchTemplate", {
        launchTemplateName: "terraform-example",
        description: "terraform-example",
        imageId: defaultImages.then(defaultImages => defaultImages.images?.[0]?.id),
        hostName: "terraform-example",
        instanceChargeType: "PrePaid",
        instanceName: "terraform-example",
        instanceType: defaultInstanceTypes.then(defaultInstanceTypes => defaultInstanceTypes.instanceTypes?.[0]?.id),
        internetChargeType: "PayByBandwidth",
        internetMaxBandwidthIn: 5,
        internetMaxBandwidthOut: 5,
        ioOptimized: "optimized",
        keyPairName: "key_pair_name",
        ramRoleName: "ram_role_name",
        networkType: "vpc",
        securityEnhancementStrategy: "Active",
        spotPriceLimit: 5,
        spotStrategy: "SpotWithPriceLimit",
        securityGroupIds: [defaultSecurityGroup.id],
        systemDisk: {
            category: "cloud_ssd",
            description: "Test For Terraform",
            name: "terraform-example",
            size: 40,
            deleteWithInstance: false,
        },
        userData: "xxxxxxx",
        vswitchId: defaultSwitch.id,
        vpcId: defaultNetwork.id,
        zoneId: defaultZones.then(defaultZones => defaultZones.zones?.[0]?.id),
        templateTags: {
            Create: "Terraform",
            For: "example",
        },
        networkInterfaces: {
            name: "eth0",
            description: "hello1",
            primaryIp: "10.0.0.2",
            securityGroupId: defaultSecurityGroup.id,
            vswitchId: defaultSwitch.id,
        },
        dataDisks: [
            {
                name: "disk1",
                description: "description",
                deleteWithInstance: true,
                category: "cloud",
                encrypted: false,
                performanceLevel: "PL0",
                size: 20,
            },
            {
                name: "disk2",
                description: "description2",
                deleteWithInstance: true,
                category: "cloud",
                encrypted: false,
                performanceLevel: "PL0",
                size: 20,
            },
        ],
    });
    
    resources:
      defaultNetwork:
        type: alicloud:vpc:Network
        properties:
          vpcName: terraform-example
          cidrBlock: 172.17.3.0/24
      defaultSwitch:
        type: alicloud:vpc:Switch
        properties:
          vswitchName: terraform-example
          cidrBlock: 172.17.3.0/24
          vpcId: ${defaultNetwork.id}
          zoneId: ${defaultZones.zones[0].id}
      defaultSecurityGroup:
        type: alicloud:ecs:SecurityGroup
        properties:
          vpcId: ${defaultNetwork.id}
      defaultEcsLaunchTemplate:
        type: alicloud:ecs:EcsLaunchTemplate
        properties:
          launchTemplateName: terraform-example
          description: terraform-example
          imageId: ${defaultImages.images[0].id}
          hostName: terraform-example
          instanceChargeType: PrePaid
          instanceName: terraform-example
          instanceType: ${defaultInstanceTypes.instanceTypes[0].id}
          internetChargeType: PayByBandwidth
          internetMaxBandwidthIn: '5'
          internetMaxBandwidthOut: '5'
          ioOptimized: optimized
          keyPairName: key_pair_name
          ramRoleName: ram_role_name
          networkType: vpc
          securityEnhancementStrategy: Active
          spotPriceLimit: '5'
          spotStrategy: SpotWithPriceLimit
          securityGroupIds:
            - ${defaultSecurityGroup.id}
          systemDisk:
            category: cloud_ssd
            description: Test For Terraform
            name: terraform-example
            size: '40'
            deleteWithInstance: 'false'
          userData: xxxxxxx
          vswitchId: ${defaultSwitch.id}
          vpcId: ${defaultNetwork.id}
          zoneId: ${defaultZones.zones[0].id}
          templateTags:
            Create: Terraform
            For: example
          networkInterfaces:
            name: eth0
            description: hello1
            primaryIp: 10.0.0.2
            securityGroupId: ${defaultSecurityGroup.id}
            vswitchId: ${defaultSwitch.id}
          dataDisks:
            - name: disk1
              description: description
              deleteWithInstance: 'true'
              category: cloud
              encrypted: 'false'
              performanceLevel: PL0
              size: '20'
            - name: disk2
              description: description2
              deleteWithInstance: 'true'
              category: cloud
              encrypted: 'false'
              performanceLevel: PL0
              size: '20'
    variables:
      defaultZones:
        fn::invoke:
          Function: alicloud:getZones
          Arguments:
            availableDiskCategory: cloud_efficiency
            availableResourceCreation: VSwitch
      defaultInstanceTypes:
        fn::invoke:
          Function: alicloud:ecs:getInstanceTypes
          Arguments:
            availabilityZone: ${defaultZones.zones[0].id}
      defaultImages:
        fn::invoke:
          Function: alicloud:ecs:getImages
          Arguments:
            nameRegex: ^ubuntu_[0-9]+_[0-9]+_x64*
            owners: system
    

    Create EcsLaunchTemplate Resource

    new EcsLaunchTemplate(name: string, args?: EcsLaunchTemplateArgs, opts?: CustomResourceOptions);
    @overload
    def EcsLaunchTemplate(resource_name: str,
                          opts: Optional[ResourceOptions] = None,
                          auto_release_time: Optional[str] = None,
                          data_disks: Optional[Sequence[EcsLaunchTemplateDataDiskArgs]] = None,
                          deployment_set_id: Optional[str] = None,
                          description: Optional[str] = None,
                          enable_vm_os_config: Optional[bool] = None,
                          host_name: Optional[str] = None,
                          image_id: Optional[str] = None,
                          image_owner_alias: Optional[str] = None,
                          instance_charge_type: Optional[str] = None,
                          instance_name: Optional[str] = None,
                          instance_type: Optional[str] = None,
                          internet_charge_type: Optional[str] = None,
                          internet_max_bandwidth_in: Optional[int] = None,
                          internet_max_bandwidth_out: Optional[int] = None,
                          io_optimized: Optional[str] = None,
                          key_pair_name: Optional[str] = None,
                          launch_template_name: Optional[str] = None,
                          name: Optional[str] = None,
                          network_interfaces: Optional[EcsLaunchTemplateNetworkInterfacesArgs] = None,
                          network_type: Optional[str] = None,
                          password_inherit: Optional[bool] = None,
                          period: Optional[int] = None,
                          private_ip_address: Optional[str] = None,
                          ram_role_name: Optional[str] = None,
                          resource_group_id: Optional[str] = None,
                          security_enhancement_strategy: Optional[str] = None,
                          security_group_id: Optional[str] = None,
                          security_group_ids: Optional[Sequence[str]] = None,
                          spot_duration: Optional[str] = None,
                          spot_price_limit: Optional[float] = None,
                          spot_strategy: Optional[str] = None,
                          system_disk: Optional[EcsLaunchTemplateSystemDiskArgs] = None,
                          system_disk_category: Optional[str] = None,
                          system_disk_description: Optional[str] = None,
                          system_disk_name: Optional[str] = None,
                          system_disk_size: Optional[int] = None,
                          tags: Optional[Mapping[str, Any]] = None,
                          template_resource_group_id: Optional[str] = None,
                          template_tags: Optional[Mapping[str, Any]] = None,
                          user_data: Optional[str] = None,
                          userdata: Optional[str] = None,
                          version_description: Optional[str] = None,
                          vpc_id: Optional[str] = None,
                          vswitch_id: Optional[str] = None,
                          zone_id: Optional[str] = None)
    @overload
    def EcsLaunchTemplate(resource_name: str,
                          args: Optional[EcsLaunchTemplateArgs] = None,
                          opts: Optional[ResourceOptions] = None)
    func NewEcsLaunchTemplate(ctx *Context, name string, args *EcsLaunchTemplateArgs, opts ...ResourceOption) (*EcsLaunchTemplate, error)
    public EcsLaunchTemplate(string name, EcsLaunchTemplateArgs? args = null, CustomResourceOptions? opts = null)
    public EcsLaunchTemplate(String name, EcsLaunchTemplateArgs args)
    public EcsLaunchTemplate(String name, EcsLaunchTemplateArgs args, CustomResourceOptions options)
    
    type: alicloud:ecs:EcsLaunchTemplate
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args EcsLaunchTemplateArgs
    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 EcsLaunchTemplateArgs
    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 EcsLaunchTemplateArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args EcsLaunchTemplateArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args EcsLaunchTemplateArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

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

    AutoReleaseTime string

    Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.

    DataDisks List<Pulumi.AliCloud.Ecs.Inputs.EcsLaunchTemplateDataDisk>

    The list of data disks created with instance.

    DeploymentSetId string

    The Deployment Set Id.

    Description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    EnableVmOsConfig bool

    Whether to enable the instance operating system configuration.

    HostName string

    Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).

    ImageId string

    The Image ID.

    ImageOwnerAlias string

    Mirror source. Valid values: system, self, others, marketplace, "". Default to: "".

    InstanceChargeType string

    Billing methods. Valid values: PostPaid, PrePaid.

    InstanceName string

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

    InstanceType string

    Instance type. For more information, call resource_alicloud_instances to obtain the latest instance type list.

    InternetChargeType string

    Internet bandwidth billing method. Valid values: PayByTraffic, PayByBandwidth.

    InternetMaxBandwidthIn int

    The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].

    InternetMaxBandwidthOut int

    Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].

    IoOptimized string

    Whether it is an I/O-optimized instance or not. Valid values: none, optimized.

    KeyPairName string

    The name of the key pair.

    • Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used.
    • The password logon method for Linux instances is set to forbidden upon initialization.
    LaunchTemplateName string

    The name of Launch Template.

    Name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    Deprecated:

    Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.

    NetworkInterfaces Pulumi.AliCloud.Ecs.Inputs.EcsLaunchTemplateNetworkInterfaces

    The list of network interfaces created with instance.

    NetworkType string

    Network type of the instance. Valid values: classic, vpc.

    PasswordInherit bool

    Whether to use the password preset by the mirror.

    Period int

    The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.

    • When the PeriodUnit parameter is set to Week, the valid values of the Period parameter are 1, 2, 3, and 4.
    • When the PeriodUnit parameter is set to Month, the valid values of the Period parameter are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.
    PrivateIpAddress string

    The private IP address of the instance.

    RamRoleName string

    The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.

    ResourceGroupId string

    The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.

    SecurityEnhancementStrategy string

    Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: Active, Deactive.

    SecurityGroupId string

    The security group ID.

    SecurityGroupIds List<string>

    The ID of security group N to which to assign the instance.

    SpotDuration string

    The protection period of the preemptible instance. Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6. Default to: 1.

    SpotPriceLimit double

    Sets the maximum hourly instance price. Supports up to three decimal places.

    SpotStrategy string

    The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.

    SystemDisk Pulumi.AliCloud.Ecs.Inputs.EcsLaunchTemplateSystemDisk

    The System Disk.

    SystemDiskCategory string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    SystemDiskDescription string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    SystemDiskName string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    SystemDiskSize int

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    Tags Dictionary<string, object>

    A mapping of tags to assign to instance, block storage, and elastic network.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
    TemplateResourceGroupId string

    The template resource group id.

    TemplateTags Dictionary<string, object>

    A mapping of tags to assign to the launch template.

    UserData string

    The User Data.

    Userdata string

    It has been deprecated from version 1.120.0, and use field user_data instead.

    Deprecated:

    Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.

    VersionDescription string

    The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

    VpcId string

    The ID of the VPC.

    VswitchId string

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    ZoneId string

    The zone ID of the instance.

    AutoReleaseTime string

    Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.

    DataDisks []EcsLaunchTemplateDataDiskArgs

    The list of data disks created with instance.

    DeploymentSetId string

    The Deployment Set Id.

    Description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    EnableVmOsConfig bool

    Whether to enable the instance operating system configuration.

    HostName string

    Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).

    ImageId string

    The Image ID.

    ImageOwnerAlias string

    Mirror source. Valid values: system, self, others, marketplace, "". Default to: "".

    InstanceChargeType string

    Billing methods. Valid values: PostPaid, PrePaid.

    InstanceName string

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

    InstanceType string

    Instance type. For more information, call resource_alicloud_instances to obtain the latest instance type list.

    InternetChargeType string

    Internet bandwidth billing method. Valid values: PayByTraffic, PayByBandwidth.

    InternetMaxBandwidthIn int

    The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].

    InternetMaxBandwidthOut int

    Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].

    IoOptimized string

    Whether it is an I/O-optimized instance or not. Valid values: none, optimized.

    KeyPairName string

    The name of the key pair.

    • Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used.
    • The password logon method for Linux instances is set to forbidden upon initialization.
    LaunchTemplateName string

    The name of Launch Template.

    Name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    Deprecated:

    Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.

    NetworkInterfaces EcsLaunchTemplateNetworkInterfacesArgs

    The list of network interfaces created with instance.

    NetworkType string

    Network type of the instance. Valid values: classic, vpc.

    PasswordInherit bool

    Whether to use the password preset by the mirror.

    Period int

    The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.

    • When the PeriodUnit parameter is set to Week, the valid values of the Period parameter are 1, 2, 3, and 4.
    • When the PeriodUnit parameter is set to Month, the valid values of the Period parameter are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.
    PrivateIpAddress string

    The private IP address of the instance.

    RamRoleName string

    The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.

    ResourceGroupId string

    The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.

    SecurityEnhancementStrategy string

    Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: Active, Deactive.

    SecurityGroupId string

    The security group ID.

    SecurityGroupIds []string

    The ID of security group N to which to assign the instance.

    SpotDuration string

    The protection period of the preemptible instance. Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6. Default to: 1.

    SpotPriceLimit float64

    Sets the maximum hourly instance price. Supports up to three decimal places.

    SpotStrategy string

    The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.

    SystemDisk EcsLaunchTemplateSystemDiskArgs

    The System Disk.

    SystemDiskCategory string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    SystemDiskDescription string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    SystemDiskName string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    SystemDiskSize int

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    Tags map[string]interface{}

    A mapping of tags to assign to instance, block storage, and elastic network.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
    TemplateResourceGroupId string

    The template resource group id.

    TemplateTags map[string]interface{}

    A mapping of tags to assign to the launch template.

    UserData string

    The User Data.

    Userdata string

    It has been deprecated from version 1.120.0, and use field user_data instead.

    Deprecated:

    Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.

    VersionDescription string

    The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

    VpcId string

    The ID of the VPC.

    VswitchId string

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    ZoneId string

    The zone ID of the instance.

    autoReleaseTime String

    Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.

    dataDisks List<EcsLaunchTemplateDataDisk>

    The list of data disks created with instance.

    deploymentSetId String

    The Deployment Set Id.

    description String

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    enableVmOsConfig Boolean

    Whether to enable the instance operating system configuration.

    hostName String

    Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).

    imageId String

    The Image ID.

    imageOwnerAlias String

    Mirror source. Valid values: system, self, others, marketplace, "". Default to: "".

    instanceChargeType String

    Billing methods. Valid values: PostPaid, PrePaid.

    instanceName String

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

    instanceType String

    Instance type. For more information, call resource_alicloud_instances to obtain the latest instance type list.

    internetChargeType String

    Internet bandwidth billing method. Valid values: PayByTraffic, PayByBandwidth.

    internetMaxBandwidthIn Integer

    The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].

    internetMaxBandwidthOut Integer

    Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].

    ioOptimized String

    Whether it is an I/O-optimized instance or not. Valid values: none, optimized.

    keyPairName String

    The name of the key pair.

    • Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used.
    • The password logon method for Linux instances is set to forbidden upon initialization.
    launchTemplateName String

    The name of Launch Template.

    name String

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    Deprecated:

    Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.

    networkInterfaces EcsLaunchTemplateNetworkInterfaces

    The list of network interfaces created with instance.

    networkType String

    Network type of the instance. Valid values: classic, vpc.

    passwordInherit Boolean

    Whether to use the password preset by the mirror.

    period Integer

    The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.

    • When the PeriodUnit parameter is set to Week, the valid values of the Period parameter are 1, 2, 3, and 4.
    • When the PeriodUnit parameter is set to Month, the valid values of the Period parameter are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.
    privateIpAddress String

    The private IP address of the instance.

    ramRoleName String

    The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.

    resourceGroupId String

    The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.

    securityEnhancementStrategy String

    Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: Active, Deactive.

    securityGroupId String

    The security group ID.

    securityGroupIds List<String>

    The ID of security group N to which to assign the instance.

    spotDuration String

    The protection period of the preemptible instance. Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6. Default to: 1.

    spotPriceLimit Double

    Sets the maximum hourly instance price. Supports up to three decimal places.

    spotStrategy String

    The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.

    systemDisk EcsLaunchTemplateSystemDisk

    The System Disk.

    systemDiskCategory String

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskDescription String

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskName String

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskSize Integer

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    tags Map<String,Object>

    A mapping of tags to assign to instance, block storage, and elastic network.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
    templateResourceGroupId String

    The template resource group id.

    templateTags Map<String,Object>

    A mapping of tags to assign to the launch template.

    userData String

    The User Data.

    userdata String

    It has been deprecated from version 1.120.0, and use field user_data instead.

    Deprecated:

    Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.

    versionDescription String

    The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

    vpcId String

    The ID of the VPC.

    vswitchId String

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    zoneId String

    The zone ID of the instance.

    autoReleaseTime string

    Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.

    dataDisks EcsLaunchTemplateDataDisk[]

    The list of data disks created with instance.

    deploymentSetId string

    The Deployment Set Id.

    description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    enableVmOsConfig boolean

    Whether to enable the instance operating system configuration.

    hostName string

    Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).

    imageId string

    The Image ID.

    imageOwnerAlias string

    Mirror source. Valid values: system, self, others, marketplace, "". Default to: "".

    instanceChargeType string

    Billing methods. Valid values: PostPaid, PrePaid.

    instanceName string

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

    instanceType string

    Instance type. For more information, call resource_alicloud_instances to obtain the latest instance type list.

    internetChargeType string

    Internet bandwidth billing method. Valid values: PayByTraffic, PayByBandwidth.

    internetMaxBandwidthIn number

    The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].

    internetMaxBandwidthOut number

    Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].

    ioOptimized string

    Whether it is an I/O-optimized instance or not. Valid values: none, optimized.

    keyPairName string

    The name of the key pair.

    • Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used.
    • The password logon method for Linux instances is set to forbidden upon initialization.
    launchTemplateName string

    The name of Launch Template.

    name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    Deprecated:

    Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.

    networkInterfaces EcsLaunchTemplateNetworkInterfaces

    The list of network interfaces created with instance.

    networkType string

    Network type of the instance. Valid values: classic, vpc.

    passwordInherit boolean

    Whether to use the password preset by the mirror.

    period number

    The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.

    • When the PeriodUnit parameter is set to Week, the valid values of the Period parameter are 1, 2, 3, and 4.
    • When the PeriodUnit parameter is set to Month, the valid values of the Period parameter are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.
    privateIpAddress string

    The private IP address of the instance.

    ramRoleName string

    The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.

    resourceGroupId string

    The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.

    securityEnhancementStrategy string

    Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: Active, Deactive.

    securityGroupId string

    The security group ID.

    securityGroupIds string[]

    The ID of security group N to which to assign the instance.

    spotDuration string

    The protection period of the preemptible instance. Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6. Default to: 1.

    spotPriceLimit number

    Sets the maximum hourly instance price. Supports up to three decimal places.

    spotStrategy string

    The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.

    systemDisk EcsLaunchTemplateSystemDisk

    The System Disk.

    systemDiskCategory string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskDescription string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskName string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskSize number

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    tags {[key: string]: any}

    A mapping of tags to assign to instance, block storage, and elastic network.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
    templateResourceGroupId string

    The template resource group id.

    templateTags {[key: string]: any}

    A mapping of tags to assign to the launch template.

    userData string

    The User Data.

    userdata string

    It has been deprecated from version 1.120.0, and use field user_data instead.

    Deprecated:

    Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.

    versionDescription string

    The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

    vpcId string

    The ID of the VPC.

    vswitchId string

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    zoneId string

    The zone ID of the instance.

    auto_release_time str

    Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.

    data_disks Sequence[EcsLaunchTemplateDataDiskArgs]

    The list of data disks created with instance.

    deployment_set_id str

    The Deployment Set Id.

    description str

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    enable_vm_os_config bool

    Whether to enable the instance operating system configuration.

    host_name str

    Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).

    image_id str

    The Image ID.

    image_owner_alias str

    Mirror source. Valid values: system, self, others, marketplace, "". Default to: "".

    instance_charge_type str

    Billing methods. Valid values: PostPaid, PrePaid.

    instance_name str

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

    instance_type str

    Instance type. For more information, call resource_alicloud_instances to obtain the latest instance type list.

    internet_charge_type str

    Internet bandwidth billing method. Valid values: PayByTraffic, PayByBandwidth.

    internet_max_bandwidth_in int

    The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].

    internet_max_bandwidth_out int

    Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].

    io_optimized str

    Whether it is an I/O-optimized instance or not. Valid values: none, optimized.

    key_pair_name str

    The name of the key pair.

    • Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used.
    • The password logon method for Linux instances is set to forbidden upon initialization.
    launch_template_name str

    The name of Launch Template.

    name str

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    Deprecated:

    Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.

    network_interfaces EcsLaunchTemplateNetworkInterfacesArgs

    The list of network interfaces created with instance.

    network_type str

    Network type of the instance. Valid values: classic, vpc.

    password_inherit bool

    Whether to use the password preset by the mirror.

    period int

    The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.

    • When the PeriodUnit parameter is set to Week, the valid values of the Period parameter are 1, 2, 3, and 4.
    • When the PeriodUnit parameter is set to Month, the valid values of the Period parameter are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.
    private_ip_address str

    The private IP address of the instance.

    ram_role_name str

    The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.

    resource_group_id str

    The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.

    security_enhancement_strategy str

    Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: Active, Deactive.

    security_group_id str

    The security group ID.

    security_group_ids Sequence[str]

    The ID of security group N to which to assign the instance.

    spot_duration str

    The protection period of the preemptible instance. Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6. Default to: 1.

    spot_price_limit float

    Sets the maximum hourly instance price. Supports up to three decimal places.

    spot_strategy str

    The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.

    system_disk EcsLaunchTemplateSystemDiskArgs

    The System Disk.

    system_disk_category str

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    system_disk_description str

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    system_disk_name str

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    system_disk_size int

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    tags Mapping[str, Any]

    A mapping of tags to assign to instance, block storage, and elastic network.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
    template_resource_group_id str

    The template resource group id.

    template_tags Mapping[str, Any]

    A mapping of tags to assign to the launch template.

    user_data str

    The User Data.

    userdata str

    It has been deprecated from version 1.120.0, and use field user_data instead.

    Deprecated:

    Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.

    version_description str

    The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

    vpc_id str

    The ID of the VPC.

    vswitch_id str

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    zone_id str

    The zone ID of the instance.

    autoReleaseTime String

    Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.

    dataDisks List<Property Map>

    The list of data disks created with instance.

    deploymentSetId String

    The Deployment Set Id.

    description String

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    enableVmOsConfig Boolean

    Whether to enable the instance operating system configuration.

    hostName String

    Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).

    imageId String

    The Image ID.

    imageOwnerAlias String

    Mirror source. Valid values: system, self, others, marketplace, "". Default to: "".

    instanceChargeType String

    Billing methods. Valid values: PostPaid, PrePaid.

    instanceName String

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

    instanceType String

    Instance type. For more information, call resource_alicloud_instances to obtain the latest instance type list.

    internetChargeType String

    Internet bandwidth billing method. Valid values: PayByTraffic, PayByBandwidth.

    internetMaxBandwidthIn Number

    The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].

    internetMaxBandwidthOut Number

    Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].

    ioOptimized String

    Whether it is an I/O-optimized instance or not. Valid values: none, optimized.

    keyPairName String

    The name of the key pair.

    • Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used.
    • The password logon method for Linux instances is set to forbidden upon initialization.
    launchTemplateName String

    The name of Launch Template.

    name String

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    Deprecated:

    Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.

    networkInterfaces Property Map

    The list of network interfaces created with instance.

    networkType String

    Network type of the instance. Valid values: classic, vpc.

    passwordInherit Boolean

    Whether to use the password preset by the mirror.

    period Number

    The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.

    • When the PeriodUnit parameter is set to Week, the valid values of the Period parameter are 1, 2, 3, and 4.
    • When the PeriodUnit parameter is set to Month, the valid values of the Period parameter are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.
    privateIpAddress String

    The private IP address of the instance.

    ramRoleName String

    The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.

    resourceGroupId String

    The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.

    securityEnhancementStrategy String

    Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: Active, Deactive.

    securityGroupId String

    The security group ID.

    securityGroupIds List<String>

    The ID of security group N to which to assign the instance.

    spotDuration String

    The protection period of the preemptible instance. Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6. Default to: 1.

    spotPriceLimit Number

    Sets the maximum hourly instance price. Supports up to three decimal places.

    spotStrategy String

    The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.

    systemDisk Property Map

    The System Disk.

    systemDiskCategory String

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskDescription String

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskName String

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskSize Number

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    tags Map<Any>

    A mapping of tags to assign to instance, block storage, and elastic network.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
    templateResourceGroupId String

    The template resource group id.

    templateTags Map<Any>

    A mapping of tags to assign to the launch template.

    userData String

    The User Data.

    userdata String

    It has been deprecated from version 1.120.0, and use field user_data instead.

    Deprecated:

    Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.

    versionDescription String

    The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

    vpcId String

    The ID of the VPC.

    vswitchId String

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    zoneId String

    The zone ID of the instance.

    Outputs

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

    Id string

    The provider-assigned unique ID for this managed resource.

    Id string

    The provider-assigned unique ID for this managed resource.

    id String

    The provider-assigned unique ID for this managed resource.

    id string

    The provider-assigned unique ID for this managed resource.

    id str

    The provider-assigned unique ID for this managed resource.

    id String

    The provider-assigned unique ID for this managed resource.

    Look up Existing EcsLaunchTemplate Resource

    Get an existing EcsLaunchTemplate 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?: EcsLaunchTemplateState, opts?: CustomResourceOptions): EcsLaunchTemplate
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            auto_release_time: Optional[str] = None,
            data_disks: Optional[Sequence[EcsLaunchTemplateDataDiskArgs]] = None,
            deployment_set_id: Optional[str] = None,
            description: Optional[str] = None,
            enable_vm_os_config: Optional[bool] = None,
            host_name: Optional[str] = None,
            image_id: Optional[str] = None,
            image_owner_alias: Optional[str] = None,
            instance_charge_type: Optional[str] = None,
            instance_name: Optional[str] = None,
            instance_type: Optional[str] = None,
            internet_charge_type: Optional[str] = None,
            internet_max_bandwidth_in: Optional[int] = None,
            internet_max_bandwidth_out: Optional[int] = None,
            io_optimized: Optional[str] = None,
            key_pair_name: Optional[str] = None,
            launch_template_name: Optional[str] = None,
            name: Optional[str] = None,
            network_interfaces: Optional[EcsLaunchTemplateNetworkInterfacesArgs] = None,
            network_type: Optional[str] = None,
            password_inherit: Optional[bool] = None,
            period: Optional[int] = None,
            private_ip_address: Optional[str] = None,
            ram_role_name: Optional[str] = None,
            resource_group_id: Optional[str] = None,
            security_enhancement_strategy: Optional[str] = None,
            security_group_id: Optional[str] = None,
            security_group_ids: Optional[Sequence[str]] = None,
            spot_duration: Optional[str] = None,
            spot_price_limit: Optional[float] = None,
            spot_strategy: Optional[str] = None,
            system_disk: Optional[EcsLaunchTemplateSystemDiskArgs] = None,
            system_disk_category: Optional[str] = None,
            system_disk_description: Optional[str] = None,
            system_disk_name: Optional[str] = None,
            system_disk_size: Optional[int] = None,
            tags: Optional[Mapping[str, Any]] = None,
            template_resource_group_id: Optional[str] = None,
            template_tags: Optional[Mapping[str, Any]] = None,
            user_data: Optional[str] = None,
            userdata: Optional[str] = None,
            version_description: Optional[str] = None,
            vpc_id: Optional[str] = None,
            vswitch_id: Optional[str] = None,
            zone_id: Optional[str] = None) -> EcsLaunchTemplate
    func GetEcsLaunchTemplate(ctx *Context, name string, id IDInput, state *EcsLaunchTemplateState, opts ...ResourceOption) (*EcsLaunchTemplate, error)
    public static EcsLaunchTemplate Get(string name, Input<string> id, EcsLaunchTemplateState? state, CustomResourceOptions? opts = null)
    public static EcsLaunchTemplate get(String name, Output<String> id, EcsLaunchTemplateState 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:
    AutoReleaseTime string

    Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.

    DataDisks List<Pulumi.AliCloud.Ecs.Inputs.EcsLaunchTemplateDataDisk>

    The list of data disks created with instance.

    DeploymentSetId string

    The Deployment Set Id.

    Description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    EnableVmOsConfig bool

    Whether to enable the instance operating system configuration.

    HostName string

    Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).

    ImageId string

    The Image ID.

    ImageOwnerAlias string

    Mirror source. Valid values: system, self, others, marketplace, "". Default to: "".

    InstanceChargeType string

    Billing methods. Valid values: PostPaid, PrePaid.

    InstanceName string

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

    InstanceType string

    Instance type. For more information, call resource_alicloud_instances to obtain the latest instance type list.

    InternetChargeType string

    Internet bandwidth billing method. Valid values: PayByTraffic, PayByBandwidth.

    InternetMaxBandwidthIn int

    The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].

    InternetMaxBandwidthOut int

    Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].

    IoOptimized string

    Whether it is an I/O-optimized instance or not. Valid values: none, optimized.

    KeyPairName string

    The name of the key pair.

    • Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used.
    • The password logon method for Linux instances is set to forbidden upon initialization.
    LaunchTemplateName string

    The name of Launch Template.

    Name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    Deprecated:

    Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.

    NetworkInterfaces Pulumi.AliCloud.Ecs.Inputs.EcsLaunchTemplateNetworkInterfaces

    The list of network interfaces created with instance.

    NetworkType string

    Network type of the instance. Valid values: classic, vpc.

    PasswordInherit bool

    Whether to use the password preset by the mirror.

    Period int

    The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.

    • When the PeriodUnit parameter is set to Week, the valid values of the Period parameter are 1, 2, 3, and 4.
    • When the PeriodUnit parameter is set to Month, the valid values of the Period parameter are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.
    PrivateIpAddress string

    The private IP address of the instance.

    RamRoleName string

    The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.

    ResourceGroupId string

    The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.

    SecurityEnhancementStrategy string

    Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: Active, Deactive.

    SecurityGroupId string

    The security group ID.

    SecurityGroupIds List<string>

    The ID of security group N to which to assign the instance.

    SpotDuration string

    The protection period of the preemptible instance. Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6. Default to: 1.

    SpotPriceLimit double

    Sets the maximum hourly instance price. Supports up to three decimal places.

    SpotStrategy string

    The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.

    SystemDisk Pulumi.AliCloud.Ecs.Inputs.EcsLaunchTemplateSystemDisk

    The System Disk.

    SystemDiskCategory string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    SystemDiskDescription string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    SystemDiskName string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    SystemDiskSize int

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    Tags Dictionary<string, object>

    A mapping of tags to assign to instance, block storage, and elastic network.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
    TemplateResourceGroupId string

    The template resource group id.

    TemplateTags Dictionary<string, object>

    A mapping of tags to assign to the launch template.

    UserData string

    The User Data.

    Userdata string

    It has been deprecated from version 1.120.0, and use field user_data instead.

    Deprecated:

    Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.

    VersionDescription string

    The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

    VpcId string

    The ID of the VPC.

    VswitchId string

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    ZoneId string

    The zone ID of the instance.

    AutoReleaseTime string

    Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.

    DataDisks []EcsLaunchTemplateDataDiskArgs

    The list of data disks created with instance.

    DeploymentSetId string

    The Deployment Set Id.

    Description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    EnableVmOsConfig bool

    Whether to enable the instance operating system configuration.

    HostName string

    Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).

    ImageId string

    The Image ID.

    ImageOwnerAlias string

    Mirror source. Valid values: system, self, others, marketplace, "". Default to: "".

    InstanceChargeType string

    Billing methods. Valid values: PostPaid, PrePaid.

    InstanceName string

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

    InstanceType string

    Instance type. For more information, call resource_alicloud_instances to obtain the latest instance type list.

    InternetChargeType string

    Internet bandwidth billing method. Valid values: PayByTraffic, PayByBandwidth.

    InternetMaxBandwidthIn int

    The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].

    InternetMaxBandwidthOut int

    Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].

    IoOptimized string

    Whether it is an I/O-optimized instance or not. Valid values: none, optimized.

    KeyPairName string

    The name of the key pair.

    • Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used.
    • The password logon method for Linux instances is set to forbidden upon initialization.
    LaunchTemplateName string

    The name of Launch Template.

    Name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    Deprecated:

    Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.

    NetworkInterfaces EcsLaunchTemplateNetworkInterfacesArgs

    The list of network interfaces created with instance.

    NetworkType string

    Network type of the instance. Valid values: classic, vpc.

    PasswordInherit bool

    Whether to use the password preset by the mirror.

    Period int

    The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.

    • When the PeriodUnit parameter is set to Week, the valid values of the Period parameter are 1, 2, 3, and 4.
    • When the PeriodUnit parameter is set to Month, the valid values of the Period parameter are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.
    PrivateIpAddress string

    The private IP address of the instance.

    RamRoleName string

    The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.

    ResourceGroupId string

    The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.

    SecurityEnhancementStrategy string

    Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: Active, Deactive.

    SecurityGroupId string

    The security group ID.

    SecurityGroupIds []string

    The ID of security group N to which to assign the instance.

    SpotDuration string

    The protection period of the preemptible instance. Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6. Default to: 1.

    SpotPriceLimit float64

    Sets the maximum hourly instance price. Supports up to three decimal places.

    SpotStrategy string

    The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.

    SystemDisk EcsLaunchTemplateSystemDiskArgs

    The System Disk.

    SystemDiskCategory string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    SystemDiskDescription string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    SystemDiskName string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    SystemDiskSize int

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    Tags map[string]interface{}

    A mapping of tags to assign to instance, block storage, and elastic network.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
    TemplateResourceGroupId string

    The template resource group id.

    TemplateTags map[string]interface{}

    A mapping of tags to assign to the launch template.

    UserData string

    The User Data.

    Userdata string

    It has been deprecated from version 1.120.0, and use field user_data instead.

    Deprecated:

    Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.

    VersionDescription string

    The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

    VpcId string

    The ID of the VPC.

    VswitchId string

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    ZoneId string

    The zone ID of the instance.

    autoReleaseTime String

    Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.

    dataDisks List<EcsLaunchTemplateDataDisk>

    The list of data disks created with instance.

    deploymentSetId String

    The Deployment Set Id.

    description String

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    enableVmOsConfig Boolean

    Whether to enable the instance operating system configuration.

    hostName String

    Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).

    imageId String

    The Image ID.

    imageOwnerAlias String

    Mirror source. Valid values: system, self, others, marketplace, "". Default to: "".

    instanceChargeType String

    Billing methods. Valid values: PostPaid, PrePaid.

    instanceName String

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

    instanceType String

    Instance type. For more information, call resource_alicloud_instances to obtain the latest instance type list.

    internetChargeType String

    Internet bandwidth billing method. Valid values: PayByTraffic, PayByBandwidth.

    internetMaxBandwidthIn Integer

    The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].

    internetMaxBandwidthOut Integer

    Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].

    ioOptimized String

    Whether it is an I/O-optimized instance or not. Valid values: none, optimized.

    keyPairName String

    The name of the key pair.

    • Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used.
    • The password logon method for Linux instances is set to forbidden upon initialization.
    launchTemplateName String

    The name of Launch Template.

    name String

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    Deprecated:

    Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.

    networkInterfaces EcsLaunchTemplateNetworkInterfaces

    The list of network interfaces created with instance.

    networkType String

    Network type of the instance. Valid values: classic, vpc.

    passwordInherit Boolean

    Whether to use the password preset by the mirror.

    period Integer

    The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.

    • When the PeriodUnit parameter is set to Week, the valid values of the Period parameter are 1, 2, 3, and 4.
    • When the PeriodUnit parameter is set to Month, the valid values of the Period parameter are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.
    privateIpAddress String

    The private IP address of the instance.

    ramRoleName String

    The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.

    resourceGroupId String

    The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.

    securityEnhancementStrategy String

    Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: Active, Deactive.

    securityGroupId String

    The security group ID.

    securityGroupIds List<String>

    The ID of security group N to which to assign the instance.

    spotDuration String

    The protection period of the preemptible instance. Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6. Default to: 1.

    spotPriceLimit Double

    Sets the maximum hourly instance price. Supports up to three decimal places.

    spotStrategy String

    The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.

    systemDisk EcsLaunchTemplateSystemDisk

    The System Disk.

    systemDiskCategory String

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskDescription String

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskName String

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskSize Integer

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    tags Map<String,Object>

    A mapping of tags to assign to instance, block storage, and elastic network.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
    templateResourceGroupId String

    The template resource group id.

    templateTags Map<String,Object>

    A mapping of tags to assign to the launch template.

    userData String

    The User Data.

    userdata String

    It has been deprecated from version 1.120.0, and use field user_data instead.

    Deprecated:

    Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.

    versionDescription String

    The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

    vpcId String

    The ID of the VPC.

    vswitchId String

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    zoneId String

    The zone ID of the instance.

    autoReleaseTime string

    Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.

    dataDisks EcsLaunchTemplateDataDisk[]

    The list of data disks created with instance.

    deploymentSetId string

    The Deployment Set Id.

    description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    enableVmOsConfig boolean

    Whether to enable the instance operating system configuration.

    hostName string

    Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).

    imageId string

    The Image ID.

    imageOwnerAlias string

    Mirror source. Valid values: system, self, others, marketplace, "". Default to: "".

    instanceChargeType string

    Billing methods. Valid values: PostPaid, PrePaid.

    instanceName string

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

    instanceType string

    Instance type. For more information, call resource_alicloud_instances to obtain the latest instance type list.

    internetChargeType string

    Internet bandwidth billing method. Valid values: PayByTraffic, PayByBandwidth.

    internetMaxBandwidthIn number

    The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].

    internetMaxBandwidthOut number

    Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].

    ioOptimized string

    Whether it is an I/O-optimized instance or not. Valid values: none, optimized.

    keyPairName string

    The name of the key pair.

    • Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used.
    • The password logon method for Linux instances is set to forbidden upon initialization.
    launchTemplateName string

    The name of Launch Template.

    name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    Deprecated:

    Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.

    networkInterfaces EcsLaunchTemplateNetworkInterfaces

    The list of network interfaces created with instance.

    networkType string

    Network type of the instance. Valid values: classic, vpc.

    passwordInherit boolean

    Whether to use the password preset by the mirror.

    period number

    The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.

    • When the PeriodUnit parameter is set to Week, the valid values of the Period parameter are 1, 2, 3, and 4.
    • When the PeriodUnit parameter is set to Month, the valid values of the Period parameter are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.
    privateIpAddress string

    The private IP address of the instance.

    ramRoleName string

    The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.

    resourceGroupId string

    The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.

    securityEnhancementStrategy string

    Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: Active, Deactive.

    securityGroupId string

    The security group ID.

    securityGroupIds string[]

    The ID of security group N to which to assign the instance.

    spotDuration string

    The protection period of the preemptible instance. Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6. Default to: 1.

    spotPriceLimit number

    Sets the maximum hourly instance price. Supports up to three decimal places.

    spotStrategy string

    The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.

    systemDisk EcsLaunchTemplateSystemDisk

    The System Disk.

    systemDiskCategory string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskDescription string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskName string

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskSize number

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    tags {[key: string]: any}

    A mapping of tags to assign to instance, block storage, and elastic network.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
    templateResourceGroupId string

    The template resource group id.

    templateTags {[key: string]: any}

    A mapping of tags to assign to the launch template.

    userData string

    The User Data.

    userdata string

    It has been deprecated from version 1.120.0, and use field user_data instead.

    Deprecated:

    Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.

    versionDescription string

    The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

    vpcId string

    The ID of the VPC.

    vswitchId string

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    zoneId string

    The zone ID of the instance.

    auto_release_time str

    Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.

    data_disks Sequence[EcsLaunchTemplateDataDiskArgs]

    The list of data disks created with instance.

    deployment_set_id str

    The Deployment Set Id.

    description str

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    enable_vm_os_config bool

    Whether to enable the instance operating system configuration.

    host_name str

    Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).

    image_id str

    The Image ID.

    image_owner_alias str

    Mirror source. Valid values: system, self, others, marketplace, "". Default to: "".

    instance_charge_type str

    Billing methods. Valid values: PostPaid, PrePaid.

    instance_name str

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

    instance_type str

    Instance type. For more information, call resource_alicloud_instances to obtain the latest instance type list.

    internet_charge_type str

    Internet bandwidth billing method. Valid values: PayByTraffic, PayByBandwidth.

    internet_max_bandwidth_in int

    The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].

    internet_max_bandwidth_out int

    Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].

    io_optimized str

    Whether it is an I/O-optimized instance or not. Valid values: none, optimized.

    key_pair_name str

    The name of the key pair.

    • Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used.
    • The password logon method for Linux instances is set to forbidden upon initialization.
    launch_template_name str

    The name of Launch Template.

    name str

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    Deprecated:

    Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.

    network_interfaces EcsLaunchTemplateNetworkInterfacesArgs

    The list of network interfaces created with instance.

    network_type str

    Network type of the instance. Valid values: classic, vpc.

    password_inherit bool

    Whether to use the password preset by the mirror.

    period int

    The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.

    • When the PeriodUnit parameter is set to Week, the valid values of the Period parameter are 1, 2, 3, and 4.
    • When the PeriodUnit parameter is set to Month, the valid values of the Period parameter are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.
    private_ip_address str

    The private IP address of the instance.

    ram_role_name str

    The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.

    resource_group_id str

    The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.

    security_enhancement_strategy str

    Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: Active, Deactive.

    security_group_id str

    The security group ID.

    security_group_ids Sequence[str]

    The ID of security group N to which to assign the instance.

    spot_duration str

    The protection period of the preemptible instance. Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6. Default to: 1.

    spot_price_limit float

    Sets the maximum hourly instance price. Supports up to three decimal places.

    spot_strategy str

    The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.

    system_disk EcsLaunchTemplateSystemDiskArgs

    The System Disk.

    system_disk_category str

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    system_disk_description str

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    system_disk_name str

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    system_disk_size int

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    tags Mapping[str, Any]

    A mapping of tags to assign to instance, block storage, and elastic network.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
    template_resource_group_id str

    The template resource group id.

    template_tags Mapping[str, Any]

    A mapping of tags to assign to the launch template.

    user_data str

    The User Data.

    userdata str

    It has been deprecated from version 1.120.0, and use field user_data instead.

    Deprecated:

    Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.

    version_description str

    The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

    vpc_id str

    The ID of the VPC.

    vswitch_id str

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    zone_id str

    The zone ID of the instance.

    autoReleaseTime String

    Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.

    dataDisks List<Property Map>

    The list of data disks created with instance.

    deploymentSetId String

    The Deployment Set Id.

    description String

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    enableVmOsConfig Boolean

    Whether to enable the instance operating system configuration.

    hostName String

    Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).

    imageId String

    The Image ID.

    imageOwnerAlias String

    Mirror source. Valid values: system, self, others, marketplace, "". Default to: "".

    instanceChargeType String

    Billing methods. Valid values: PostPaid, PrePaid.

    instanceName String

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

    instanceType String

    Instance type. For more information, call resource_alicloud_instances to obtain the latest instance type list.

    internetChargeType String

    Internet bandwidth billing method. Valid values: PayByTraffic, PayByBandwidth.

    internetMaxBandwidthIn Number

    The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].

    internetMaxBandwidthOut Number

    Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].

    ioOptimized String

    Whether it is an I/O-optimized instance or not. Valid values: none, optimized.

    keyPairName String

    The name of the key pair.

    • Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used.
    • The password logon method for Linux instances is set to forbidden upon initialization.
    launchTemplateName String

    The name of Launch Template.

    name String

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    Deprecated:

    Field 'name' has been deprecated from provider version 1.120.0. New field 'launch_template_name' instead.

    networkInterfaces Property Map

    The list of network interfaces created with instance.

    networkType String

    Network type of the instance. Valid values: classic, vpc.

    passwordInherit Boolean

    Whether to use the password preset by the mirror.

    period Number

    The subscription period of the instance. Unit: months. This parameter takes effect and is required only when InstanceChargeType is set to PrePaid. If the DedicatedHostId parameter is specified, the value of the Period parameter must be within the subscription period of the dedicated host.

    • When the PeriodUnit parameter is set to Week, the valid values of the Period parameter are 1, 2, 3, and 4.
    • When the PeriodUnit parameter is set to Month, the valid values of the Period parameter are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.
    privateIpAddress String

    The private IP address of the instance.

    ramRoleName String

    The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.

    resourceGroupId String

    The ID of the resource group to which to assign the instance, Elastic Block Storage (EBS) device, and ENI.

    securityEnhancementStrategy String

    Whether or not to activate the security enhancement feature and install network security software free of charge. Valid values: Active, Deactive.

    securityGroupId String

    The security group ID.

    securityGroupIds List<String>

    The ID of security group N to which to assign the instance.

    spotDuration String

    The protection period of the preemptible instance. Unit: hours. Valid values: 0, 1, 2, 3, 4, 5, and 6. Default to: 1.

    spotPriceLimit Number

    Sets the maximum hourly instance price. Supports up to three decimal places.

    spotStrategy String

    The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Valid values: NoSpot, SpotAsPriceGo, SpotWithPriceLimit.

    systemDisk Property Map

    The System Disk.

    systemDiskCategory String

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_category' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskDescription String

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_description' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskName String

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_name' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    systemDiskSize Number

    It has been deprecated from version 1.120.0, and use field system_disk instead.

    Deprecated:

    Field 'system_disk_size' has been deprecated from provider version 1.120.0. New field 'system_disk' instead.

    tags Map<Any>

    A mapping of tags to assign to instance, block storage, and elastic network.

    • Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string.
    • Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.
    templateResourceGroupId String

    The template resource group id.

    templateTags Map<Any>

    A mapping of tags to assign to the launch template.

    userData String

    The User Data.

    userdata String

    It has been deprecated from version 1.120.0, and use field user_data instead.

    Deprecated:

    Field 'userdata' has been deprecated from provider version 1.120.0. New field 'user_data' instead.

    versionDescription String

    The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with http:// or https://.

    vpcId String

    The ID of the VPC.

    vswitchId String

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    zoneId String

    The zone ID of the instance.

    Supporting Types

    EcsLaunchTemplateDataDisk, EcsLaunchTemplateDataDiskArgs

    Category string

    The category of the system disk. System disk type. Valid values: all, cloud, ephemeral_ssd, cloud_essd, cloud_efficiency, cloud_ssd, local_disk.

    DeleteWithInstance bool

    Specifies whether to release the system disk when the instance is released. Default to true.

    Description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    Encrypted bool

    Encrypted the data in this disk.

    Name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    PerformanceLevel string

    The performance level of the ESSD used as the system disk. Valid Values: PL0, PL1, PL2, and PL3. Default to: PL0.

    Size int

    Size of the system disk, measured in GB. Value range: [20, 500].

    SnapshotId string

    The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.

    Category string

    The category of the system disk. System disk type. Valid values: all, cloud, ephemeral_ssd, cloud_essd, cloud_efficiency, cloud_ssd, local_disk.

    DeleteWithInstance bool

    Specifies whether to release the system disk when the instance is released. Default to true.

    Description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    Encrypted bool

    Encrypted the data in this disk.

    Name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    PerformanceLevel string

    The performance level of the ESSD used as the system disk. Valid Values: PL0, PL1, PL2, and PL3. Default to: PL0.

    Size int

    Size of the system disk, measured in GB. Value range: [20, 500].

    SnapshotId string

    The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.

    category String

    The category of the system disk. System disk type. Valid values: all, cloud, ephemeral_ssd, cloud_essd, cloud_efficiency, cloud_ssd, local_disk.

    deleteWithInstance Boolean

    Specifies whether to release the system disk when the instance is released. Default to true.

    description String

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    encrypted Boolean

    Encrypted the data in this disk.

    name String

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    performanceLevel String

    The performance level of the ESSD used as the system disk. Valid Values: PL0, PL1, PL2, and PL3. Default to: PL0.

    size Integer

    Size of the system disk, measured in GB. Value range: [20, 500].

    snapshotId String

    The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.

    category string

    The category of the system disk. System disk type. Valid values: all, cloud, ephemeral_ssd, cloud_essd, cloud_efficiency, cloud_ssd, local_disk.

    deleteWithInstance boolean

    Specifies whether to release the system disk when the instance is released. Default to true.

    description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    encrypted boolean

    Encrypted the data in this disk.

    name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    performanceLevel string

    The performance level of the ESSD used as the system disk. Valid Values: PL0, PL1, PL2, and PL3. Default to: PL0.

    size number

    Size of the system disk, measured in GB. Value range: [20, 500].

    snapshotId string

    The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.

    category str

    The category of the system disk. System disk type. Valid values: all, cloud, ephemeral_ssd, cloud_essd, cloud_efficiency, cloud_ssd, local_disk.

    delete_with_instance bool

    Specifies whether to release the system disk when the instance is released. Default to true.

    description str

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    encrypted bool

    Encrypted the data in this disk.

    name str

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    performance_level str

    The performance level of the ESSD used as the system disk. Valid Values: PL0, PL1, PL2, and PL3. Default to: PL0.

    size int

    Size of the system disk, measured in GB. Value range: [20, 500].

    snapshot_id str

    The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.

    category String

    The category of the system disk. System disk type. Valid values: all, cloud, ephemeral_ssd, cloud_essd, cloud_efficiency, cloud_ssd, local_disk.

    deleteWithInstance Boolean

    Specifies whether to release the system disk when the instance is released. Default to true.

    description String

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    encrypted Boolean

    Encrypted the data in this disk.

    name String

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    performanceLevel String

    The performance level of the ESSD used as the system disk. Valid Values: PL0, PL1, PL2, and PL3. Default to: PL0.

    size Number

    Size of the system disk, measured in GB. Value range: [20, 500].

    snapshotId String

    The snapshot ID used to initialize the data disk. If the size specified by snapshot is greater that the size of the disk, use the size specified by snapshot as the size of the data disk.

    EcsLaunchTemplateNetworkInterfaces, EcsLaunchTemplateNetworkInterfacesArgs

    Description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    Name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    PrimaryIp string

    The primary private IP address of the ENI.

    SecurityGroupId string

    The security group ID.

    VswitchId string

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    Description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    Name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    PrimaryIp string

    The primary private IP address of the ENI.

    SecurityGroupId string

    The security group ID.

    VswitchId string

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    description String

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    name String

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    primaryIp String

    The primary private IP address of the ENI.

    securityGroupId String

    The security group ID.

    vswitchId String

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    primaryIp string

    The primary private IP address of the ENI.

    securityGroupId string

    The security group ID.

    vswitchId string

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    description str

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    name str

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    primary_ip str

    The primary private IP address of the ENI.

    security_group_id str

    The security group ID.

    vswitch_id str

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    description String

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    name String

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    primaryIp String

    The primary private IP address of the ENI.

    securityGroupId String

    The security group ID.

    vswitchId String

    When creating a VPC-Connected instance, you must specify its VSwitch ID.

    EcsLaunchTemplateSystemDisk, EcsLaunchTemplateSystemDiskArgs

    Category string

    The category of the system disk. System disk type. Valid values: all, cloud, ephemeral_ssd, cloud_essd, cloud_efficiency, cloud_ssd, local_disk.

    DeleteWithInstance bool

    Specifies whether to release the system disk when the instance is released. Default to true.

    Description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    Iops string

    The Iops.

    Name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    PerformanceLevel string

    The performance level of the ESSD used as the system disk. Valid Values: PL0, PL1, PL2, and PL3. Default to: PL0.

    Size int

    Size of the system disk, measured in GB. Value range: [20, 500].

    Category string

    The category of the system disk. System disk type. Valid values: all, cloud, ephemeral_ssd, cloud_essd, cloud_efficiency, cloud_ssd, local_disk.

    DeleteWithInstance bool

    Specifies whether to release the system disk when the instance is released. Default to true.

    Description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    Iops string

    The Iops.

    Name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    PerformanceLevel string

    The performance level of the ESSD used as the system disk. Valid Values: PL0, PL1, PL2, and PL3. Default to: PL0.

    Size int

    Size of the system disk, measured in GB. Value range: [20, 500].

    category String

    The category of the system disk. System disk type. Valid values: all, cloud, ephemeral_ssd, cloud_essd, cloud_efficiency, cloud_ssd, local_disk.

    deleteWithInstance Boolean

    Specifies whether to release the system disk when the instance is released. Default to true.

    description String

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    iops String

    The Iops.

    name String

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    performanceLevel String

    The performance level of the ESSD used as the system disk. Valid Values: PL0, PL1, PL2, and PL3. Default to: PL0.

    size Integer

    Size of the system disk, measured in GB. Value range: [20, 500].

    category string

    The category of the system disk. System disk type. Valid values: all, cloud, ephemeral_ssd, cloud_essd, cloud_efficiency, cloud_ssd, local_disk.

    deleteWithInstance boolean

    Specifies whether to release the system disk when the instance is released. Default to true.

    description string

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    iops string

    The Iops.

    name string

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    performanceLevel string

    The performance level of the ESSD used as the system disk. Valid Values: PL0, PL1, PL2, and PL3. Default to: PL0.

    size number

    Size of the system disk, measured in GB. Value range: [20, 500].

    category str

    The category of the system disk. System disk type. Valid values: all, cloud, ephemeral_ssd, cloud_essd, cloud_efficiency, cloud_ssd, local_disk.

    delete_with_instance bool

    Specifies whether to release the system disk when the instance is released. Default to true.

    description str

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    iops str

    The Iops.

    name str

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    performance_level str

    The performance level of the ESSD used as the system disk. Valid Values: PL0, PL1, PL2, and PL3. Default to: PL0.

    size int

    Size of the system disk, measured in GB. Value range: [20, 500].

    category String

    The category of the system disk. System disk type. Valid values: all, cloud, ephemeral_ssd, cloud_essd, cloud_efficiency, cloud_ssd, local_disk.

    deleteWithInstance Boolean

    Specifies whether to release the system disk when the instance is released. Default to true.

    description String

    Description of instance launch template version 1. It can be [2, 256] characters in length. It cannot start with "http://" or "https://". The default value is null.

    iops String

    The Iops.

    name String

    It has been deprecated from version 1.120.0, and use field launch_template_name instead.

    performanceLevel String

    The performance level of the ESSD used as the system disk. Valid Values: PL0, PL1, PL2, and PL3. Default to: PL0.

    size Number

    Size of the system disk, measured in GB. Value range: [20, 500].

    Import

    ECS Launch Template can be imported using the id, e.g.

     $ pulumi import alicloud:ecs/ecsLaunchTemplate:EcsLaunchTemplate example <id>
    

    Package Details

    Repository
    Alibaba Cloud pulumi/pulumi-alicloud
    License
    Apache-2.0
    Notes

    This Pulumi package is based on the alicloud Terraform Provider.

    alicloud logo
    Alibaba Cloud v3.44.0 published on Thursday, Sep 28, 2023 by Pulumi