1. Packages
  2. AWS Native
  3. API Docs
  4. ec2
  5. LaunchTemplate

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

AWS Native v0.126.0 published on Monday, Sep 30, 2024 by Pulumi

aws-native.ec2.LaunchTemplate

Explore with Pulumi AI

aws-native logo

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

AWS Native v0.126.0 published on Monday, Sep 30, 2024 by Pulumi

    Specifies the properties for creating a launch template. The minimum required properties for specifying a launch template are as follows:

    • You must specify at least one property for the launch template data.
    • You can optionally specify a name for the launch template. If you do not specify a name, CFN creates a name for you.

    A launch template can contain some or all of the configuration information to launch an instance. When you launch an instance using a launch template, instance properties that are not specified in the launch template use default values, except the ImageId property, which has no default value. If you do not specify an AMI ID for the launch template ImageId property, you must specify an AMI ID for the instance ImageId property. For more information, see Launch an instance from a launch template in the Amazon EC2 User Guide.

    Create LaunchTemplate Resource

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

    Constructor syntax

    new LaunchTemplate(name: string, args: LaunchTemplateArgs, opts?: CustomResourceOptions);
    @overload
    def LaunchTemplate(resource_name: str,
                       args: LaunchTemplateArgs,
                       opts: Optional[ResourceOptions] = None)
    
    @overload
    def LaunchTemplate(resource_name: str,
                       opts: Optional[ResourceOptions] = None,
                       launch_template_data: Optional[LaunchTemplateDataArgs] = None,
                       launch_template_name: Optional[str] = None,
                       tag_specifications: Optional[Sequence[LaunchTemplateTagSpecificationArgs]] = None,
                       version_description: Optional[str] = None)
    func NewLaunchTemplate(ctx *Context, name string, args LaunchTemplateArgs, opts ...ResourceOption) (*LaunchTemplate, error)
    public LaunchTemplate(string name, LaunchTemplateArgs args, CustomResourceOptions? opts = null)
    public LaunchTemplate(String name, LaunchTemplateArgs args)
    public LaunchTemplate(String name, LaunchTemplateArgs args, CustomResourceOptions options)
    
    type: aws-native:ec2:LaunchTemplate
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

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

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

    LaunchTemplateData Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateData
    The information for the launch template.
    LaunchTemplateName string
    A name for the launch template.
    TagSpecifications List<Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateTagSpecification>
    The tags to apply to the launch template on creation. To tag the launch template, the resource type must be launch-template. To specify the tags for the resources that are created when an instance is launched, you must use TagSpecifications.
    VersionDescription string
    A description for the first version of the launch template.
    LaunchTemplateData LaunchTemplateDataArgs
    The information for the launch template.
    LaunchTemplateName string
    A name for the launch template.
    TagSpecifications []LaunchTemplateTagSpecificationArgs
    The tags to apply to the launch template on creation. To tag the launch template, the resource type must be launch-template. To specify the tags for the resources that are created when an instance is launched, you must use TagSpecifications.
    VersionDescription string
    A description for the first version of the launch template.
    launchTemplateData LaunchTemplateData
    The information for the launch template.
    launchTemplateName String
    A name for the launch template.
    tagSpecifications List<LaunchTemplateTagSpecification>
    The tags to apply to the launch template on creation. To tag the launch template, the resource type must be launch-template. To specify the tags for the resources that are created when an instance is launched, you must use TagSpecifications.
    versionDescription String
    A description for the first version of the launch template.
    launchTemplateData LaunchTemplateData
    The information for the launch template.
    launchTemplateName string
    A name for the launch template.
    tagSpecifications LaunchTemplateTagSpecification[]
    The tags to apply to the launch template on creation. To tag the launch template, the resource type must be launch-template. To specify the tags for the resources that are created when an instance is launched, you must use TagSpecifications.
    versionDescription string
    A description for the first version of the launch template.
    launch_template_data LaunchTemplateDataArgs
    The information for the launch template.
    launch_template_name str
    A name for the launch template.
    tag_specifications Sequence[LaunchTemplateTagSpecificationArgs]
    The tags to apply to the launch template on creation. To tag the launch template, the resource type must be launch-template. To specify the tags for the resources that are created when an instance is launched, you must use TagSpecifications.
    version_description str
    A description for the first version of the launch template.
    launchTemplateData Property Map
    The information for the launch template.
    launchTemplateName String
    A name for the launch template.
    tagSpecifications List<Property Map>
    The tags to apply to the launch template on creation. To tag the launch template, the resource type must be launch-template. To specify the tags for the resources that are created when an instance is launched, you must use TagSpecifications.
    versionDescription String
    A description for the first version of the launch template.

    Outputs

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

    DefaultVersionNumber string

    The default version of the launch template, such as 2.

    The default version of a launch template cannot be specified in AWS CloudFormation . The default version can be set in the Amazon EC2 console or by using the modify-launch-template AWS CLI command.

    Id string
    The provider-assigned unique ID for this managed resource.
    LatestVersionNumber string
    The latest version of the launch template, such as 5 .
    LaunchTemplateId string
    The ID of the launch template.
    DefaultVersionNumber string

    The default version of the launch template, such as 2.

    The default version of a launch template cannot be specified in AWS CloudFormation . The default version can be set in the Amazon EC2 console or by using the modify-launch-template AWS CLI command.

    Id string
    The provider-assigned unique ID for this managed resource.
    LatestVersionNumber string
    The latest version of the launch template, such as 5 .
    LaunchTemplateId string
    The ID of the launch template.
    defaultVersionNumber String

    The default version of the launch template, such as 2.

    The default version of a launch template cannot be specified in AWS CloudFormation . The default version can be set in the Amazon EC2 console or by using the modify-launch-template AWS CLI command.

    id String
    The provider-assigned unique ID for this managed resource.
    latestVersionNumber String
    The latest version of the launch template, such as 5 .
    launchTemplateId String
    The ID of the launch template.
    defaultVersionNumber string

    The default version of the launch template, such as 2.

    The default version of a launch template cannot be specified in AWS CloudFormation . The default version can be set in the Amazon EC2 console or by using the modify-launch-template AWS CLI command.

    id string
    The provider-assigned unique ID for this managed resource.
    latestVersionNumber string
    The latest version of the launch template, such as 5 .
    launchTemplateId string
    The ID of the launch template.
    default_version_number str

    The default version of the launch template, such as 2.

    The default version of a launch template cannot be specified in AWS CloudFormation . The default version can be set in the Amazon EC2 console or by using the modify-launch-template AWS CLI command.

    id str
    The provider-assigned unique ID for this managed resource.
    latest_version_number str
    The latest version of the launch template, such as 5 .
    launch_template_id str
    The ID of the launch template.
    defaultVersionNumber String

    The default version of the launch template, such as 2.

    The default version of a launch template cannot be specified in AWS CloudFormation . The default version can be set in the Amazon EC2 console or by using the modify-launch-template AWS CLI command.

    id String
    The provider-assigned unique ID for this managed resource.
    latestVersionNumber String
    The latest version of the launch template, such as 5 .
    launchTemplateId String
    The ID of the launch template.

    Supporting Types

    LaunchTemplateAcceleratorCount, LaunchTemplateAcceleratorCountArgs

    Max int
    The maximum number of accelerators. To specify no maximum limit, omit this parameter. To exclude accelerator-enabled instance types, set Max to 0.
    Min int
    The minimum number of accelerators. To specify no minimum limit, omit this parameter.
    Max int
    The maximum number of accelerators. To specify no maximum limit, omit this parameter. To exclude accelerator-enabled instance types, set Max to 0.
    Min int
    The minimum number of accelerators. To specify no minimum limit, omit this parameter.
    max Integer
    The maximum number of accelerators. To specify no maximum limit, omit this parameter. To exclude accelerator-enabled instance types, set Max to 0.
    min Integer
    The minimum number of accelerators. To specify no minimum limit, omit this parameter.
    max number
    The maximum number of accelerators. To specify no maximum limit, omit this parameter. To exclude accelerator-enabled instance types, set Max to 0.
    min number
    The minimum number of accelerators. To specify no minimum limit, omit this parameter.
    max int
    The maximum number of accelerators. To specify no maximum limit, omit this parameter. To exclude accelerator-enabled instance types, set Max to 0.
    min int
    The minimum number of accelerators. To specify no minimum limit, omit this parameter.
    max Number
    The maximum number of accelerators. To specify no maximum limit, omit this parameter. To exclude accelerator-enabled instance types, set Max to 0.
    min Number
    The minimum number of accelerators. To specify no minimum limit, omit this parameter.

    LaunchTemplateAcceleratorTotalMemoryMiB, LaunchTemplateAcceleratorTotalMemoryMiBArgs

    Max int
    The maximum amount of accelerator memory, in MiB. To specify no maximum limit, omit this parameter.
    Min int
    The minimum amount of accelerator memory, in MiB. To specify no minimum limit, omit this parameter.
    Max int
    The maximum amount of accelerator memory, in MiB. To specify no maximum limit, omit this parameter.
    Min int
    The minimum amount of accelerator memory, in MiB. To specify no minimum limit, omit this parameter.
    max Integer
    The maximum amount of accelerator memory, in MiB. To specify no maximum limit, omit this parameter.
    min Integer
    The minimum amount of accelerator memory, in MiB. To specify no minimum limit, omit this parameter.
    max number
    The maximum amount of accelerator memory, in MiB. To specify no maximum limit, omit this parameter.
    min number
    The minimum amount of accelerator memory, in MiB. To specify no minimum limit, omit this parameter.
    max int
    The maximum amount of accelerator memory, in MiB. To specify no maximum limit, omit this parameter.
    min int
    The minimum amount of accelerator memory, in MiB. To specify no minimum limit, omit this parameter.
    max Number
    The maximum amount of accelerator memory, in MiB. To specify no maximum limit, omit this parameter.
    min Number
    The minimum amount of accelerator memory, in MiB. To specify no minimum limit, omit this parameter.

    LaunchTemplateBaselineEbsBandwidthMbps, LaunchTemplateBaselineEbsBandwidthMbpsArgs

    Max int
    The maximum baseline bandwidth, in Mbps. To specify no maximum limit, omit this parameter.
    Min int
    The minimum baseline bandwidth, in Mbps. To specify no minimum limit, omit this parameter.
    Max int
    The maximum baseline bandwidth, in Mbps. To specify no maximum limit, omit this parameter.
    Min int
    The minimum baseline bandwidth, in Mbps. To specify no minimum limit, omit this parameter.
    max Integer
    The maximum baseline bandwidth, in Mbps. To specify no maximum limit, omit this parameter.
    min Integer
    The minimum baseline bandwidth, in Mbps. To specify no minimum limit, omit this parameter.
    max number
    The maximum baseline bandwidth, in Mbps. To specify no maximum limit, omit this parameter.
    min number
    The minimum baseline bandwidth, in Mbps. To specify no minimum limit, omit this parameter.
    max int
    The maximum baseline bandwidth, in Mbps. To specify no maximum limit, omit this parameter.
    min int
    The minimum baseline bandwidth, in Mbps. To specify no minimum limit, omit this parameter.
    max Number
    The maximum baseline bandwidth, in Mbps. To specify no maximum limit, omit this parameter.
    min Number
    The minimum baseline bandwidth, in Mbps. To specify no minimum limit, omit this parameter.

    LaunchTemplateBlockDeviceMapping, LaunchTemplateBlockDeviceMappingArgs

    DeviceName string
    The device name (for example, /dev/sdh or xvdh).
    Ebs Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateEbs
    Parameters used to automatically set up EBS volumes when the instance is launched.
    NoDevice string
    To omit the device from the block device mapping, specify an empty string.
    VirtualName string
    The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.
    DeviceName string
    The device name (for example, /dev/sdh or xvdh).
    Ebs LaunchTemplateEbs
    Parameters used to automatically set up EBS volumes when the instance is launched.
    NoDevice string
    To omit the device from the block device mapping, specify an empty string.
    VirtualName string
    The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.
    deviceName String
    The device name (for example, /dev/sdh or xvdh).
    ebs LaunchTemplateEbs
    Parameters used to automatically set up EBS volumes when the instance is launched.
    noDevice String
    To omit the device from the block device mapping, specify an empty string.
    virtualName String
    The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.
    deviceName string
    The device name (for example, /dev/sdh or xvdh).
    ebs LaunchTemplateEbs
    Parameters used to automatically set up EBS volumes when the instance is launched.
    noDevice string
    To omit the device from the block device mapping, specify an empty string.
    virtualName string
    The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.
    device_name str
    The device name (for example, /dev/sdh or xvdh).
    ebs LaunchTemplateEbs
    Parameters used to automatically set up EBS volumes when the instance is launched.
    no_device str
    To omit the device from the block device mapping, specify an empty string.
    virtual_name str
    The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.
    deviceName String
    The device name (for example, /dev/sdh or xvdh).
    ebs Property Map
    Parameters used to automatically set up EBS volumes when the instance is launched.
    noDevice String
    To omit the device from the block device mapping, specify an empty string.
    virtualName String
    The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.

    LaunchTemplateCapacityReservationSpecification, LaunchTemplateCapacityReservationSpecificationArgs

    CapacityReservationPreference string
    Indicates the instance's Capacity Reservation preferences. Possible preferences include:

    • open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
    • none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs in On-Demand capacity.
    CapacityReservationTarget Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateCapacityReservationTarget
    Information about the target Capacity Reservation or Capacity Reservation group.
    CapacityReservationPreference string
    Indicates the instance's Capacity Reservation preferences. Possible preferences include:

    • open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
    • none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs in On-Demand capacity.
    CapacityReservationTarget LaunchTemplateCapacityReservationTarget
    Information about the target Capacity Reservation or Capacity Reservation group.
    capacityReservationPreference String
    Indicates the instance's Capacity Reservation preferences. Possible preferences include:

    • open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
    • none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs in On-Demand capacity.
    capacityReservationTarget LaunchTemplateCapacityReservationTarget
    Information about the target Capacity Reservation or Capacity Reservation group.
    capacityReservationPreference string
    Indicates the instance's Capacity Reservation preferences. Possible preferences include:

    • open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
    • none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs in On-Demand capacity.
    capacityReservationTarget LaunchTemplateCapacityReservationTarget
    Information about the target Capacity Reservation or Capacity Reservation group.
    capacity_reservation_preference str
    Indicates the instance's Capacity Reservation preferences. Possible preferences include:

    • open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
    • none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs in On-Demand capacity.
    capacity_reservation_target LaunchTemplateCapacityReservationTarget
    Information about the target Capacity Reservation or Capacity Reservation group.
    capacityReservationPreference String
    Indicates the instance's Capacity Reservation preferences. Possible preferences include:

    • open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
    • none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs in On-Demand capacity.
    capacityReservationTarget Property Map
    Information about the target Capacity Reservation or Capacity Reservation group.

    LaunchTemplateCapacityReservationTarget, LaunchTemplateCapacityReservationTargetArgs

    CapacityReservationId string
    The ID of the Capacity Reservation in which to run the instance.
    CapacityReservationResourceGroupArn string
    The ARN of the Capacity Reservation resource group in which to run the instance.
    CapacityReservationId string
    The ID of the Capacity Reservation in which to run the instance.
    CapacityReservationResourceGroupArn string
    The ARN of the Capacity Reservation resource group in which to run the instance.
    capacityReservationId String
    The ID of the Capacity Reservation in which to run the instance.
    capacityReservationResourceGroupArn String
    The ARN of the Capacity Reservation resource group in which to run the instance.
    capacityReservationId string
    The ID of the Capacity Reservation in which to run the instance.
    capacityReservationResourceGroupArn string
    The ARN of the Capacity Reservation resource group in which to run the instance.
    capacity_reservation_id str
    The ID of the Capacity Reservation in which to run the instance.
    capacity_reservation_resource_group_arn str
    The ARN of the Capacity Reservation resource group in which to run the instance.
    capacityReservationId String
    The ID of the Capacity Reservation in which to run the instance.
    capacityReservationResourceGroupArn String
    The ARN of the Capacity Reservation resource group in which to run the instance.

    LaunchTemplateConnectionTrackingSpecification, LaunchTemplateConnectionTrackingSpecificationArgs

    TcpEstablishedTimeout int
    Timeout (in seconds) for idle TCP connections in an established state. Min: 60 seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended: Less than 432000 seconds.
    UdpStreamTimeout int
    Timeout (in seconds) for idle UDP flows classified as streams which have seen more than one request-response transaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180 seconds.
    UdpTimeout int
    Timeout (in seconds) for idle UDP flows that have seen traffic only in a single direction or a single request-response transaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.
    TcpEstablishedTimeout int
    Timeout (in seconds) for idle TCP connections in an established state. Min: 60 seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended: Less than 432000 seconds.
    UdpStreamTimeout int
    Timeout (in seconds) for idle UDP flows classified as streams which have seen more than one request-response transaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180 seconds.
    UdpTimeout int
    Timeout (in seconds) for idle UDP flows that have seen traffic only in a single direction or a single request-response transaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.
    tcpEstablishedTimeout Integer
    Timeout (in seconds) for idle TCP connections in an established state. Min: 60 seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended: Less than 432000 seconds.
    udpStreamTimeout Integer
    Timeout (in seconds) for idle UDP flows classified as streams which have seen more than one request-response transaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180 seconds.
    udpTimeout Integer
    Timeout (in seconds) for idle UDP flows that have seen traffic only in a single direction or a single request-response transaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.
    tcpEstablishedTimeout number
    Timeout (in seconds) for idle TCP connections in an established state. Min: 60 seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended: Less than 432000 seconds.
    udpStreamTimeout number
    Timeout (in seconds) for idle UDP flows classified as streams which have seen more than one request-response transaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180 seconds.
    udpTimeout number
    Timeout (in seconds) for idle UDP flows that have seen traffic only in a single direction or a single request-response transaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.
    tcp_established_timeout int
    Timeout (in seconds) for idle TCP connections in an established state. Min: 60 seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended: Less than 432000 seconds.
    udp_stream_timeout int
    Timeout (in seconds) for idle UDP flows classified as streams which have seen more than one request-response transaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180 seconds.
    udp_timeout int
    Timeout (in seconds) for idle UDP flows that have seen traffic only in a single direction or a single request-response transaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.
    tcpEstablishedTimeout Number
    Timeout (in seconds) for idle TCP connections in an established state. Min: 60 seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended: Less than 432000 seconds.
    udpStreamTimeout Number
    Timeout (in seconds) for idle UDP flows classified as streams which have seen more than one request-response transaction. Min: 60 seconds. Max: 180 seconds (3 minutes). Default: 180 seconds.
    udpTimeout Number
    Timeout (in seconds) for idle UDP flows that have seen traffic only in a single direction or a single request-response transaction. Min: 30 seconds. Max: 60 seconds. Default: 30 seconds.

    LaunchTemplateCpuOptions, LaunchTemplateCpuOptionsArgs

    AmdSevSnp Pulumi.AwsNative.Ec2.LaunchTemplateCpuOptionsAmdSevSnp
    Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported with M6a, R6a, and C6a instance types only. For more information, see AMD SEV-SNP.
    CoreCount int
    The number of CPU cores for the instance.
    ThreadsPerCore int
    The number of threads per CPU core. To disable multithreading for the instance, specify a value of 1. Otherwise, specify the default value of 2.
    AmdSevSnp LaunchTemplateCpuOptionsAmdSevSnp
    Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported with M6a, R6a, and C6a instance types only. For more information, see AMD SEV-SNP.
    CoreCount int
    The number of CPU cores for the instance.
    ThreadsPerCore int
    The number of threads per CPU core. To disable multithreading for the instance, specify a value of 1. Otherwise, specify the default value of 2.
    amdSevSnp LaunchTemplateCpuOptionsAmdSevSnp
    Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported with M6a, R6a, and C6a instance types only. For more information, see AMD SEV-SNP.
    coreCount Integer
    The number of CPU cores for the instance.
    threadsPerCore Integer
    The number of threads per CPU core. To disable multithreading for the instance, specify a value of 1. Otherwise, specify the default value of 2.
    amdSevSnp LaunchTemplateCpuOptionsAmdSevSnp
    Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported with M6a, R6a, and C6a instance types only. For more information, see AMD SEV-SNP.
    coreCount number
    The number of CPU cores for the instance.
    threadsPerCore number
    The number of threads per CPU core. To disable multithreading for the instance, specify a value of 1. Otherwise, specify the default value of 2.
    amd_sev_snp LaunchTemplateCpuOptionsAmdSevSnp
    Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported with M6a, R6a, and C6a instance types only. For more information, see AMD SEV-SNP.
    core_count int
    The number of CPU cores for the instance.
    threads_per_core int
    The number of threads per CPU core. To disable multithreading for the instance, specify a value of 1. Otherwise, specify the default value of 2.
    amdSevSnp "enabled" | "disabled"
    Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported with M6a, R6a, and C6a instance types only. For more information, see AMD SEV-SNP.
    coreCount Number
    The number of CPU cores for the instance.
    threadsPerCore Number
    The number of threads per CPU core. To disable multithreading for the instance, specify a value of 1. Otherwise, specify the default value of 2.

    LaunchTemplateCpuOptionsAmdSevSnp, LaunchTemplateCpuOptionsAmdSevSnpArgs

    Enabled
    enabled
    Disabled
    disabled
    LaunchTemplateCpuOptionsAmdSevSnpEnabled
    enabled
    LaunchTemplateCpuOptionsAmdSevSnpDisabled
    disabled
    Enabled
    enabled
    Disabled
    disabled
    Enabled
    enabled
    Disabled
    disabled
    ENABLED
    enabled
    DISABLED
    disabled
    "enabled"
    enabled
    "disabled"
    disabled

    LaunchTemplateCreditSpecification, LaunchTemplateCreditSpecificationArgs

    CpuCredits string
    The credit option for CPU usage of a T instance. Valid values: standard | unlimited
    CpuCredits string
    The credit option for CPU usage of a T instance. Valid values: standard | unlimited
    cpuCredits String
    The credit option for CPU usage of a T instance. Valid values: standard | unlimited
    cpuCredits string
    The credit option for CPU usage of a T instance. Valid values: standard | unlimited
    cpu_credits str
    The credit option for CPU usage of a T instance. Valid values: standard | unlimited
    cpuCredits String
    The credit option for CPU usage of a T instance. Valid values: standard | unlimited

    LaunchTemplateData, LaunchTemplateDataArgs

    BlockDeviceMappings List<Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateBlockDeviceMapping>
    The block device mapping.
    CapacityReservationSpecification Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateCapacityReservationSpecification
    The Capacity Reservation targeting option. If you do not specify this parameter, the instance's Capacity Reservation preference defaults to open, which enables it to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
    CpuOptions Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateCpuOptions
    The CPU options for the instance. For more information, see Optimize CPU options in the Amazon EC2 User Guide.
    CreditSpecification Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateCreditSpecification
    The credit option for CPU usage of the instance. Valid only for T instances.
    DisableApiStop bool
    Indicates whether to enable the instance for stop protection. For more information, see Enable stop protection for your instance in the Amazon EC2 User Guide.
    DisableApiTermination bool
    If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after launch, use ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance.
    EbsOptimized bool
    Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.
    ElasticGpuSpecifications List<Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateElasticGpuSpecification>
    Deprecated. Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, G4dn, or G5 instances.
    ElasticInferenceAccelerators List<Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateElasticInferenceAccelerator>
    An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads. You cannot specify accelerators from different generations in the same request. Starting April 15, 2023, AWS will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.
    EnclaveOptions Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateEnclaveOptions
    Indicates whether the instance is enabled for AWS Nitro Enclaves. For more information, see What is Nitro Enclaves? in the Nitro Enclaves User Guide. You can't enable AWS Nitro Enclaves and hibernation on the same instance.
    HibernationOptions Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateHibernationOptions
    Indicates whether an instance is enabled for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites. For more information, see Hibernate your Amazon EC2 instance in the Amazon EC2 User Guide.
    IamInstanceProfile Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateIamInstanceProfile
    The name or Amazon Resource Name (ARN) of an IAM instance profile.
    ImageId string

    The ID of the AMI. Alternatively, you can specify a Systems Manager parameter, which will resolve to an AMI ID on launch. Valid formats:

    • ami-0ac394d6a3example
    • resolve:ssm:parameter-name
    • resolve:ssm:parameter-name:version-number
    • resolve:ssm:parameter-name:label

    For more information, see Use a Systems Manager parameter to find an AMI in the Amazon Elastic Compute Cloud User Guide.

    InstanceInitiatedShutdownBehavior string
    Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). Default: stop
    InstanceMarketOptions Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateInstanceMarketOptions
    The market (purchasing) option for the instances.
    InstanceRequirements Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateInstanceRequirements

    The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes. You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default. When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values. To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

    • AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.
    • ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

    If you specify InstanceRequirements, you can't specify InstanceType. Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard, or with the RunInstances API or AWS::EC2::Instance AWS CloudFormation resource, you can't specify InstanceRequirements. For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

    InstanceType string
    The instance type. For more information, see Amazon EC2 instance types in the Amazon EC2 User Guide. If you specify InstanceType, you can't specify InstanceRequirements.
    KernelId string
    The ID of the kernel. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User Provided Kernels in the Amazon EC2 User Guide.
    KeyName string
    The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair. If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.
    LicenseSpecifications List<Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateLicenseSpecification>
    The license configurations.
    MaintenanceOptions Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateMaintenanceOptions
    The maintenance options of your instance.
    MetadataOptions Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateMetadataOptions
    The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon EC2 User Guide.
    Monitoring Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateMonitoring
    The monitoring for the instance.
    NetworkInterfaces List<Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateNetworkInterface>
    The network interfaces for the instance.
    Placement Pulumi.AwsNative.Ec2.Inputs.LaunchTemplatePlacement
    The placement for the instance.
    PrivateDnsNameOptions Pulumi.AwsNative.Ec2.Inputs.LaunchTemplatePrivateDnsNameOptions
    The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries should be handled. For more information, see Amazon EC2 instance hostname types in the User Guide.
    RamDiskId string
    The ID of the RAM disk. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User provided kernels in the Amazon EC2 User Guide.
    SecurityGroupIds List<string>
    The IDs of the security groups. You can specify the IDs of existing security groups and references to resources created by the stack template. If you specify a network interface, you must specify any security groups as part of the network interface instead.
    SecurityGroups List<string>
    The names of the security groups. For a nondefault VPC, you must use security group IDs instead. If you specify a network interface, you must specify any security groups as part of the network interface instead of using this parameter.
    TagSpecifications List<Pulumi.AwsNative.Ec2.Inputs.TagSpecification>
    The tags to apply to the resources that are created during instance launch. To tag a resource after it has been created, see CreateTags. To tag the launch template itself, use TagSpecifications.
    UserData string
    The user data to make available to the instance. You must provide base64-encoded text. User data is limited to 16 KB. For more information, see Run commands on your Amazon EC2 instance at launch in the Amazon EC2 User Guide. If you are creating the launch template for use with BATCH, the user data must be provided in the MIME multi-part archive format. For more information, see Amazon EC2 user data in launch templates in the User Guide.
    BlockDeviceMappings []LaunchTemplateBlockDeviceMapping
    The block device mapping.
    CapacityReservationSpecification LaunchTemplateCapacityReservationSpecification
    The Capacity Reservation targeting option. If you do not specify this parameter, the instance's Capacity Reservation preference defaults to open, which enables it to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
    CpuOptions LaunchTemplateCpuOptions
    The CPU options for the instance. For more information, see Optimize CPU options in the Amazon EC2 User Guide.
    CreditSpecification LaunchTemplateCreditSpecification
    The credit option for CPU usage of the instance. Valid only for T instances.
    DisableApiStop bool
    Indicates whether to enable the instance for stop protection. For more information, see Enable stop protection for your instance in the Amazon EC2 User Guide.
    DisableApiTermination bool
    If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after launch, use ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance.
    EbsOptimized bool
    Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.
    ElasticGpuSpecifications []LaunchTemplateElasticGpuSpecification
    Deprecated. Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, G4dn, or G5 instances.
    ElasticInferenceAccelerators []LaunchTemplateElasticInferenceAccelerator
    An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads. You cannot specify accelerators from different generations in the same request. Starting April 15, 2023, AWS will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.
    EnclaveOptions LaunchTemplateEnclaveOptions
    Indicates whether the instance is enabled for AWS Nitro Enclaves. For more information, see What is Nitro Enclaves? in the Nitro Enclaves User Guide. You can't enable AWS Nitro Enclaves and hibernation on the same instance.
    HibernationOptions LaunchTemplateHibernationOptions
    Indicates whether an instance is enabled for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites. For more information, see Hibernate your Amazon EC2 instance in the Amazon EC2 User Guide.
    IamInstanceProfile LaunchTemplateIamInstanceProfile
    The name or Amazon Resource Name (ARN) of an IAM instance profile.
    ImageId string

    The ID of the AMI. Alternatively, you can specify a Systems Manager parameter, which will resolve to an AMI ID on launch. Valid formats:

    • ami-0ac394d6a3example
    • resolve:ssm:parameter-name
    • resolve:ssm:parameter-name:version-number
    • resolve:ssm:parameter-name:label

    For more information, see Use a Systems Manager parameter to find an AMI in the Amazon Elastic Compute Cloud User Guide.

    InstanceInitiatedShutdownBehavior string
    Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). Default: stop
    InstanceMarketOptions LaunchTemplateInstanceMarketOptions
    The market (purchasing) option for the instances.
    InstanceRequirements LaunchTemplateInstanceRequirements

    The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes. You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default. When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values. To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

    • AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.
    • ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

    If you specify InstanceRequirements, you can't specify InstanceType. Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard, or with the RunInstances API or AWS::EC2::Instance AWS CloudFormation resource, you can't specify InstanceRequirements. For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

    InstanceType string
    The instance type. For more information, see Amazon EC2 instance types in the Amazon EC2 User Guide. If you specify InstanceType, you can't specify InstanceRequirements.
    KernelId string
    The ID of the kernel. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User Provided Kernels in the Amazon EC2 User Guide.
    KeyName string
    The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair. If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.
    LicenseSpecifications []LaunchTemplateLicenseSpecification
    The license configurations.
    MaintenanceOptions LaunchTemplateMaintenanceOptions
    The maintenance options of your instance.
    MetadataOptions LaunchTemplateMetadataOptions
    The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon EC2 User Guide.
    Monitoring LaunchTemplateMonitoring
    The monitoring for the instance.
    NetworkInterfaces []LaunchTemplateNetworkInterface
    The network interfaces for the instance.
    Placement LaunchTemplatePlacement
    The placement for the instance.
    PrivateDnsNameOptions LaunchTemplatePrivateDnsNameOptions
    The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries should be handled. For more information, see Amazon EC2 instance hostname types in the User Guide.
    RamDiskId string
    The ID of the RAM disk. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User provided kernels in the Amazon EC2 User Guide.
    SecurityGroupIds []string
    The IDs of the security groups. You can specify the IDs of existing security groups and references to resources created by the stack template. If you specify a network interface, you must specify any security groups as part of the network interface instead.
    SecurityGroups []string
    The names of the security groups. For a nondefault VPC, you must use security group IDs instead. If you specify a network interface, you must specify any security groups as part of the network interface instead of using this parameter.
    TagSpecifications []TagSpecification
    The tags to apply to the resources that are created during instance launch. To tag a resource after it has been created, see CreateTags. To tag the launch template itself, use TagSpecifications.
    UserData string
    The user data to make available to the instance. You must provide base64-encoded text. User data is limited to 16 KB. For more information, see Run commands on your Amazon EC2 instance at launch in the Amazon EC2 User Guide. If you are creating the launch template for use with BATCH, the user data must be provided in the MIME multi-part archive format. For more information, see Amazon EC2 user data in launch templates in the User Guide.
    blockDeviceMappings List<LaunchTemplateBlockDeviceMapping>
    The block device mapping.
    capacityReservationSpecification LaunchTemplateCapacityReservationSpecification
    The Capacity Reservation targeting option. If you do not specify this parameter, the instance's Capacity Reservation preference defaults to open, which enables it to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
    cpuOptions LaunchTemplateCpuOptions
    The CPU options for the instance. For more information, see Optimize CPU options in the Amazon EC2 User Guide.
    creditSpecification LaunchTemplateCreditSpecification
    The credit option for CPU usage of the instance. Valid only for T instances.
    disableApiStop Boolean
    Indicates whether to enable the instance for stop protection. For more information, see Enable stop protection for your instance in the Amazon EC2 User Guide.
    disableApiTermination Boolean
    If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after launch, use ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance.
    ebsOptimized Boolean
    Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.
    elasticGpuSpecifications List<LaunchTemplateElasticGpuSpecification>
    Deprecated. Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, G4dn, or G5 instances.
    elasticInferenceAccelerators List<LaunchTemplateElasticInferenceAccelerator>
    An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads. You cannot specify accelerators from different generations in the same request. Starting April 15, 2023, AWS will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.
    enclaveOptions LaunchTemplateEnclaveOptions
    Indicates whether the instance is enabled for AWS Nitro Enclaves. For more information, see What is Nitro Enclaves? in the Nitro Enclaves User Guide. You can't enable AWS Nitro Enclaves and hibernation on the same instance.
    hibernationOptions LaunchTemplateHibernationOptions
    Indicates whether an instance is enabled for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites. For more information, see Hibernate your Amazon EC2 instance in the Amazon EC2 User Guide.
    iamInstanceProfile LaunchTemplateIamInstanceProfile
    The name or Amazon Resource Name (ARN) of an IAM instance profile.
    imageId String

    The ID of the AMI. Alternatively, you can specify a Systems Manager parameter, which will resolve to an AMI ID on launch. Valid formats:

    • ami-0ac394d6a3example
    • resolve:ssm:parameter-name
    • resolve:ssm:parameter-name:version-number
    • resolve:ssm:parameter-name:label

    For more information, see Use a Systems Manager parameter to find an AMI in the Amazon Elastic Compute Cloud User Guide.

    instanceInitiatedShutdownBehavior String
    Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). Default: stop
    instanceMarketOptions LaunchTemplateInstanceMarketOptions
    The market (purchasing) option for the instances.
    instanceRequirements LaunchTemplateInstanceRequirements

    The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes. You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default. When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values. To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

    • AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.
    • ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

    If you specify InstanceRequirements, you can't specify InstanceType. Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard, or with the RunInstances API or AWS::EC2::Instance AWS CloudFormation resource, you can't specify InstanceRequirements. For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

    instanceType String
    The instance type. For more information, see Amazon EC2 instance types in the Amazon EC2 User Guide. If you specify InstanceType, you can't specify InstanceRequirements.
    kernelId String
    The ID of the kernel. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User Provided Kernels in the Amazon EC2 User Guide.
    keyName String
    The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair. If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.
    licenseSpecifications List<LaunchTemplateLicenseSpecification>
    The license configurations.
    maintenanceOptions LaunchTemplateMaintenanceOptions
    The maintenance options of your instance.
    metadataOptions LaunchTemplateMetadataOptions
    The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon EC2 User Guide.
    monitoring LaunchTemplateMonitoring
    The monitoring for the instance.
    networkInterfaces List<LaunchTemplateNetworkInterface>
    The network interfaces for the instance.
    placement LaunchTemplatePlacement
    The placement for the instance.
    privateDnsNameOptions LaunchTemplatePrivateDnsNameOptions
    The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries should be handled. For more information, see Amazon EC2 instance hostname types in the User Guide.
    ramDiskId String
    The ID of the RAM disk. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User provided kernels in the Amazon EC2 User Guide.
    securityGroupIds List<String>
    The IDs of the security groups. You can specify the IDs of existing security groups and references to resources created by the stack template. If you specify a network interface, you must specify any security groups as part of the network interface instead.
    securityGroups List<String>
    The names of the security groups. For a nondefault VPC, you must use security group IDs instead. If you specify a network interface, you must specify any security groups as part of the network interface instead of using this parameter.
    tagSpecifications List<TagSpecification>
    The tags to apply to the resources that are created during instance launch. To tag a resource after it has been created, see CreateTags. To tag the launch template itself, use TagSpecifications.
    userData String
    The user data to make available to the instance. You must provide base64-encoded text. User data is limited to 16 KB. For more information, see Run commands on your Amazon EC2 instance at launch in the Amazon EC2 User Guide. If you are creating the launch template for use with BATCH, the user data must be provided in the MIME multi-part archive format. For more information, see Amazon EC2 user data in launch templates in the User Guide.
    blockDeviceMappings LaunchTemplateBlockDeviceMapping[]
    The block device mapping.
    capacityReservationSpecification LaunchTemplateCapacityReservationSpecification
    The Capacity Reservation targeting option. If you do not specify this parameter, the instance's Capacity Reservation preference defaults to open, which enables it to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
    cpuOptions LaunchTemplateCpuOptions
    The CPU options for the instance. For more information, see Optimize CPU options in the Amazon EC2 User Guide.
    creditSpecification LaunchTemplateCreditSpecification
    The credit option for CPU usage of the instance. Valid only for T instances.
    disableApiStop boolean
    Indicates whether to enable the instance for stop protection. For more information, see Enable stop protection for your instance in the Amazon EC2 User Guide.
    disableApiTermination boolean
    If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after launch, use ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance.
    ebsOptimized boolean
    Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.
    elasticGpuSpecifications LaunchTemplateElasticGpuSpecification[]
    Deprecated. Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, G4dn, or G5 instances.
    elasticInferenceAccelerators LaunchTemplateElasticInferenceAccelerator[]
    An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads. You cannot specify accelerators from different generations in the same request. Starting April 15, 2023, AWS will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.
    enclaveOptions LaunchTemplateEnclaveOptions
    Indicates whether the instance is enabled for AWS Nitro Enclaves. For more information, see What is Nitro Enclaves? in the Nitro Enclaves User Guide. You can't enable AWS Nitro Enclaves and hibernation on the same instance.
    hibernationOptions LaunchTemplateHibernationOptions
    Indicates whether an instance is enabled for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites. For more information, see Hibernate your Amazon EC2 instance in the Amazon EC2 User Guide.
    iamInstanceProfile LaunchTemplateIamInstanceProfile
    The name or Amazon Resource Name (ARN) of an IAM instance profile.
    imageId string

    The ID of the AMI. Alternatively, you can specify a Systems Manager parameter, which will resolve to an AMI ID on launch. Valid formats:

    • ami-0ac394d6a3example
    • resolve:ssm:parameter-name
    • resolve:ssm:parameter-name:version-number
    • resolve:ssm:parameter-name:label

    For more information, see Use a Systems Manager parameter to find an AMI in the Amazon Elastic Compute Cloud User Guide.

    instanceInitiatedShutdownBehavior string
    Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). Default: stop
    instanceMarketOptions LaunchTemplateInstanceMarketOptions
    The market (purchasing) option for the instances.
    instanceRequirements LaunchTemplateInstanceRequirements

    The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes. You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default. When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values. To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

    • AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.
    • ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

    If you specify InstanceRequirements, you can't specify InstanceType. Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard, or with the RunInstances API or AWS::EC2::Instance AWS CloudFormation resource, you can't specify InstanceRequirements. For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

    instanceType string
    The instance type. For more information, see Amazon EC2 instance types in the Amazon EC2 User Guide. If you specify InstanceType, you can't specify InstanceRequirements.
    kernelId string
    The ID of the kernel. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User Provided Kernels in the Amazon EC2 User Guide.
    keyName string
    The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair. If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.
    licenseSpecifications LaunchTemplateLicenseSpecification[]
    The license configurations.
    maintenanceOptions LaunchTemplateMaintenanceOptions
    The maintenance options of your instance.
    metadataOptions LaunchTemplateMetadataOptions
    The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon EC2 User Guide.
    monitoring LaunchTemplateMonitoring
    The monitoring for the instance.
    networkInterfaces LaunchTemplateNetworkInterface[]
    The network interfaces for the instance.
    placement LaunchTemplatePlacement
    The placement for the instance.
    privateDnsNameOptions LaunchTemplatePrivateDnsNameOptions
    The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries should be handled. For more information, see Amazon EC2 instance hostname types in the User Guide.
    ramDiskId string
    The ID of the RAM disk. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User provided kernels in the Amazon EC2 User Guide.
    securityGroupIds string[]
    The IDs of the security groups. You can specify the IDs of existing security groups and references to resources created by the stack template. If you specify a network interface, you must specify any security groups as part of the network interface instead.
    securityGroups string[]
    The names of the security groups. For a nondefault VPC, you must use security group IDs instead. If you specify a network interface, you must specify any security groups as part of the network interface instead of using this parameter.
    tagSpecifications TagSpecification[]
    The tags to apply to the resources that are created during instance launch. To tag a resource after it has been created, see CreateTags. To tag the launch template itself, use TagSpecifications.
    userData string
    The user data to make available to the instance. You must provide base64-encoded text. User data is limited to 16 KB. For more information, see Run commands on your Amazon EC2 instance at launch in the Amazon EC2 User Guide. If you are creating the launch template for use with BATCH, the user data must be provided in the MIME multi-part archive format. For more information, see Amazon EC2 user data in launch templates in the User Guide.
    block_device_mappings Sequence[LaunchTemplateBlockDeviceMapping]
    The block device mapping.
    capacity_reservation_specification LaunchTemplateCapacityReservationSpecification
    The Capacity Reservation targeting option. If you do not specify this parameter, the instance's Capacity Reservation preference defaults to open, which enables it to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
    cpu_options LaunchTemplateCpuOptions
    The CPU options for the instance. For more information, see Optimize CPU options in the Amazon EC2 User Guide.
    credit_specification LaunchTemplateCreditSpecification
    The credit option for CPU usage of the instance. Valid only for T instances.
    disable_api_stop bool
    Indicates whether to enable the instance for stop protection. For more information, see Enable stop protection for your instance in the Amazon EC2 User Guide.
    disable_api_termination bool
    If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after launch, use ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance.
    ebs_optimized bool
    Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.
    elastic_gpu_specifications Sequence[LaunchTemplateElasticGpuSpecification]
    Deprecated. Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, G4dn, or G5 instances.
    elastic_inference_accelerators Sequence[LaunchTemplateElasticInferenceAccelerator]
    An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads. You cannot specify accelerators from different generations in the same request. Starting April 15, 2023, AWS will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.
    enclave_options LaunchTemplateEnclaveOptions
    Indicates whether the instance is enabled for AWS Nitro Enclaves. For more information, see What is Nitro Enclaves? in the Nitro Enclaves User Guide. You can't enable AWS Nitro Enclaves and hibernation on the same instance.
    hibernation_options LaunchTemplateHibernationOptions
    Indicates whether an instance is enabled for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites. For more information, see Hibernate your Amazon EC2 instance in the Amazon EC2 User Guide.
    iam_instance_profile LaunchTemplateIamInstanceProfile
    The name or Amazon Resource Name (ARN) of an IAM instance profile.
    image_id str

    The ID of the AMI. Alternatively, you can specify a Systems Manager parameter, which will resolve to an AMI ID on launch. Valid formats:

    • ami-0ac394d6a3example
    • resolve:ssm:parameter-name
    • resolve:ssm:parameter-name:version-number
    • resolve:ssm:parameter-name:label

    For more information, see Use a Systems Manager parameter to find an AMI in the Amazon Elastic Compute Cloud User Guide.

    instance_initiated_shutdown_behavior str
    Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). Default: stop
    instance_market_options LaunchTemplateInstanceMarketOptions
    The market (purchasing) option for the instances.
    instance_requirements LaunchTemplateInstanceRequirements

    The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes. You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default. When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values. To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

    • AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.
    • ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

    If you specify InstanceRequirements, you can't specify InstanceType. Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard, or with the RunInstances API or AWS::EC2::Instance AWS CloudFormation resource, you can't specify InstanceRequirements. For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

    instance_type str
    The instance type. For more information, see Amazon EC2 instance types in the Amazon EC2 User Guide. If you specify InstanceType, you can't specify InstanceRequirements.
    kernel_id str
    The ID of the kernel. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User Provided Kernels in the Amazon EC2 User Guide.
    key_name str
    The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair. If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.
    license_specifications Sequence[LaunchTemplateLicenseSpecification]
    The license configurations.
    maintenance_options LaunchTemplateMaintenanceOptions
    The maintenance options of your instance.
    metadata_options LaunchTemplateMetadataOptions
    The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon EC2 User Guide.
    monitoring LaunchTemplateMonitoring
    The monitoring for the instance.
    network_interfaces Sequence[LaunchTemplateNetworkInterface]
    The network interfaces for the instance.
    placement LaunchTemplatePlacement
    The placement for the instance.
    private_dns_name_options LaunchTemplatePrivateDnsNameOptions
    The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries should be handled. For more information, see Amazon EC2 instance hostname types in the User Guide.
    ram_disk_id str
    The ID of the RAM disk. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User provided kernels in the Amazon EC2 User Guide.
    security_group_ids Sequence[str]
    The IDs of the security groups. You can specify the IDs of existing security groups and references to resources created by the stack template. If you specify a network interface, you must specify any security groups as part of the network interface instead.
    security_groups Sequence[str]
    The names of the security groups. For a nondefault VPC, you must use security group IDs instead. If you specify a network interface, you must specify any security groups as part of the network interface instead of using this parameter.
    tag_specifications Sequence[TagSpecification]
    The tags to apply to the resources that are created during instance launch. To tag a resource after it has been created, see CreateTags. To tag the launch template itself, use TagSpecifications.
    user_data str
    The user data to make available to the instance. You must provide base64-encoded text. User data is limited to 16 KB. For more information, see Run commands on your Amazon EC2 instance at launch in the Amazon EC2 User Guide. If you are creating the launch template for use with BATCH, the user data must be provided in the MIME multi-part archive format. For more information, see Amazon EC2 user data in launch templates in the User Guide.
    blockDeviceMappings List<Property Map>
    The block device mapping.
    capacityReservationSpecification Property Map
    The Capacity Reservation targeting option. If you do not specify this parameter, the instance's Capacity Reservation preference defaults to open, which enables it to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
    cpuOptions Property Map
    The CPU options for the instance. For more information, see Optimize CPU options in the Amazon EC2 User Guide.
    creditSpecification Property Map
    The credit option for CPU usage of the instance. Valid only for T instances.
    disableApiStop Boolean
    Indicates whether to enable the instance for stop protection. For more information, see Enable stop protection for your instance in the Amazon EC2 User Guide.
    disableApiTermination Boolean
    If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after launch, use ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance.
    ebsOptimized Boolean
    Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.
    elasticGpuSpecifications List<Property Map>
    Deprecated. Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, G4dn, or G5 instances.
    elasticInferenceAccelerators List<Property Map>
    An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads. You cannot specify accelerators from different generations in the same request. Starting April 15, 2023, AWS will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.
    enclaveOptions Property Map
    Indicates whether the instance is enabled for AWS Nitro Enclaves. For more information, see What is Nitro Enclaves? in the Nitro Enclaves User Guide. You can't enable AWS Nitro Enclaves and hibernation on the same instance.
    hibernationOptions Property Map
    Indicates whether an instance is enabled for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites. For more information, see Hibernate your Amazon EC2 instance in the Amazon EC2 User Guide.
    iamInstanceProfile Property Map
    The name or Amazon Resource Name (ARN) of an IAM instance profile.
    imageId String

    The ID of the AMI. Alternatively, you can specify a Systems Manager parameter, which will resolve to an AMI ID on launch. Valid formats:

    • ami-0ac394d6a3example
    • resolve:ssm:parameter-name
    • resolve:ssm:parameter-name:version-number
    • resolve:ssm:parameter-name:label

    For more information, see Use a Systems Manager parameter to find an AMI in the Amazon Elastic Compute Cloud User Guide.

    instanceInitiatedShutdownBehavior String
    Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). Default: stop
    instanceMarketOptions Property Map
    The market (purchasing) option for the instances.
    instanceRequirements Property Map

    The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes. You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default. When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values. To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

    • AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.
    • ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

    If you specify InstanceRequirements, you can't specify InstanceType. Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard, or with the RunInstances API or AWS::EC2::Instance AWS CloudFormation resource, you can't specify InstanceRequirements. For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

    instanceType String
    The instance type. For more information, see Amazon EC2 instance types in the Amazon EC2 User Guide. If you specify InstanceType, you can't specify InstanceRequirements.
    kernelId String
    The ID of the kernel. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User Provided Kernels in the Amazon EC2 User Guide.
    keyName String
    The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair. If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.
    licenseSpecifications List<Property Map>
    The license configurations.
    maintenanceOptions Property Map
    The maintenance options of your instance.
    metadataOptions Property Map
    The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon EC2 User Guide.
    monitoring Property Map
    The monitoring for the instance.
    networkInterfaces List<Property Map>
    The network interfaces for the instance.
    placement Property Map
    The placement for the instance.
    privateDnsNameOptions Property Map
    The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries should be handled. For more information, see Amazon EC2 instance hostname types in the User Guide.
    ramDiskId String
    The ID of the RAM disk. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User provided kernels in the Amazon EC2 User Guide.
    securityGroupIds List<String>
    The IDs of the security groups. You can specify the IDs of existing security groups and references to resources created by the stack template. If you specify a network interface, you must specify any security groups as part of the network interface instead.
    securityGroups List<String>
    The names of the security groups. For a nondefault VPC, you must use security group IDs instead. If you specify a network interface, you must specify any security groups as part of the network interface instead of using this parameter.
    tagSpecifications List<Property Map>
    The tags to apply to the resources that are created during instance launch. To tag a resource after it has been created, see CreateTags. To tag the launch template itself, use TagSpecifications.
    userData String
    The user data to make available to the instance. You must provide base64-encoded text. User data is limited to 16 KB. For more information, see Run commands on your Amazon EC2 instance at launch in the Amazon EC2 User Guide. If you are creating the launch template for use with BATCH, the user data must be provided in the MIME multi-part archive format. For more information, see Amazon EC2 user data in launch templates in the User Guide.

    LaunchTemplateEbs, LaunchTemplateEbsArgs

    DeleteOnTermination bool
    Indicates whether the EBS volume is deleted on instance termination.
    Encrypted bool
    Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached to instances that support Amazon EBS encryption. If you are creating a volume from a snapshot, you can't specify an encryption value.
    Iops int

    The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. The following are the supported values for each volume type:

    • gp3: 3,000 - 16,000 IOPS
    • io1: 100 - 64,000 IOPS
    • io2: 100 - 256,000 IOPS

    For io2 volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS. This parameter is supported for io1, io2, and gp3 volumes only.

    KmsKeyId string
    The ARN of the symmetric KMSlong (KMS) CMK used for encryption.
    SnapshotId string
    The ID of the snapshot.
    Throughput int
    The throughput to provision for a gp3 volume, with a maximum of 1,000 MiB/s. Valid Range: Minimum value of 125. Maximum value of 1000.
    VolumeSize int
    The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. The following are the supported volumes sizes for each volume type:

    • gp2 and gp3: 1 - 16,384 GiB
    • io1: 4 - 16,384 GiB
    • io2: 4 - 65,536 GiB
    • st1 and sc1: 125 - 16,384 GiB
    • standard: 1 - 1024 GiB
    VolumeType string
    The volume type. For more information, see Amazon EBS volume types in the Amazon EBS User Guide.
    DeleteOnTermination bool
    Indicates whether the EBS volume is deleted on instance termination.
    Encrypted bool
    Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached to instances that support Amazon EBS encryption. If you are creating a volume from a snapshot, you can't specify an encryption value.
    Iops int

    The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. The following are the supported values for each volume type:

    • gp3: 3,000 - 16,000 IOPS
    • io1: 100 - 64,000 IOPS
    • io2: 100 - 256,000 IOPS

    For io2 volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS. This parameter is supported for io1, io2, and gp3 volumes only.

    KmsKeyId string
    The ARN of the symmetric KMSlong (KMS) CMK used for encryption.
    SnapshotId string
    The ID of the snapshot.
    Throughput int
    The throughput to provision for a gp3 volume, with a maximum of 1,000 MiB/s. Valid Range: Minimum value of 125. Maximum value of 1000.
    VolumeSize int
    The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. The following are the supported volumes sizes for each volume type:

    • gp2 and gp3: 1 - 16,384 GiB
    • io1: 4 - 16,384 GiB
    • io2: 4 - 65,536 GiB
    • st1 and sc1: 125 - 16,384 GiB
    • standard: 1 - 1024 GiB
    VolumeType string
    The volume type. For more information, see Amazon EBS volume types in the Amazon EBS User Guide.
    deleteOnTermination Boolean
    Indicates whether the EBS volume is deleted on instance termination.
    encrypted Boolean
    Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached to instances that support Amazon EBS encryption. If you are creating a volume from a snapshot, you can't specify an encryption value.
    iops Integer

    The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. The following are the supported values for each volume type:

    • gp3: 3,000 - 16,000 IOPS
    • io1: 100 - 64,000 IOPS
    • io2: 100 - 256,000 IOPS

    For io2 volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS. This parameter is supported for io1, io2, and gp3 volumes only.

    kmsKeyId String
    The ARN of the symmetric KMSlong (KMS) CMK used for encryption.
    snapshotId String
    The ID of the snapshot.
    throughput Integer
    The throughput to provision for a gp3 volume, with a maximum of 1,000 MiB/s. Valid Range: Minimum value of 125. Maximum value of 1000.
    volumeSize Integer
    The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. The following are the supported volumes sizes for each volume type:

    • gp2 and gp3: 1 - 16,384 GiB
    • io1: 4 - 16,384 GiB
    • io2: 4 - 65,536 GiB
    • st1 and sc1: 125 - 16,384 GiB
    • standard: 1 - 1024 GiB
    volumeType String
    The volume type. For more information, see Amazon EBS volume types in the Amazon EBS User Guide.
    deleteOnTermination boolean
    Indicates whether the EBS volume is deleted on instance termination.
    encrypted boolean
    Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached to instances that support Amazon EBS encryption. If you are creating a volume from a snapshot, you can't specify an encryption value.
    iops number

    The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. The following are the supported values for each volume type:

    • gp3: 3,000 - 16,000 IOPS
    • io1: 100 - 64,000 IOPS
    • io2: 100 - 256,000 IOPS

    For io2 volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS. This parameter is supported for io1, io2, and gp3 volumes only.

    kmsKeyId string
    The ARN of the symmetric KMSlong (KMS) CMK used for encryption.
    snapshotId string
    The ID of the snapshot.
    throughput number
    The throughput to provision for a gp3 volume, with a maximum of 1,000 MiB/s. Valid Range: Minimum value of 125. Maximum value of 1000.
    volumeSize number
    The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. The following are the supported volumes sizes for each volume type:

    • gp2 and gp3: 1 - 16,384 GiB
    • io1: 4 - 16,384 GiB
    • io2: 4 - 65,536 GiB
    • st1 and sc1: 125 - 16,384 GiB
    • standard: 1 - 1024 GiB
    volumeType string
    The volume type. For more information, see Amazon EBS volume types in the Amazon EBS User Guide.
    delete_on_termination bool
    Indicates whether the EBS volume is deleted on instance termination.
    encrypted bool
    Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached to instances that support Amazon EBS encryption. If you are creating a volume from a snapshot, you can't specify an encryption value.
    iops int

    The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. The following are the supported values for each volume type:

    • gp3: 3,000 - 16,000 IOPS
    • io1: 100 - 64,000 IOPS
    • io2: 100 - 256,000 IOPS

    For io2 volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS. This parameter is supported for io1, io2, and gp3 volumes only.

    kms_key_id str
    The ARN of the symmetric KMSlong (KMS) CMK used for encryption.
    snapshot_id str
    The ID of the snapshot.
    throughput int
    The throughput to provision for a gp3 volume, with a maximum of 1,000 MiB/s. Valid Range: Minimum value of 125. Maximum value of 1000.
    volume_size int
    The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. The following are the supported volumes sizes for each volume type:

    • gp2 and gp3: 1 - 16,384 GiB
    • io1: 4 - 16,384 GiB
    • io2: 4 - 65,536 GiB
    • st1 and sc1: 125 - 16,384 GiB
    • standard: 1 - 1024 GiB
    volume_type str
    The volume type. For more information, see Amazon EBS volume types in the Amazon EBS User Guide.
    deleteOnTermination Boolean
    Indicates whether the EBS volume is deleted on instance termination.
    encrypted Boolean
    Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached to instances that support Amazon EBS encryption. If you are creating a volume from a snapshot, you can't specify an encryption value.
    iops Number

    The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. The following are the supported values for each volume type:

    • gp3: 3,000 - 16,000 IOPS
    • io1: 100 - 64,000 IOPS
    • io2: 100 - 256,000 IOPS

    For io2 volumes, you can achieve up to 256,000 IOPS on instances built on the Nitro System. On other instances, you can achieve performance up to 32,000 IOPS. This parameter is supported for io1, io2, and gp3 volumes only.

    kmsKeyId String
    The ARN of the symmetric KMSlong (KMS) CMK used for encryption.
    snapshotId String
    The ID of the snapshot.
    throughput Number
    The throughput to provision for a gp3 volume, with a maximum of 1,000 MiB/s. Valid Range: Minimum value of 125. Maximum value of 1000.
    volumeSize Number
    The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. The following are the supported volumes sizes for each volume type:

    • gp2 and gp3: 1 - 16,384 GiB
    • io1: 4 - 16,384 GiB
    • io2: 4 - 65,536 GiB
    • st1 and sc1: 125 - 16,384 GiB
    • standard: 1 - 1024 GiB
    volumeType String
    The volume type. For more information, see Amazon EBS volume types in the Amazon EBS User Guide.

    LaunchTemplateElasticGpuSpecification, LaunchTemplateElasticGpuSpecificationArgs

    Type string
    The type of Elastic Graphics accelerator.
    Type string
    The type of Elastic Graphics accelerator.
    type String
    The type of Elastic Graphics accelerator.
    type string
    The type of Elastic Graphics accelerator.
    type str
    The type of Elastic Graphics accelerator.
    type String
    The type of Elastic Graphics accelerator.

    LaunchTemplateElasticInferenceAccelerator, LaunchTemplateElasticInferenceAcceleratorArgs

    Count int
    The number of elastic inference accelerators to attach to the instance. Default: 1
    Type string
    The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.
    Count int
    The number of elastic inference accelerators to attach to the instance. Default: 1
    Type string
    The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.
    count Integer
    The number of elastic inference accelerators to attach to the instance. Default: 1
    type String
    The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.
    count number
    The number of elastic inference accelerators to attach to the instance. Default: 1
    type string
    The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.
    count int
    The number of elastic inference accelerators to attach to the instance. Default: 1
    type str
    The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.
    count Number
    The number of elastic inference accelerators to attach to the instance. Default: 1
    type String
    The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.

    LaunchTemplateEnaSrdSpecification, LaunchTemplateEnaSrdSpecificationArgs

    EnaSrdEnabled bool
    Indicates whether ENA Express is enabled for the network interface.
    EnaSrdUdpSpecification Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateEnaSrdUdpSpecification
    Configures ENA Express for UDP network traffic.
    EnaSrdEnabled bool
    Indicates whether ENA Express is enabled for the network interface.
    EnaSrdUdpSpecification LaunchTemplateEnaSrdUdpSpecification
    Configures ENA Express for UDP network traffic.
    enaSrdEnabled Boolean
    Indicates whether ENA Express is enabled for the network interface.
    enaSrdUdpSpecification LaunchTemplateEnaSrdUdpSpecification
    Configures ENA Express for UDP network traffic.
    enaSrdEnabled boolean
    Indicates whether ENA Express is enabled for the network interface.
    enaSrdUdpSpecification LaunchTemplateEnaSrdUdpSpecification
    Configures ENA Express for UDP network traffic.
    ena_srd_enabled bool
    Indicates whether ENA Express is enabled for the network interface.
    ena_srd_udp_specification LaunchTemplateEnaSrdUdpSpecification
    Configures ENA Express for UDP network traffic.
    enaSrdEnabled Boolean
    Indicates whether ENA Express is enabled for the network interface.
    enaSrdUdpSpecification Property Map
    Configures ENA Express for UDP network traffic.

    LaunchTemplateEnaSrdUdpSpecification, LaunchTemplateEnaSrdUdpSpecificationArgs

    EnaSrdUdpEnabled bool
    Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, you must first enable ENA Express.
    EnaSrdUdpEnabled bool
    Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, you must first enable ENA Express.
    enaSrdUdpEnabled Boolean
    Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, you must first enable ENA Express.
    enaSrdUdpEnabled boolean
    Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, you must first enable ENA Express.
    ena_srd_udp_enabled bool
    Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, you must first enable ENA Express.
    enaSrdUdpEnabled Boolean
    Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, you must first enable ENA Express.

    LaunchTemplateEnclaveOptions, LaunchTemplateEnclaveOptionsArgs

    Enabled bool
    If this parameter is set to true, the instance is enabled for AWS Nitro Enclaves; otherwise, it is not enabled for AWS Nitro Enclaves.
    Enabled bool
    If this parameter is set to true, the instance is enabled for AWS Nitro Enclaves; otherwise, it is not enabled for AWS Nitro Enclaves.
    enabled Boolean
    If this parameter is set to true, the instance is enabled for AWS Nitro Enclaves; otherwise, it is not enabled for AWS Nitro Enclaves.
    enabled boolean
    If this parameter is set to true, the instance is enabled for AWS Nitro Enclaves; otherwise, it is not enabled for AWS Nitro Enclaves.
    enabled bool
    If this parameter is set to true, the instance is enabled for AWS Nitro Enclaves; otherwise, it is not enabled for AWS Nitro Enclaves.
    enabled Boolean
    If this parameter is set to true, the instance is enabled for AWS Nitro Enclaves; otherwise, it is not enabled for AWS Nitro Enclaves.

    LaunchTemplateHibernationOptions, LaunchTemplateHibernationOptionsArgs

    Configured bool
    If you set this parameter to true, the instance is enabled for hibernation. Default: false
    Configured bool
    If you set this parameter to true, the instance is enabled for hibernation. Default: false
    configured Boolean
    If you set this parameter to true, the instance is enabled for hibernation. Default: false
    configured boolean
    If you set this parameter to true, the instance is enabled for hibernation. Default: false
    configured bool
    If you set this parameter to true, the instance is enabled for hibernation. Default: false
    configured Boolean
    If you set this parameter to true, the instance is enabled for hibernation. Default: false

    LaunchTemplateIamInstanceProfile, LaunchTemplateIamInstanceProfileArgs

    Arn string
    The Amazon Resource Name (ARN) of the instance profile.
    Name string
    The name of the instance profile.
    Arn string
    The Amazon Resource Name (ARN) of the instance profile.
    Name string
    The name of the instance profile.
    arn String
    The Amazon Resource Name (ARN) of the instance profile.
    name String
    The name of the instance profile.
    arn string
    The Amazon Resource Name (ARN) of the instance profile.
    name string
    The name of the instance profile.
    arn str
    The Amazon Resource Name (ARN) of the instance profile.
    name str
    The name of the instance profile.
    arn String
    The Amazon Resource Name (ARN) of the instance profile.
    name String
    The name of the instance profile.

    LaunchTemplateInstanceMarketOptions, LaunchTemplateInstanceMarketOptionsArgs

    MarketType string
    The market type.
    SpotOptions Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateSpotOptions
    The options for Spot Instances.
    MarketType string
    The market type.
    SpotOptions LaunchTemplateSpotOptions
    The options for Spot Instances.
    marketType String
    The market type.
    spotOptions LaunchTemplateSpotOptions
    The options for Spot Instances.
    marketType string
    The market type.
    spotOptions LaunchTemplateSpotOptions
    The options for Spot Instances.
    market_type str
    The market type.
    spot_options LaunchTemplateSpotOptions
    The options for Spot Instances.
    marketType String
    The market type.
    spotOptions Property Map
    The options for Spot Instances.

    LaunchTemplateInstanceRequirements, LaunchTemplateInstanceRequirementsArgs

    AcceleratorCount Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateAcceleratorCount
    The minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips) on an instance. To exclude accelerator-enabled instance types, set Max to 0. Default: No minimum or maximum limits
    AcceleratorManufacturers List<string>

    Indicates whether instance types must have accelerators by specific manufacturers.

    • For instance types with AWS devices, specify amazon-web-services.
    • For instance types with AMD devices, specify amd.
    • For instance types with Habana devices, specify habana.
    • For instance types with NVIDIA devices, specify nvidia.
    • For instance types with Xilinx devices, specify xilinx.

    Default: Any manufacturer

    AcceleratorNames List<string>

    The accelerators that must be on the instance type.

    • For instance types with NVIDIA A10G GPUs, specify a10g.
    • For instance types with NVIDIA A100 GPUs, specify a100.
    • For instance types with NVIDIA H100 GPUs, specify h100.
    • For instance types with AWS Inferentia chips, specify inferentia.
    • For instance types with NVIDIA GRID K520 GPUs, specify k520.
    • For instance types with NVIDIA K80 GPUs, specify k80.
    • For instance types with NVIDIA M60 GPUs, specify m60.
    • For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520.
    • For instance types with NVIDIA T4 GPUs, specify t4.
    • For instance types with NVIDIA T4G GPUs, specify t4g.
    • For instance types with Xilinx VU9P FPGAs, specify vu9p.
    • For instance types with NVIDIA V100 GPUs, specify v100.

    Default: Any accelerator

    AcceleratorTotalMemoryMiB Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateAcceleratorTotalMemoryMiB
    The minimum and maximum amount of total accelerator memory, in MiB. Default: No minimum or maximum limits
    AcceleratorTypes List<string>

    The accelerator types that must be on the instance type.

    • For instance types with GPU accelerators, specify gpu.
    • For instance types with FPGA accelerators, specify fpga.
    • For instance types with inference accelerators, specify inference.

    Default: Any accelerator type

    AllowedInstanceTypes List<string>
    The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk (*), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*,Amazon EC2 will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will allow all the M5a instance types, but not the M5n instance types. If you specify AllowedInstanceTypes, you can't specify ExcludedInstanceTypes. Default: All instance types
    BareMetal string

    Indicates whether bare metal instance types must be included, excluded, or required.

    • To include bare metal instance types, specify included.
    • To require only bare metal instance types, specify required.
    • To exclude bare metal instance types, specify excluded.

    Default: excluded

    BaselineEbsBandwidthMbps Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateBaselineEbsBandwidthMbps
    The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS–optimized instances in the Amazon EC2 User Guide. Default: No minimum or maximum limits
    BurstablePerformance string

    Indicates whether burstable performance T instance types are included, excluded, or required. For more information, see Burstable performance instances.

    • To include burstable performance instance types, specify included.
    • To require only burstable performance instance types, specify required.
    • To exclude burstable performance instance types, specify excluded.

    Default: excluded

    CpuManufacturers List<string>

    The CPU manufacturers to include.

    • For instance types with Intel CPUs, specify intel.
    • For instance types with AMD CPUs, specify amd.
    • For instance types with AWS CPUs, specify amazon-web-services.

    Don't confuse the CPU manufacturer with the CPU architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template. Default: Any manufacturer

    ExcludedInstanceTypes List<string>
    The instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (*), to exclude an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*,Amazon EC2 will exclude the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will exclude all the M5a instance types, but not the M5n instance types. If you specify ExcludedInstanceTypes, you can't specify AllowedInstanceTypes. Default: No excluded instance types
    InstanceGenerations List<string>
    Indicates whether current or previous generation instance types are included. The current generation instance types are recommended for use. Current generation instance types are typically the latest two to three generations in each instance family. For more information, see Instance types in the Amazon EC2 User Guide. For current generation instance types, specify current. For previous generation instance types, specify previous. Default: Current and previous generation instance types
    LocalStorage string

    Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, Amazon EC2 instance store in the Amazon EC2 User Guide.

    • To include instance types with instance store volumes, specify included.
    • To require only instance types with instance store volumes, specify required.
    • To exclude instance types with instance store volumes, specify excluded.

    Default: included

    LocalStorageTypes List<string>

    The type of local storage that is required.

    • For instance types with hard disk drive (HDD) storage, specify hdd.
    • For instance types with solid state drive (SSD) storage, specify ssd.

    Default: hdd and ssd

    MaxSpotPriceAsPercentageOfOptimalOnDemandPrice int
    [Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is based on the per vCPU or per memory price instead of the per instance price. Only one of SpotMaxPricePercentageOverLowestPrice or MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as 999999.
    MemoryGiBPerVCpu Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateMemoryGiBPerVCpu
    The minimum and maximum amount of memory per vCPU, in GiB. Default: No minimum or maximum limits
    MemoryMiB Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateMemoryMiB
    The minimum and maximum amount of memory, in MiB.
    NetworkBandwidthGbps Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateNetworkBandwidthGbps
    The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps). Default: No minimum or maximum limits
    NetworkInterfaceCount Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateNetworkInterfaceCount
    The minimum and maximum number of network interfaces. Default: No minimum or maximum limits
    OnDemandMaxPricePercentageOverLowestPrice int
    [Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To turn off price protection, specify a high value, such as 999999. This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: 20
    RequireHibernateSupport bool
    Indicates whether instance types must support hibernation for On-Demand Instances. This parameter is not supported for GetSpotPlacementScores. Default: false
    SpotMaxPricePercentageOverLowestPrice int
    [Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements. Only one of SpotMaxPricePercentageOverLowestPrice or MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as 999999. Default: 100
    TotalLocalStorageGb Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateTotalLocalStorageGb
    The minimum and maximum amount of total local storage, in GB. Default: No minimum or maximum limits
    VCpuCount Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateVCpuCount
    The minimum and maximum number of vCPUs.
    AcceleratorCount LaunchTemplateAcceleratorCount
    The minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips) on an instance. To exclude accelerator-enabled instance types, set Max to 0. Default: No minimum or maximum limits
    AcceleratorManufacturers []string

    Indicates whether instance types must have accelerators by specific manufacturers.

    • For instance types with AWS devices, specify amazon-web-services.
    • For instance types with AMD devices, specify amd.
    • For instance types with Habana devices, specify habana.
    • For instance types with NVIDIA devices, specify nvidia.
    • For instance types with Xilinx devices, specify xilinx.

    Default: Any manufacturer

    AcceleratorNames []string

    The accelerators that must be on the instance type.

    • For instance types with NVIDIA A10G GPUs, specify a10g.
    • For instance types with NVIDIA A100 GPUs, specify a100.
    • For instance types with NVIDIA H100 GPUs, specify h100.
    • For instance types with AWS Inferentia chips, specify inferentia.
    • For instance types with NVIDIA GRID K520 GPUs, specify k520.
    • For instance types with NVIDIA K80 GPUs, specify k80.
    • For instance types with NVIDIA M60 GPUs, specify m60.
    • For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520.
    • For instance types with NVIDIA T4 GPUs, specify t4.
    • For instance types with NVIDIA T4G GPUs, specify t4g.
    • For instance types with Xilinx VU9P FPGAs, specify vu9p.
    • For instance types with NVIDIA V100 GPUs, specify v100.

    Default: Any accelerator

    AcceleratorTotalMemoryMiB LaunchTemplateAcceleratorTotalMemoryMiB
    The minimum and maximum amount of total accelerator memory, in MiB. Default: No minimum or maximum limits
    AcceleratorTypes []string

    The accelerator types that must be on the instance type.

    • For instance types with GPU accelerators, specify gpu.
    • For instance types with FPGA accelerators, specify fpga.
    • For instance types with inference accelerators, specify inference.

    Default: Any accelerator type

    AllowedInstanceTypes []string
    The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk (*), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*,Amazon EC2 will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will allow all the M5a instance types, but not the M5n instance types. If you specify AllowedInstanceTypes, you can't specify ExcludedInstanceTypes. Default: All instance types
    BareMetal string

    Indicates whether bare metal instance types must be included, excluded, or required.

    • To include bare metal instance types, specify included.
    • To require only bare metal instance types, specify required.
    • To exclude bare metal instance types, specify excluded.

    Default: excluded

    BaselineEbsBandwidthMbps LaunchTemplateBaselineEbsBandwidthMbps
    The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS–optimized instances in the Amazon EC2 User Guide. Default: No minimum or maximum limits
    BurstablePerformance string

    Indicates whether burstable performance T instance types are included, excluded, or required. For more information, see Burstable performance instances.

    • To include burstable performance instance types, specify included.
    • To require only burstable performance instance types, specify required.
    • To exclude burstable performance instance types, specify excluded.

    Default: excluded

    CpuManufacturers []string

    The CPU manufacturers to include.

    • For instance types with Intel CPUs, specify intel.
    • For instance types with AMD CPUs, specify amd.
    • For instance types with AWS CPUs, specify amazon-web-services.

    Don't confuse the CPU manufacturer with the CPU architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template. Default: Any manufacturer

    ExcludedInstanceTypes []string
    The instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (*), to exclude an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*,Amazon EC2 will exclude the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will exclude all the M5a instance types, but not the M5n instance types. If you specify ExcludedInstanceTypes, you can't specify AllowedInstanceTypes. Default: No excluded instance types
    InstanceGenerations []string
    Indicates whether current or previous generation instance types are included. The current generation instance types are recommended for use. Current generation instance types are typically the latest two to three generations in each instance family. For more information, see Instance types in the Amazon EC2 User Guide. For current generation instance types, specify current. For previous generation instance types, specify previous. Default: Current and previous generation instance types
    LocalStorage string

    Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, Amazon EC2 instance store in the Amazon EC2 User Guide.

    • To include instance types with instance store volumes, specify included.
    • To require only instance types with instance store volumes, specify required.
    • To exclude instance types with instance store volumes, specify excluded.

    Default: included

    LocalStorageTypes []string

    The type of local storage that is required.

    • For instance types with hard disk drive (HDD) storage, specify hdd.
    • For instance types with solid state drive (SSD) storage, specify ssd.

    Default: hdd and ssd

    MaxSpotPriceAsPercentageOfOptimalOnDemandPrice int
    [Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is based on the per vCPU or per memory price instead of the per instance price. Only one of SpotMaxPricePercentageOverLowestPrice or MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as 999999.
    MemoryGiBPerVCpu LaunchTemplateMemoryGiBPerVCpu
    The minimum and maximum amount of memory per vCPU, in GiB. Default: No minimum or maximum limits
    MemoryMiB LaunchTemplateMemoryMiB
    The minimum and maximum amount of memory, in MiB.
    NetworkBandwidthGbps LaunchTemplateNetworkBandwidthGbps
    The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps). Default: No minimum or maximum limits
    NetworkInterfaceCount LaunchTemplateNetworkInterfaceCount
    The minimum and maximum number of network interfaces. Default: No minimum or maximum limits
    OnDemandMaxPricePercentageOverLowestPrice int
    [Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To turn off price protection, specify a high value, such as 999999. This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: 20
    RequireHibernateSupport bool
    Indicates whether instance types must support hibernation for On-Demand Instances. This parameter is not supported for GetSpotPlacementScores. Default: false
    SpotMaxPricePercentageOverLowestPrice int
    [Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements. Only one of SpotMaxPricePercentageOverLowestPrice or MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as 999999. Default: 100
    TotalLocalStorageGb LaunchTemplateTotalLocalStorageGb
    The minimum and maximum amount of total local storage, in GB. Default: No minimum or maximum limits
    VCpuCount LaunchTemplateVCpuCount
    The minimum and maximum number of vCPUs.
    acceleratorCount LaunchTemplateAcceleratorCount
    The minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips) on an instance. To exclude accelerator-enabled instance types, set Max to 0. Default: No minimum or maximum limits
    acceleratorManufacturers List<String>

    Indicates whether instance types must have accelerators by specific manufacturers.

    • For instance types with AWS devices, specify amazon-web-services.
    • For instance types with AMD devices, specify amd.
    • For instance types with Habana devices, specify habana.
    • For instance types with NVIDIA devices, specify nvidia.
    • For instance types with Xilinx devices, specify xilinx.

    Default: Any manufacturer

    acceleratorNames List<String>

    The accelerators that must be on the instance type.

    • For instance types with NVIDIA A10G GPUs, specify a10g.
    • For instance types with NVIDIA A100 GPUs, specify a100.
    • For instance types with NVIDIA H100 GPUs, specify h100.
    • For instance types with AWS Inferentia chips, specify inferentia.
    • For instance types with NVIDIA GRID K520 GPUs, specify k520.
    • For instance types with NVIDIA K80 GPUs, specify k80.
    • For instance types with NVIDIA M60 GPUs, specify m60.
    • For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520.
    • For instance types with NVIDIA T4 GPUs, specify t4.
    • For instance types with NVIDIA T4G GPUs, specify t4g.
    • For instance types with Xilinx VU9P FPGAs, specify vu9p.
    • For instance types with NVIDIA V100 GPUs, specify v100.

    Default: Any accelerator

    acceleratorTotalMemoryMiB LaunchTemplateAcceleratorTotalMemoryMiB
    The minimum and maximum amount of total accelerator memory, in MiB. Default: No minimum or maximum limits
    acceleratorTypes List<String>

    The accelerator types that must be on the instance type.

    • For instance types with GPU accelerators, specify gpu.
    • For instance types with FPGA accelerators, specify fpga.
    • For instance types with inference accelerators, specify inference.

    Default: Any accelerator type

    allowedInstanceTypes List<String>
    The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk (*), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*,Amazon EC2 will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will allow all the M5a instance types, but not the M5n instance types. If you specify AllowedInstanceTypes, you can't specify ExcludedInstanceTypes. Default: All instance types
    bareMetal String

    Indicates whether bare metal instance types must be included, excluded, or required.

    • To include bare metal instance types, specify included.
    • To require only bare metal instance types, specify required.
    • To exclude bare metal instance types, specify excluded.

    Default: excluded

    baselineEbsBandwidthMbps LaunchTemplateBaselineEbsBandwidthMbps
    The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS–optimized instances in the Amazon EC2 User Guide. Default: No minimum or maximum limits
    burstablePerformance String

    Indicates whether burstable performance T instance types are included, excluded, or required. For more information, see Burstable performance instances.

    • To include burstable performance instance types, specify included.
    • To require only burstable performance instance types, specify required.
    • To exclude burstable performance instance types, specify excluded.

    Default: excluded

    cpuManufacturers List<String>

    The CPU manufacturers to include.

    • For instance types with Intel CPUs, specify intel.
    • For instance types with AMD CPUs, specify amd.
    • For instance types with AWS CPUs, specify amazon-web-services.

    Don't confuse the CPU manufacturer with the CPU architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template. Default: Any manufacturer

    excludedInstanceTypes List<String>
    The instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (*), to exclude an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*,Amazon EC2 will exclude the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will exclude all the M5a instance types, but not the M5n instance types. If you specify ExcludedInstanceTypes, you can't specify AllowedInstanceTypes. Default: No excluded instance types
    instanceGenerations List<String>
    Indicates whether current or previous generation instance types are included. The current generation instance types are recommended for use. Current generation instance types are typically the latest two to three generations in each instance family. For more information, see Instance types in the Amazon EC2 User Guide. For current generation instance types, specify current. For previous generation instance types, specify previous. Default: Current and previous generation instance types
    localStorage String

    Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, Amazon EC2 instance store in the Amazon EC2 User Guide.

    • To include instance types with instance store volumes, specify included.
    • To require only instance types with instance store volumes, specify required.
    • To exclude instance types with instance store volumes, specify excluded.

    Default: included

    localStorageTypes List<String>

    The type of local storage that is required.

    • For instance types with hard disk drive (HDD) storage, specify hdd.
    • For instance types with solid state drive (SSD) storage, specify ssd.

    Default: hdd and ssd

    maxSpotPriceAsPercentageOfOptimalOnDemandPrice Integer
    [Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is based on the per vCPU or per memory price instead of the per instance price. Only one of SpotMaxPricePercentageOverLowestPrice or MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as 999999.
    memoryGiBPerVCpu LaunchTemplateMemoryGiBPerVCpu
    The minimum and maximum amount of memory per vCPU, in GiB. Default: No minimum or maximum limits
    memoryMiB LaunchTemplateMemoryMiB
    The minimum and maximum amount of memory, in MiB.
    networkBandwidthGbps LaunchTemplateNetworkBandwidthGbps
    The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps). Default: No minimum or maximum limits
    networkInterfaceCount LaunchTemplateNetworkInterfaceCount
    The minimum and maximum number of network interfaces. Default: No minimum or maximum limits
    onDemandMaxPricePercentageOverLowestPrice Integer
    [Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To turn off price protection, specify a high value, such as 999999. This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: 20
    requireHibernateSupport Boolean
    Indicates whether instance types must support hibernation for On-Demand Instances. This parameter is not supported for GetSpotPlacementScores. Default: false
    spotMaxPricePercentageOverLowestPrice Integer
    [Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements. Only one of SpotMaxPricePercentageOverLowestPrice or MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as 999999. Default: 100
    totalLocalStorageGb LaunchTemplateTotalLocalStorageGb
    The minimum and maximum amount of total local storage, in GB. Default: No minimum or maximum limits
    vCpuCount LaunchTemplateVCpuCount
    The minimum and maximum number of vCPUs.
    acceleratorCount LaunchTemplateAcceleratorCount
    The minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips) on an instance. To exclude accelerator-enabled instance types, set Max to 0. Default: No minimum or maximum limits
    acceleratorManufacturers string[]

    Indicates whether instance types must have accelerators by specific manufacturers.

    • For instance types with AWS devices, specify amazon-web-services.
    • For instance types with AMD devices, specify amd.
    • For instance types with Habana devices, specify habana.
    • For instance types with NVIDIA devices, specify nvidia.
    • For instance types with Xilinx devices, specify xilinx.

    Default: Any manufacturer

    acceleratorNames string[]

    The accelerators that must be on the instance type.

    • For instance types with NVIDIA A10G GPUs, specify a10g.
    • For instance types with NVIDIA A100 GPUs, specify a100.
    • For instance types with NVIDIA H100 GPUs, specify h100.
    • For instance types with AWS Inferentia chips, specify inferentia.
    • For instance types with NVIDIA GRID K520 GPUs, specify k520.
    • For instance types with NVIDIA K80 GPUs, specify k80.
    • For instance types with NVIDIA M60 GPUs, specify m60.
    • For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520.
    • For instance types with NVIDIA T4 GPUs, specify t4.
    • For instance types with NVIDIA T4G GPUs, specify t4g.
    • For instance types with Xilinx VU9P FPGAs, specify vu9p.
    • For instance types with NVIDIA V100 GPUs, specify v100.

    Default: Any accelerator

    acceleratorTotalMemoryMiB LaunchTemplateAcceleratorTotalMemoryMiB
    The minimum and maximum amount of total accelerator memory, in MiB. Default: No minimum or maximum limits
    acceleratorTypes string[]

    The accelerator types that must be on the instance type.

    • For instance types with GPU accelerators, specify gpu.
    • For instance types with FPGA accelerators, specify fpga.
    • For instance types with inference accelerators, specify inference.

    Default: Any accelerator type

    allowedInstanceTypes string[]
    The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk (*), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*,Amazon EC2 will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will allow all the M5a instance types, but not the M5n instance types. If you specify AllowedInstanceTypes, you can't specify ExcludedInstanceTypes. Default: All instance types
    bareMetal string

    Indicates whether bare metal instance types must be included, excluded, or required.

    • To include bare metal instance types, specify included.
    • To require only bare metal instance types, specify required.
    • To exclude bare metal instance types, specify excluded.

    Default: excluded

    baselineEbsBandwidthMbps LaunchTemplateBaselineEbsBandwidthMbps
    The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS–optimized instances in the Amazon EC2 User Guide. Default: No minimum or maximum limits
    burstablePerformance string

    Indicates whether burstable performance T instance types are included, excluded, or required. For more information, see Burstable performance instances.

    • To include burstable performance instance types, specify included.
    • To require only burstable performance instance types, specify required.
    • To exclude burstable performance instance types, specify excluded.

    Default: excluded

    cpuManufacturers string[]

    The CPU manufacturers to include.

    • For instance types with Intel CPUs, specify intel.
    • For instance types with AMD CPUs, specify amd.
    • For instance types with AWS CPUs, specify amazon-web-services.

    Don't confuse the CPU manufacturer with the CPU architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template. Default: Any manufacturer

    excludedInstanceTypes string[]
    The instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (*), to exclude an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*,Amazon EC2 will exclude the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will exclude all the M5a instance types, but not the M5n instance types. If you specify ExcludedInstanceTypes, you can't specify AllowedInstanceTypes. Default: No excluded instance types
    instanceGenerations string[]
    Indicates whether current or previous generation instance types are included. The current generation instance types are recommended for use. Current generation instance types are typically the latest two to three generations in each instance family. For more information, see Instance types in the Amazon EC2 User Guide. For current generation instance types, specify current. For previous generation instance types, specify previous. Default: Current and previous generation instance types
    localStorage string

    Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, Amazon EC2 instance store in the Amazon EC2 User Guide.

    • To include instance types with instance store volumes, specify included.
    • To require only instance types with instance store volumes, specify required.
    • To exclude instance types with instance store volumes, specify excluded.

    Default: included

    localStorageTypes string[]

    The type of local storage that is required.

    • For instance types with hard disk drive (HDD) storage, specify hdd.
    • For instance types with solid state drive (SSD) storage, specify ssd.

    Default: hdd and ssd

    maxSpotPriceAsPercentageOfOptimalOnDemandPrice number
    [Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is based on the per vCPU or per memory price instead of the per instance price. Only one of SpotMaxPricePercentageOverLowestPrice or MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as 999999.
    memoryGiBPerVCpu LaunchTemplateMemoryGiBPerVCpu
    The minimum and maximum amount of memory per vCPU, in GiB. Default: No minimum or maximum limits
    memoryMiB LaunchTemplateMemoryMiB
    The minimum and maximum amount of memory, in MiB.
    networkBandwidthGbps LaunchTemplateNetworkBandwidthGbps
    The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps). Default: No minimum or maximum limits
    networkInterfaceCount LaunchTemplateNetworkInterfaceCount
    The minimum and maximum number of network interfaces. Default: No minimum or maximum limits
    onDemandMaxPricePercentageOverLowestPrice number
    [Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To turn off price protection, specify a high value, such as 999999. This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: 20
    requireHibernateSupport boolean
    Indicates whether instance types must support hibernation for On-Demand Instances. This parameter is not supported for GetSpotPlacementScores. Default: false
    spotMaxPricePercentageOverLowestPrice number
    [Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements. Only one of SpotMaxPricePercentageOverLowestPrice or MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as 999999. Default: 100
    totalLocalStorageGb LaunchTemplateTotalLocalStorageGb
    The minimum and maximum amount of total local storage, in GB. Default: No minimum or maximum limits
    vCpuCount LaunchTemplateVCpuCount
    The minimum and maximum number of vCPUs.
    accelerator_count LaunchTemplateAcceleratorCount
    The minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips) on an instance. To exclude accelerator-enabled instance types, set Max to 0. Default: No minimum or maximum limits
    accelerator_manufacturers Sequence[str]

    Indicates whether instance types must have accelerators by specific manufacturers.

    • For instance types with AWS devices, specify amazon-web-services.
    • For instance types with AMD devices, specify amd.
    • For instance types with Habana devices, specify habana.
    • For instance types with NVIDIA devices, specify nvidia.
    • For instance types with Xilinx devices, specify xilinx.

    Default: Any manufacturer

    accelerator_names Sequence[str]

    The accelerators that must be on the instance type.

    • For instance types with NVIDIA A10G GPUs, specify a10g.
    • For instance types with NVIDIA A100 GPUs, specify a100.
    • For instance types with NVIDIA H100 GPUs, specify h100.
    • For instance types with AWS Inferentia chips, specify inferentia.
    • For instance types with NVIDIA GRID K520 GPUs, specify k520.
    • For instance types with NVIDIA K80 GPUs, specify k80.
    • For instance types with NVIDIA M60 GPUs, specify m60.
    • For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520.
    • For instance types with NVIDIA T4 GPUs, specify t4.
    • For instance types with NVIDIA T4G GPUs, specify t4g.
    • For instance types with Xilinx VU9P FPGAs, specify vu9p.
    • For instance types with NVIDIA V100 GPUs, specify v100.

    Default: Any accelerator

    accelerator_total_memory_mi_b LaunchTemplateAcceleratorTotalMemoryMiB
    The minimum and maximum amount of total accelerator memory, in MiB. Default: No minimum or maximum limits
    accelerator_types Sequence[str]

    The accelerator types that must be on the instance type.

    • For instance types with GPU accelerators, specify gpu.
    • For instance types with FPGA accelerators, specify fpga.
    • For instance types with inference accelerators, specify inference.

    Default: Any accelerator type

    allowed_instance_types Sequence[str]
    The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk (*), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*,Amazon EC2 will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will allow all the M5a instance types, but not the M5n instance types. If you specify AllowedInstanceTypes, you can't specify ExcludedInstanceTypes. Default: All instance types
    bare_metal str

    Indicates whether bare metal instance types must be included, excluded, or required.

    • To include bare metal instance types, specify included.
    • To require only bare metal instance types, specify required.
    • To exclude bare metal instance types, specify excluded.

    Default: excluded

    baseline_ebs_bandwidth_mbps LaunchTemplateBaselineEbsBandwidthMbps
    The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS–optimized instances in the Amazon EC2 User Guide. Default: No minimum or maximum limits
    burstable_performance str

    Indicates whether burstable performance T instance types are included, excluded, or required. For more information, see Burstable performance instances.

    • To include burstable performance instance types, specify included.
    • To require only burstable performance instance types, specify required.
    • To exclude burstable performance instance types, specify excluded.

    Default: excluded

    cpu_manufacturers Sequence[str]

    The CPU manufacturers to include.

    • For instance types with Intel CPUs, specify intel.
    • For instance types with AMD CPUs, specify amd.
    • For instance types with AWS CPUs, specify amazon-web-services.

    Don't confuse the CPU manufacturer with the CPU architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template. Default: Any manufacturer

    excluded_instance_types Sequence[str]
    The instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (*), to exclude an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*,Amazon EC2 will exclude the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will exclude all the M5a instance types, but not the M5n instance types. If you specify ExcludedInstanceTypes, you can't specify AllowedInstanceTypes. Default: No excluded instance types
    instance_generations Sequence[str]
    Indicates whether current or previous generation instance types are included. The current generation instance types are recommended for use. Current generation instance types are typically the latest two to three generations in each instance family. For more information, see Instance types in the Amazon EC2 User Guide. For current generation instance types, specify current. For previous generation instance types, specify previous. Default: Current and previous generation instance types
    local_storage str

    Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, Amazon EC2 instance store in the Amazon EC2 User Guide.

    • To include instance types with instance store volumes, specify included.
    • To require only instance types with instance store volumes, specify required.
    • To exclude instance types with instance store volumes, specify excluded.

    Default: included

    local_storage_types Sequence[str]

    The type of local storage that is required.

    • For instance types with hard disk drive (HDD) storage, specify hdd.
    • For instance types with solid state drive (SSD) storage, specify ssd.

    Default: hdd and ssd

    max_spot_price_as_percentage_of_optimal_on_demand_price int
    [Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is based on the per vCPU or per memory price instead of the per instance price. Only one of SpotMaxPricePercentageOverLowestPrice or MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as 999999.
    memory_gi_b_per_v_cpu LaunchTemplateMemoryGiBPerVCpu
    The minimum and maximum amount of memory per vCPU, in GiB. Default: No minimum or maximum limits
    memory_mi_b LaunchTemplateMemoryMiB
    The minimum and maximum amount of memory, in MiB.
    network_bandwidth_gbps LaunchTemplateNetworkBandwidthGbps
    The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps). Default: No minimum or maximum limits
    network_interface_count LaunchTemplateNetworkInterfaceCount
    The minimum and maximum number of network interfaces. Default: No minimum or maximum limits
    on_demand_max_price_percentage_over_lowest_price int
    [Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To turn off price protection, specify a high value, such as 999999. This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: 20
    require_hibernate_support bool
    Indicates whether instance types must support hibernation for On-Demand Instances. This parameter is not supported for GetSpotPlacementScores. Default: false
    spot_max_price_percentage_over_lowest_price int
    [Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements. Only one of SpotMaxPricePercentageOverLowestPrice or MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as 999999. Default: 100
    total_local_storage_gb LaunchTemplateTotalLocalStorageGb
    The minimum and maximum amount of total local storage, in GB. Default: No minimum or maximum limits
    v_cpu_count LaunchTemplateVCpuCount
    The minimum and maximum number of vCPUs.
    acceleratorCount Property Map
    The minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips) on an instance. To exclude accelerator-enabled instance types, set Max to 0. Default: No minimum or maximum limits
    acceleratorManufacturers List<String>

    Indicates whether instance types must have accelerators by specific manufacturers.

    • For instance types with AWS devices, specify amazon-web-services.
    • For instance types with AMD devices, specify amd.
    • For instance types with Habana devices, specify habana.
    • For instance types with NVIDIA devices, specify nvidia.
    • For instance types with Xilinx devices, specify xilinx.

    Default: Any manufacturer

    acceleratorNames List<String>

    The accelerators that must be on the instance type.

    • For instance types with NVIDIA A10G GPUs, specify a10g.
    • For instance types with NVIDIA A100 GPUs, specify a100.
    • For instance types with NVIDIA H100 GPUs, specify h100.
    • For instance types with AWS Inferentia chips, specify inferentia.
    • For instance types with NVIDIA GRID K520 GPUs, specify k520.
    • For instance types with NVIDIA K80 GPUs, specify k80.
    • For instance types with NVIDIA M60 GPUs, specify m60.
    • For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520.
    • For instance types with NVIDIA T4 GPUs, specify t4.
    • For instance types with NVIDIA T4G GPUs, specify t4g.
    • For instance types with Xilinx VU9P FPGAs, specify vu9p.
    • For instance types with NVIDIA V100 GPUs, specify v100.

    Default: Any accelerator

    acceleratorTotalMemoryMiB Property Map
    The minimum and maximum amount of total accelerator memory, in MiB. Default: No minimum or maximum limits
    acceleratorTypes List<String>

    The accelerator types that must be on the instance type.

    • For instance types with GPU accelerators, specify gpu.
    • For instance types with FPGA accelerators, specify fpga.
    • For instance types with inference accelerators, specify inference.

    Default: Any accelerator type

    allowedInstanceTypes List<String>
    The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk (*), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*,Amazon EC2 will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will allow all the M5a instance types, but not the M5n instance types. If you specify AllowedInstanceTypes, you can't specify ExcludedInstanceTypes. Default: All instance types
    bareMetal String

    Indicates whether bare metal instance types must be included, excluded, or required.

    • To include bare metal instance types, specify included.
    • To require only bare metal instance types, specify required.
    • To exclude bare metal instance types, specify excluded.

    Default: excluded

    baselineEbsBandwidthMbps Property Map
    The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS–optimized instances in the Amazon EC2 User Guide. Default: No minimum or maximum limits
    burstablePerformance String

    Indicates whether burstable performance T instance types are included, excluded, or required. For more information, see Burstable performance instances.

    • To include burstable performance instance types, specify included.
    • To require only burstable performance instance types, specify required.
    • To exclude burstable performance instance types, specify excluded.

    Default: excluded

    cpuManufacturers List<String>

    The CPU manufacturers to include.

    • For instance types with Intel CPUs, specify intel.
    • For instance types with AMD CPUs, specify amd.
    • For instance types with AWS CPUs, specify amazon-web-services.

    Don't confuse the CPU manufacturer with the CPU architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template. Default: Any manufacturer

    excludedInstanceTypes List<String>
    The instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (*), to exclude an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*,Amazon EC2 will exclude the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will exclude all the M5a instance types, but not the M5n instance types. If you specify ExcludedInstanceTypes, you can't specify AllowedInstanceTypes. Default: No excluded instance types
    instanceGenerations List<String>
    Indicates whether current or previous generation instance types are included. The current generation instance types are recommended for use. Current generation instance types are typically the latest two to three generations in each instance family. For more information, see Instance types in the Amazon EC2 User Guide. For current generation instance types, specify current. For previous generation instance types, specify previous. Default: Current and previous generation instance types
    localStorage String

    Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, Amazon EC2 instance store in the Amazon EC2 User Guide.

    • To include instance types with instance store volumes, specify included.
    • To require only instance types with instance store volumes, specify required.
    • To exclude instance types with instance store volumes, specify excluded.

    Default: included

    localStorageTypes List<String>

    The type of local storage that is required.

    • For instance types with hard disk drive (HDD) storage, specify hdd.
    • For instance types with solid state drive (SSD) storage, specify ssd.

    Default: hdd and ssd

    maxSpotPriceAsPercentageOfOptimalOnDemandPrice Number
    [Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is based on the per vCPU or per memory price instead of the per instance price. Only one of SpotMaxPricePercentageOverLowestPrice or MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as 999999.
    memoryGiBPerVCpu Property Map
    The minimum and maximum amount of memory per vCPU, in GiB. Default: No minimum or maximum limits
    memoryMiB Property Map
    The minimum and maximum amount of memory, in MiB.
    networkBandwidthGbps Property Map
    The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps). Default: No minimum or maximum limits
    networkInterfaceCount Property Map
    The minimum and maximum number of network interfaces. Default: No minimum or maximum limits
    onDemandMaxPricePercentageOverLowestPrice Number
    [Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To turn off price protection, specify a high value, such as 999999. This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: 20
    requireHibernateSupport Boolean
    Indicates whether instance types must support hibernation for On-Demand Instances. This parameter is not supported for GetSpotPlacementScores. Default: false
    spotMaxPricePercentageOverLowestPrice Number
    [Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements. Only one of SpotMaxPricePercentageOverLowestPrice or MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't specify either, Amazon EC2 will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as 999999. Default: 100
    totalLocalStorageGb Property Map
    The minimum and maximum amount of total local storage, in GB. Default: No minimum or maximum limits
    vCpuCount Property Map
    The minimum and maximum number of vCPUs.

    LaunchTemplateIpv4PrefixSpecification, LaunchTemplateIpv4PrefixSpecificationArgs

    Ipv4Prefix string
    The IPv4 prefix. For information, see Assigning prefixes to network interfaces in the Amazon EC2 User Guide.
    Ipv4Prefix string
    The IPv4 prefix. For information, see Assigning prefixes to network interfaces in the Amazon EC2 User Guide.
    ipv4Prefix String
    The IPv4 prefix. For information, see Assigning prefixes to network interfaces in the Amazon EC2 User Guide.
    ipv4Prefix string
    The IPv4 prefix. For information, see Assigning prefixes to network interfaces in the Amazon EC2 User Guide.
    ipv4_prefix str
    The IPv4 prefix. For information, see Assigning prefixes to network interfaces in the Amazon EC2 User Guide.
    ipv4Prefix String
    The IPv4 prefix. For information, see Assigning prefixes to network interfaces in the Amazon EC2 User Guide.

    LaunchTemplateIpv6Add, LaunchTemplateIpv6AddArgs

    Ipv6Address string
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.
    Ipv6Address string
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.
    ipv6Address String
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.
    ipv6Address string
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.
    ipv6_address str
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.
    ipv6Address String
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.

    LaunchTemplateIpv6PrefixSpecification, LaunchTemplateIpv6PrefixSpecificationArgs

    Ipv6Prefix string
    The IPv6 prefix.
    Ipv6Prefix string
    The IPv6 prefix.
    ipv6Prefix String
    The IPv6 prefix.
    ipv6Prefix string
    The IPv6 prefix.
    ipv6_prefix str
    The IPv6 prefix.
    ipv6Prefix String
    The IPv6 prefix.

    LaunchTemplateLicenseSpecification, LaunchTemplateLicenseSpecificationArgs

    LicenseConfigurationArn string
    The Amazon Resource Name (ARN) of the license configuration.
    LicenseConfigurationArn string
    The Amazon Resource Name (ARN) of the license configuration.
    licenseConfigurationArn String
    The Amazon Resource Name (ARN) of the license configuration.
    licenseConfigurationArn string
    The Amazon Resource Name (ARN) of the license configuration.
    license_configuration_arn str
    The Amazon Resource Name (ARN) of the license configuration.
    licenseConfigurationArn String
    The Amazon Resource Name (ARN) of the license configuration.

    LaunchTemplateMaintenanceOptions, LaunchTemplateMaintenanceOptionsArgs

    AutoRecovery string
    Disables the automatic recovery behavior of your instance or sets it to default.
    AutoRecovery string
    Disables the automatic recovery behavior of your instance or sets it to default.
    autoRecovery String
    Disables the automatic recovery behavior of your instance or sets it to default.
    autoRecovery string
    Disables the automatic recovery behavior of your instance or sets it to default.
    auto_recovery str
    Disables the automatic recovery behavior of your instance or sets it to default.
    autoRecovery String
    Disables the automatic recovery behavior of your instance or sets it to default.

    LaunchTemplateMemoryGiBPerVCpu, LaunchTemplateMemoryGiBPerVCpuArgs

    Max double
    The maximum amount of memory per vCPU, in GiB. To specify no maximum limit, omit this parameter.
    Min double
    The minimum amount of memory per vCPU, in GiB. To specify no minimum limit, omit this parameter.
    Max float64
    The maximum amount of memory per vCPU, in GiB. To specify no maximum limit, omit this parameter.
    Min float64
    The minimum amount of memory per vCPU, in GiB. To specify no minimum limit, omit this parameter.
    max Double
    The maximum amount of memory per vCPU, in GiB. To specify no maximum limit, omit this parameter.
    min Double
    The minimum amount of memory per vCPU, in GiB. To specify no minimum limit, omit this parameter.
    max number
    The maximum amount of memory per vCPU, in GiB. To specify no maximum limit, omit this parameter.
    min number
    The minimum amount of memory per vCPU, in GiB. To specify no minimum limit, omit this parameter.
    max float
    The maximum amount of memory per vCPU, in GiB. To specify no maximum limit, omit this parameter.
    min float
    The minimum amount of memory per vCPU, in GiB. To specify no minimum limit, omit this parameter.
    max Number
    The maximum amount of memory per vCPU, in GiB. To specify no maximum limit, omit this parameter.
    min Number
    The minimum amount of memory per vCPU, in GiB. To specify no minimum limit, omit this parameter.

    LaunchTemplateMemoryMiB, LaunchTemplateMemoryMiBArgs

    Max int
    The maximum amount of memory, in MiB. To specify no maximum limit, omit this parameter.
    Min int
    The minimum amount of memory, in MiB. To specify no minimum limit, specify 0.
    Max int
    The maximum amount of memory, in MiB. To specify no maximum limit, omit this parameter.
    Min int
    The minimum amount of memory, in MiB. To specify no minimum limit, specify 0.
    max Integer
    The maximum amount of memory, in MiB. To specify no maximum limit, omit this parameter.
    min Integer
    The minimum amount of memory, in MiB. To specify no minimum limit, specify 0.
    max number
    The maximum amount of memory, in MiB. To specify no maximum limit, omit this parameter.
    min number
    The minimum amount of memory, in MiB. To specify no minimum limit, specify 0.
    max int
    The maximum amount of memory, in MiB. To specify no maximum limit, omit this parameter.
    min int
    The minimum amount of memory, in MiB. To specify no minimum limit, specify 0.
    max Number
    The maximum amount of memory, in MiB. To specify no maximum limit, omit this parameter.
    min Number
    The minimum amount of memory, in MiB. To specify no minimum limit, specify 0.

    LaunchTemplateMetadataOptions, LaunchTemplateMetadataOptionsArgs

    HttpEndpoint string
    Enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled. If you specify a value of disabled, you will not be able to access your instance metadata.
    HttpProtocolIpv6 string
    Enables or disables the IPv6 endpoint for the instance metadata service. Default: disabled
    HttpPutResponseHopLimit int
    The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Default: 1 Possible values: Integers from 1 to 64
    HttpTokens string

    Indicates whether IMDSv2 is required.

    • optional - IMDSv2 is optional. You can choose whether to send a session token in your instance metadata retrieval requests. If you retrieve IAM role credentials without a session token, you receive the IMDSv1 role credentials. If you retrieve IAM role credentials using a valid session token, you receive the IMDSv2 role credentials.
    • required - IMDSv2 is required. You must send a session token in your instance metadata retrieval requests. With this option, retrieving the IAM role credentials always returns IMDSv2 credentials; IMDSv1 credentials are not available.

    Default: If the value of ImdsSupport for the Amazon Machine Image (AMI) for your instance is v2.0, the default is required.

    InstanceMetadataTags string
    Set to enabled to allow access to instance tags from the instance metadata. Set to disabled to turn off access to instance tags from the instance metadata. For more information, see Work with instance tags using the instance metadata. Default: disabled
    HttpEndpoint string
    Enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled. If you specify a value of disabled, you will not be able to access your instance metadata.
    HttpProtocolIpv6 string
    Enables or disables the IPv6 endpoint for the instance metadata service. Default: disabled
    HttpPutResponseHopLimit int
    The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Default: 1 Possible values: Integers from 1 to 64
    HttpTokens string

    Indicates whether IMDSv2 is required.

    • optional - IMDSv2 is optional. You can choose whether to send a session token in your instance metadata retrieval requests. If you retrieve IAM role credentials without a session token, you receive the IMDSv1 role credentials. If you retrieve IAM role credentials using a valid session token, you receive the IMDSv2 role credentials.
    • required - IMDSv2 is required. You must send a session token in your instance metadata retrieval requests. With this option, retrieving the IAM role credentials always returns IMDSv2 credentials; IMDSv1 credentials are not available.

    Default: If the value of ImdsSupport for the Amazon Machine Image (AMI) for your instance is v2.0, the default is required.

    InstanceMetadataTags string
    Set to enabled to allow access to instance tags from the instance metadata. Set to disabled to turn off access to instance tags from the instance metadata. For more information, see Work with instance tags using the instance metadata. Default: disabled
    httpEndpoint String
    Enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled. If you specify a value of disabled, you will not be able to access your instance metadata.
    httpProtocolIpv6 String
    Enables or disables the IPv6 endpoint for the instance metadata service. Default: disabled
    httpPutResponseHopLimit Integer
    The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Default: 1 Possible values: Integers from 1 to 64
    httpTokens String

    Indicates whether IMDSv2 is required.

    • optional - IMDSv2 is optional. You can choose whether to send a session token in your instance metadata retrieval requests. If you retrieve IAM role credentials without a session token, you receive the IMDSv1 role credentials. If you retrieve IAM role credentials using a valid session token, you receive the IMDSv2 role credentials.
    • required - IMDSv2 is required. You must send a session token in your instance metadata retrieval requests. With this option, retrieving the IAM role credentials always returns IMDSv2 credentials; IMDSv1 credentials are not available.

    Default: If the value of ImdsSupport for the Amazon Machine Image (AMI) for your instance is v2.0, the default is required.

    instanceMetadataTags String
    Set to enabled to allow access to instance tags from the instance metadata. Set to disabled to turn off access to instance tags from the instance metadata. For more information, see Work with instance tags using the instance metadata. Default: disabled
    httpEndpoint string
    Enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled. If you specify a value of disabled, you will not be able to access your instance metadata.
    httpProtocolIpv6 string
    Enables or disables the IPv6 endpoint for the instance metadata service. Default: disabled
    httpPutResponseHopLimit number
    The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Default: 1 Possible values: Integers from 1 to 64
    httpTokens string

    Indicates whether IMDSv2 is required.

    • optional - IMDSv2 is optional. You can choose whether to send a session token in your instance metadata retrieval requests. If you retrieve IAM role credentials without a session token, you receive the IMDSv1 role credentials. If you retrieve IAM role credentials using a valid session token, you receive the IMDSv2 role credentials.
    • required - IMDSv2 is required. You must send a session token in your instance metadata retrieval requests. With this option, retrieving the IAM role credentials always returns IMDSv2 credentials; IMDSv1 credentials are not available.

    Default: If the value of ImdsSupport for the Amazon Machine Image (AMI) for your instance is v2.0, the default is required.

    instanceMetadataTags string
    Set to enabled to allow access to instance tags from the instance metadata. Set to disabled to turn off access to instance tags from the instance metadata. For more information, see Work with instance tags using the instance metadata. Default: disabled
    http_endpoint str
    Enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled. If you specify a value of disabled, you will not be able to access your instance metadata.
    http_protocol_ipv6 str
    Enables or disables the IPv6 endpoint for the instance metadata service. Default: disabled
    http_put_response_hop_limit int
    The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Default: 1 Possible values: Integers from 1 to 64
    http_tokens str

    Indicates whether IMDSv2 is required.

    • optional - IMDSv2 is optional. You can choose whether to send a session token in your instance metadata retrieval requests. If you retrieve IAM role credentials without a session token, you receive the IMDSv1 role credentials. If you retrieve IAM role credentials using a valid session token, you receive the IMDSv2 role credentials.
    • required - IMDSv2 is required. You must send a session token in your instance metadata retrieval requests. With this option, retrieving the IAM role credentials always returns IMDSv2 credentials; IMDSv1 credentials are not available.

    Default: If the value of ImdsSupport for the Amazon Machine Image (AMI) for your instance is v2.0, the default is required.

    instance_metadata_tags str
    Set to enabled to allow access to instance tags from the instance metadata. Set to disabled to turn off access to instance tags from the instance metadata. For more information, see Work with instance tags using the instance metadata. Default: disabled
    httpEndpoint String
    Enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled. If you specify a value of disabled, you will not be able to access your instance metadata.
    httpProtocolIpv6 String
    Enables or disables the IPv6 endpoint for the instance metadata service. Default: disabled
    httpPutResponseHopLimit Number
    The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Default: 1 Possible values: Integers from 1 to 64
    httpTokens String

    Indicates whether IMDSv2 is required.

    • optional - IMDSv2 is optional. You can choose whether to send a session token in your instance metadata retrieval requests. If you retrieve IAM role credentials without a session token, you receive the IMDSv1 role credentials. If you retrieve IAM role credentials using a valid session token, you receive the IMDSv2 role credentials.
    • required - IMDSv2 is required. You must send a session token in your instance metadata retrieval requests. With this option, retrieving the IAM role credentials always returns IMDSv2 credentials; IMDSv1 credentials are not available.

    Default: If the value of ImdsSupport for the Amazon Machine Image (AMI) for your instance is v2.0, the default is required.

    instanceMetadataTags String
    Set to enabled to allow access to instance tags from the instance metadata. Set to disabled to turn off access to instance tags from the instance metadata. For more information, see Work with instance tags using the instance metadata. Default: disabled

    LaunchTemplateMonitoring, LaunchTemplateMonitoringArgs

    Enabled bool
    Specify true to enable detailed monitoring. Otherwise, basic monitoring is enabled.
    Enabled bool
    Specify true to enable detailed monitoring. Otherwise, basic monitoring is enabled.
    enabled Boolean
    Specify true to enable detailed monitoring. Otherwise, basic monitoring is enabled.
    enabled boolean
    Specify true to enable detailed monitoring. Otherwise, basic monitoring is enabled.
    enabled bool
    Specify true to enable detailed monitoring. Otherwise, basic monitoring is enabled.
    enabled Boolean
    Specify true to enable detailed monitoring. Otherwise, basic monitoring is enabled.

    LaunchTemplateNetworkBandwidthGbps, LaunchTemplateNetworkBandwidthGbpsArgs

    Max double
    The maximum amount of network bandwidth, in Gbps. To specify no maximum limit, omit this parameter.
    Min double
    The minimum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no minimum limit.
    Max float64
    The maximum amount of network bandwidth, in Gbps. To specify no maximum limit, omit this parameter.
    Min float64
    The minimum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no minimum limit.
    max Double
    The maximum amount of network bandwidth, in Gbps. To specify no maximum limit, omit this parameter.
    min Double
    The minimum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no minimum limit.
    max number
    The maximum amount of network bandwidth, in Gbps. To specify no maximum limit, omit this parameter.
    min number
    The minimum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no minimum limit.
    max float
    The maximum amount of network bandwidth, in Gbps. To specify no maximum limit, omit this parameter.
    min float
    The minimum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no minimum limit.
    max Number
    The maximum amount of network bandwidth, in Gbps. To specify no maximum limit, omit this parameter.
    min Number
    The minimum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no minimum limit.

    LaunchTemplateNetworkInterface, LaunchTemplateNetworkInterfaceArgs

    AssociateCarrierIpAddress bool
    Associates a Carrier IP address with eth0 for a new network interface. Use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. For more information about Carrier IP addresses, see Carrier IP addresses in the Developer Guide.
    AssociatePublicIpAddress bool
    Associates a public IPv4 address with eth0 for a new network interface. AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.
    ConnectionTrackingSpecification Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateConnectionTrackingSpecification
    A connection tracking specification for the network interface.
    DeleteOnTermination bool
    Indicates whether the network interface is deleted when the instance is terminated.
    Description string
    A description for the network interface.
    DeviceIndex int
    The device index for the network interface attachment. Each network interface requires a device index. If you create a launch template that includes secondary network interfaces but not a primary network interface, then you must add a primary network interface as a launch parameter when you launch an instance from the template.
    EnaSrdSpecification Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateEnaSrdSpecification
    The ENA Express configuration for the network interface.
    Groups List<string>
    The IDs of one or more security groups.
    InterfaceType string
    The type of network interface. To create an Elastic Fabric Adapter (EFA), specify efa. For more information, see Elastic Fabric Adapter in the Amazon EC2 User Guide. If you are not creating an EFA, specify interface or omit this parameter. Valid values: interface | efa
    Ipv4PrefixCount int
    The number of IPv4 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv4Prefix option.
    Ipv4Prefixes List<Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateIpv4PrefixSpecification>
    One or more IPv4 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount option.
    Ipv6AddressCount int
    The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range. You can't use this option if specifying specific IPv6 addresses.
    Ipv6Addresses List<Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateIpv6Add>
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.
    Ipv6PrefixCount int
    The number of IPv6 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv6Prefix option.
    Ipv6Prefixes List<Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateIpv6PrefixSpecification>
    One or more IPv6 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount option.
    NetworkCardIndex int
    The index of the network card. Some instance types support multiple network cards. The primary network interface must be assigned to network card index 0. The default is network card index 0.
    NetworkInterfaceId string
    The ID of the network interface.
    PrimaryIpv6 bool
    The primary IPv6 address of the network interface. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information about primary IPv6 addresses, see RunInstances.
    PrivateIpAddress string
    The primary private IPv4 address of the network interface.
    PrivateIpAddresses List<Pulumi.AwsNative.Ec2.Inputs.LaunchTemplatePrivateIpAdd>
    One or more private IPv4 addresses.
    SecondaryPrivateIpAddressCount int
    The number of secondary private IPv4 addresses to assign to a network interface.
    SubnetId string
    The ID of the subnet for the network interface.
    AssociateCarrierIpAddress bool
    Associates a Carrier IP address with eth0 for a new network interface. Use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. For more information about Carrier IP addresses, see Carrier IP addresses in the Developer Guide.
    AssociatePublicIpAddress bool
    Associates a public IPv4 address with eth0 for a new network interface. AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.
    ConnectionTrackingSpecification LaunchTemplateConnectionTrackingSpecification
    A connection tracking specification for the network interface.
    DeleteOnTermination bool
    Indicates whether the network interface is deleted when the instance is terminated.
    Description string
    A description for the network interface.
    DeviceIndex int
    The device index for the network interface attachment. Each network interface requires a device index. If you create a launch template that includes secondary network interfaces but not a primary network interface, then you must add a primary network interface as a launch parameter when you launch an instance from the template.
    EnaSrdSpecification LaunchTemplateEnaSrdSpecification
    The ENA Express configuration for the network interface.
    Groups []string
    The IDs of one or more security groups.
    InterfaceType string
    The type of network interface. To create an Elastic Fabric Adapter (EFA), specify efa. For more information, see Elastic Fabric Adapter in the Amazon EC2 User Guide. If you are not creating an EFA, specify interface or omit this parameter. Valid values: interface | efa
    Ipv4PrefixCount int
    The number of IPv4 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv4Prefix option.
    Ipv4Prefixes []LaunchTemplateIpv4PrefixSpecification
    One or more IPv4 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount option.
    Ipv6AddressCount int
    The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range. You can't use this option if specifying specific IPv6 addresses.
    Ipv6Addresses []LaunchTemplateIpv6Add
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.
    Ipv6PrefixCount int
    The number of IPv6 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv6Prefix option.
    Ipv6Prefixes []LaunchTemplateIpv6PrefixSpecification
    One or more IPv6 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount option.
    NetworkCardIndex int
    The index of the network card. Some instance types support multiple network cards. The primary network interface must be assigned to network card index 0. The default is network card index 0.
    NetworkInterfaceId string
    The ID of the network interface.
    PrimaryIpv6 bool
    The primary IPv6 address of the network interface. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information about primary IPv6 addresses, see RunInstances.
    PrivateIpAddress string
    The primary private IPv4 address of the network interface.
    PrivateIpAddresses []LaunchTemplatePrivateIpAdd
    One or more private IPv4 addresses.
    SecondaryPrivateIpAddressCount int
    The number of secondary private IPv4 addresses to assign to a network interface.
    SubnetId string
    The ID of the subnet for the network interface.
    associateCarrierIpAddress Boolean
    Associates a Carrier IP address with eth0 for a new network interface. Use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. For more information about Carrier IP addresses, see Carrier IP addresses in the Developer Guide.
    associatePublicIpAddress Boolean
    Associates a public IPv4 address with eth0 for a new network interface. AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.
    connectionTrackingSpecification LaunchTemplateConnectionTrackingSpecification
    A connection tracking specification for the network interface.
    deleteOnTermination Boolean
    Indicates whether the network interface is deleted when the instance is terminated.
    description String
    A description for the network interface.
    deviceIndex Integer
    The device index for the network interface attachment. Each network interface requires a device index. If you create a launch template that includes secondary network interfaces but not a primary network interface, then you must add a primary network interface as a launch parameter when you launch an instance from the template.
    enaSrdSpecification LaunchTemplateEnaSrdSpecification
    The ENA Express configuration for the network interface.
    groups List<String>
    The IDs of one or more security groups.
    interfaceType String
    The type of network interface. To create an Elastic Fabric Adapter (EFA), specify efa. For more information, see Elastic Fabric Adapter in the Amazon EC2 User Guide. If you are not creating an EFA, specify interface or omit this parameter. Valid values: interface | efa
    ipv4PrefixCount Integer
    The number of IPv4 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv4Prefix option.
    ipv4Prefixes List<LaunchTemplateIpv4PrefixSpecification>
    One or more IPv4 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount option.
    ipv6AddressCount Integer
    The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range. You can't use this option if specifying specific IPv6 addresses.
    ipv6Addresses List<LaunchTemplateIpv6Add>
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.
    ipv6PrefixCount Integer
    The number of IPv6 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv6Prefix option.
    ipv6Prefixes List<LaunchTemplateIpv6PrefixSpecification>
    One or more IPv6 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount option.
    networkCardIndex Integer
    The index of the network card. Some instance types support multiple network cards. The primary network interface must be assigned to network card index 0. The default is network card index 0.
    networkInterfaceId String
    The ID of the network interface.
    primaryIpv6 Boolean
    The primary IPv6 address of the network interface. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information about primary IPv6 addresses, see RunInstances.
    privateIpAddress String
    The primary private IPv4 address of the network interface.
    privateIpAddresses List<LaunchTemplatePrivateIpAdd>
    One or more private IPv4 addresses.
    secondaryPrivateIpAddressCount Integer
    The number of secondary private IPv4 addresses to assign to a network interface.
    subnetId String
    The ID of the subnet for the network interface.
    associateCarrierIpAddress boolean
    Associates a Carrier IP address with eth0 for a new network interface. Use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. For more information about Carrier IP addresses, see Carrier IP addresses in the Developer Guide.
    associatePublicIpAddress boolean
    Associates a public IPv4 address with eth0 for a new network interface. AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.
    connectionTrackingSpecification LaunchTemplateConnectionTrackingSpecification
    A connection tracking specification for the network interface.
    deleteOnTermination boolean
    Indicates whether the network interface is deleted when the instance is terminated.
    description string
    A description for the network interface.
    deviceIndex number
    The device index for the network interface attachment. Each network interface requires a device index. If you create a launch template that includes secondary network interfaces but not a primary network interface, then you must add a primary network interface as a launch parameter when you launch an instance from the template.
    enaSrdSpecification LaunchTemplateEnaSrdSpecification
    The ENA Express configuration for the network interface.
    groups string[]
    The IDs of one or more security groups.
    interfaceType string
    The type of network interface. To create an Elastic Fabric Adapter (EFA), specify efa. For more information, see Elastic Fabric Adapter in the Amazon EC2 User Guide. If you are not creating an EFA, specify interface or omit this parameter. Valid values: interface | efa
    ipv4PrefixCount number
    The number of IPv4 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv4Prefix option.
    ipv4Prefixes LaunchTemplateIpv4PrefixSpecification[]
    One or more IPv4 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount option.
    ipv6AddressCount number
    The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range. You can't use this option if specifying specific IPv6 addresses.
    ipv6Addresses LaunchTemplateIpv6Add[]
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.
    ipv6PrefixCount number
    The number of IPv6 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv6Prefix option.
    ipv6Prefixes LaunchTemplateIpv6PrefixSpecification[]
    One or more IPv6 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount option.
    networkCardIndex number
    The index of the network card. Some instance types support multiple network cards. The primary network interface must be assigned to network card index 0. The default is network card index 0.
    networkInterfaceId string
    The ID of the network interface.
    primaryIpv6 boolean
    The primary IPv6 address of the network interface. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information about primary IPv6 addresses, see RunInstances.
    privateIpAddress string
    The primary private IPv4 address of the network interface.
    privateIpAddresses LaunchTemplatePrivateIpAdd[]
    One or more private IPv4 addresses.
    secondaryPrivateIpAddressCount number
    The number of secondary private IPv4 addresses to assign to a network interface.
    subnetId string
    The ID of the subnet for the network interface.
    associate_carrier_ip_address bool
    Associates a Carrier IP address with eth0 for a new network interface. Use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. For more information about Carrier IP addresses, see Carrier IP addresses in the Developer Guide.
    associate_public_ip_address bool
    Associates a public IPv4 address with eth0 for a new network interface. AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.
    connection_tracking_specification LaunchTemplateConnectionTrackingSpecification
    A connection tracking specification for the network interface.
    delete_on_termination bool
    Indicates whether the network interface is deleted when the instance is terminated.
    description str
    A description for the network interface.
    device_index int
    The device index for the network interface attachment. Each network interface requires a device index. If you create a launch template that includes secondary network interfaces but not a primary network interface, then you must add a primary network interface as a launch parameter when you launch an instance from the template.
    ena_srd_specification LaunchTemplateEnaSrdSpecification
    The ENA Express configuration for the network interface.
    groups Sequence[str]
    The IDs of one or more security groups.
    interface_type str
    The type of network interface. To create an Elastic Fabric Adapter (EFA), specify efa. For more information, see Elastic Fabric Adapter in the Amazon EC2 User Guide. If you are not creating an EFA, specify interface or omit this parameter. Valid values: interface | efa
    ipv4_prefix_count int
    The number of IPv4 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv4Prefix option.
    ipv4_prefixes Sequence[LaunchTemplateIpv4PrefixSpecification]
    One or more IPv4 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount option.
    ipv6_address_count int
    The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range. You can't use this option if specifying specific IPv6 addresses.
    ipv6_addresses Sequence[LaunchTemplateIpv6Add]
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.
    ipv6_prefix_count int
    The number of IPv6 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv6Prefix option.
    ipv6_prefixes Sequence[LaunchTemplateIpv6PrefixSpecification]
    One or more IPv6 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount option.
    network_card_index int
    The index of the network card. Some instance types support multiple network cards. The primary network interface must be assigned to network card index 0. The default is network card index 0.
    network_interface_id str
    The ID of the network interface.
    primary_ipv6 bool
    The primary IPv6 address of the network interface. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information about primary IPv6 addresses, see RunInstances.
    private_ip_address str
    The primary private IPv4 address of the network interface.
    private_ip_addresses Sequence[LaunchTemplatePrivateIpAdd]
    One or more private IPv4 addresses.
    secondary_private_ip_address_count int
    The number of secondary private IPv4 addresses to assign to a network interface.
    subnet_id str
    The ID of the subnet for the network interface.
    associateCarrierIpAddress Boolean
    Associates a Carrier IP address with eth0 for a new network interface. Use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. For more information about Carrier IP addresses, see Carrier IP addresses in the Developer Guide.
    associatePublicIpAddress Boolean
    Associates a public IPv4 address with eth0 for a new network interface. AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the Public IPv4 Address tab on the Amazon VPC pricing page.
    connectionTrackingSpecification Property Map
    A connection tracking specification for the network interface.
    deleteOnTermination Boolean
    Indicates whether the network interface is deleted when the instance is terminated.
    description String
    A description for the network interface.
    deviceIndex Number
    The device index for the network interface attachment. Each network interface requires a device index. If you create a launch template that includes secondary network interfaces but not a primary network interface, then you must add a primary network interface as a launch parameter when you launch an instance from the template.
    enaSrdSpecification Property Map
    The ENA Express configuration for the network interface.
    groups List<String>
    The IDs of one or more security groups.
    interfaceType String
    The type of network interface. To create an Elastic Fabric Adapter (EFA), specify efa. For more information, see Elastic Fabric Adapter in the Amazon EC2 User Guide. If you are not creating an EFA, specify interface or omit this parameter. Valid values: interface | efa
    ipv4PrefixCount Number
    The number of IPv4 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv4Prefix option.
    ipv4Prefixes List<Property Map>
    One or more IPv4 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount option.
    ipv6AddressCount Number
    The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range. You can't use this option if specifying specific IPv6 addresses.
    ipv6Addresses List<Property Map>
    One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.
    ipv6PrefixCount Number
    The number of IPv6 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv6Prefix option.
    ipv6Prefixes List<Property Map>
    One or more IPv6 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount option.
    networkCardIndex Number
    The index of the network card. Some instance types support multiple network cards. The primary network interface must be assigned to network card index 0. The default is network card index 0.
    networkInterfaceId String
    The ID of the network interface.
    primaryIpv6 Boolean
    The primary IPv6 address of the network interface. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information about primary IPv6 addresses, see RunInstances.
    privateIpAddress String
    The primary private IPv4 address of the network interface.
    privateIpAddresses List<Property Map>
    One or more private IPv4 addresses.
    secondaryPrivateIpAddressCount Number
    The number of secondary private IPv4 addresses to assign to a network interface.
    subnetId String
    The ID of the subnet for the network interface.

    LaunchTemplateNetworkInterfaceCount, LaunchTemplateNetworkInterfaceCountArgs

    Max int
    The maximum number of network interfaces. To specify no maximum limit, omit this parameter.
    Min int
    The minimum number of network interfaces. To specify no minimum limit, omit this parameter.
    Max int
    The maximum number of network interfaces. To specify no maximum limit, omit this parameter.
    Min int
    The minimum number of network interfaces. To specify no minimum limit, omit this parameter.
    max Integer
    The maximum number of network interfaces. To specify no maximum limit, omit this parameter.
    min Integer
    The minimum number of network interfaces. To specify no minimum limit, omit this parameter.
    max number
    The maximum number of network interfaces. To specify no maximum limit, omit this parameter.
    min number
    The minimum number of network interfaces. To specify no minimum limit, omit this parameter.
    max int
    The maximum number of network interfaces. To specify no maximum limit, omit this parameter.
    min int
    The minimum number of network interfaces. To specify no minimum limit, omit this parameter.
    max Number
    The maximum number of network interfaces. To specify no maximum limit, omit this parameter.
    min Number
    The minimum number of network interfaces. To specify no minimum limit, omit this parameter.

    LaunchTemplatePlacement, LaunchTemplatePlacementArgs

    Affinity string
    The affinity setting for an instance on a Dedicated Host.
    AvailabilityZone string
    The Availability Zone for the instance.
    GroupId string
    The Group Id of a placement group. You must specify the Placement Group Group Id to launch an instance in a shared placement group.
    GroupName string
    The name of the placement group for the instance.
    HostId string
    The ID of the Dedicated Host for the instance.
    HostResourceGroupArn string
    The ARN of the host resource group in which to launch the instances. If you specify a host resource group ARN, omit the Tenancy parameter or set it to host.
    PartitionNumber int
    The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition.
    SpreadDomain string
    Reserved for future use.
    Tenancy string
    The tenancy of the instance. An instance with a tenancy of dedicated runs on single-tenant hardware.
    Affinity string
    The affinity setting for an instance on a Dedicated Host.
    AvailabilityZone string
    The Availability Zone for the instance.
    GroupId string
    The Group Id of a placement group. You must specify the Placement Group Group Id to launch an instance in a shared placement group.
    GroupName string
    The name of the placement group for the instance.
    HostId string
    The ID of the Dedicated Host for the instance.
    HostResourceGroupArn string
    The ARN of the host resource group in which to launch the instances. If you specify a host resource group ARN, omit the Tenancy parameter or set it to host.
    PartitionNumber int
    The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition.
    SpreadDomain string
    Reserved for future use.
    Tenancy string
    The tenancy of the instance. An instance with a tenancy of dedicated runs on single-tenant hardware.
    affinity String
    The affinity setting for an instance on a Dedicated Host.
    availabilityZone String
    The Availability Zone for the instance.
    groupId String
    The Group Id of a placement group. You must specify the Placement Group Group Id to launch an instance in a shared placement group.
    groupName String
    The name of the placement group for the instance.
    hostId String
    The ID of the Dedicated Host for the instance.
    hostResourceGroupArn String
    The ARN of the host resource group in which to launch the instances. If you specify a host resource group ARN, omit the Tenancy parameter or set it to host.
    partitionNumber Integer
    The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition.
    spreadDomain String
    Reserved for future use.
    tenancy String
    The tenancy of the instance. An instance with a tenancy of dedicated runs on single-tenant hardware.
    affinity string
    The affinity setting for an instance on a Dedicated Host.
    availabilityZone string
    The Availability Zone for the instance.
    groupId string
    The Group Id of a placement group. You must specify the Placement Group Group Id to launch an instance in a shared placement group.
    groupName string
    The name of the placement group for the instance.
    hostId string
    The ID of the Dedicated Host for the instance.
    hostResourceGroupArn string
    The ARN of the host resource group in which to launch the instances. If you specify a host resource group ARN, omit the Tenancy parameter or set it to host.
    partitionNumber number
    The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition.
    spreadDomain string
    Reserved for future use.
    tenancy string
    The tenancy of the instance. An instance with a tenancy of dedicated runs on single-tenant hardware.
    affinity str
    The affinity setting for an instance on a Dedicated Host.
    availability_zone str
    The Availability Zone for the instance.
    group_id str
    The Group Id of a placement group. You must specify the Placement Group Group Id to launch an instance in a shared placement group.
    group_name str
    The name of the placement group for the instance.
    host_id str
    The ID of the Dedicated Host for the instance.
    host_resource_group_arn str
    The ARN of the host resource group in which to launch the instances. If you specify a host resource group ARN, omit the Tenancy parameter or set it to host.
    partition_number int
    The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition.
    spread_domain str
    Reserved for future use.
    tenancy str
    The tenancy of the instance. An instance with a tenancy of dedicated runs on single-tenant hardware.
    affinity String
    The affinity setting for an instance on a Dedicated Host.
    availabilityZone String
    The Availability Zone for the instance.
    groupId String
    The Group Id of a placement group. You must specify the Placement Group Group Id to launch an instance in a shared placement group.
    groupName String
    The name of the placement group for the instance.
    hostId String
    The ID of the Dedicated Host for the instance.
    hostResourceGroupArn String
    The ARN of the host resource group in which to launch the instances. If you specify a host resource group ARN, omit the Tenancy parameter or set it to host.
    partitionNumber Number
    The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition.
    spreadDomain String
    Reserved for future use.
    tenancy String
    The tenancy of the instance. An instance with a tenancy of dedicated runs on single-tenant hardware.

    LaunchTemplatePrivateDnsNameOptions, LaunchTemplatePrivateDnsNameOptionsArgs

    EnableResourceNameDnsARecord bool
    Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
    EnableResourceNameDnsAaaaRecord bool
    Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
    HostnameType string
    The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name must be based on the instance ID. For dual-stack subnets, you can specify whether DNS names use the instance IPv4 address or the instance ID. For more information, see Amazon EC2 instance hostname types in the User Guide.
    EnableResourceNameDnsARecord bool
    Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
    EnableResourceNameDnsAaaaRecord bool
    Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
    HostnameType string
    The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name must be based on the instance ID. For dual-stack subnets, you can specify whether DNS names use the instance IPv4 address or the instance ID. For more information, see Amazon EC2 instance hostname types in the User Guide.
    enableResourceNameDnsARecord Boolean
    Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
    enableResourceNameDnsAaaaRecord Boolean
    Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
    hostnameType String
    The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name must be based on the instance ID. For dual-stack subnets, you can specify whether DNS names use the instance IPv4 address or the instance ID. For more information, see Amazon EC2 instance hostname types in the User Guide.
    enableResourceNameDnsARecord boolean
    Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
    enableResourceNameDnsAaaaRecord boolean
    Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
    hostnameType string
    The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name must be based on the instance ID. For dual-stack subnets, you can specify whether DNS names use the instance IPv4 address or the instance ID. For more information, see Amazon EC2 instance hostname types in the User Guide.
    enable_resource_name_dns_a_record bool
    Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
    enable_resource_name_dns_aaaa_record bool
    Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
    hostname_type str
    The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name must be based on the instance ID. For dual-stack subnets, you can specify whether DNS names use the instance IPv4 address or the instance ID. For more information, see Amazon EC2 instance hostname types in the User Guide.
    enableResourceNameDnsARecord Boolean
    Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
    enableResourceNameDnsAaaaRecord Boolean
    Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
    hostnameType String
    The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name must be based on the instance ID. For dual-stack subnets, you can specify whether DNS names use the instance IPv4 address or the instance ID. For more information, see Amazon EC2 instance hostname types in the User Guide.

    LaunchTemplatePrivateIpAdd, LaunchTemplatePrivateIpAddArgs

    Primary bool
    Indicates whether the private IPv4 address is the primary private IPv4 address. Only one IPv4 address can be designated as primary.
    PrivateIpAddress string
    The private IPv4 address.
    Primary bool
    Indicates whether the private IPv4 address is the primary private IPv4 address. Only one IPv4 address can be designated as primary.
    PrivateIpAddress string
    The private IPv4 address.
    primary Boolean
    Indicates whether the private IPv4 address is the primary private IPv4 address. Only one IPv4 address can be designated as primary.
    privateIpAddress String
    The private IPv4 address.
    primary boolean
    Indicates whether the private IPv4 address is the primary private IPv4 address. Only one IPv4 address can be designated as primary.
    privateIpAddress string
    The private IPv4 address.
    primary bool
    Indicates whether the private IPv4 address is the primary private IPv4 address. Only one IPv4 address can be designated as primary.
    private_ip_address str
    The private IPv4 address.
    primary Boolean
    Indicates whether the private IPv4 address is the primary private IPv4 address. Only one IPv4 address can be designated as primary.
    privateIpAddress String
    The private IPv4 address.

    LaunchTemplateSpotOptions, LaunchTemplateSpotOptionsArgs

    BlockDurationMinutes int
    Deprecated.
    InstanceInterruptionBehavior string
    The behavior when a Spot Instance is interrupted. The default is terminate.
    MaxPrice string
    The maximum hourly price you're willing to pay for the Spot Instances. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price. If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.
    SpotInstanceType string
    The Spot Instance request type. If you are using Spot Instances with an Auto Scaling group, use one-time requests, as the ASlong service handles requesting new Spot Instances whenever the group is below its desired capacity.
    ValidUntil string

    The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent requests.

    • For a persistent request, the request remains active until the ValidUntil date and time is reached. Otherwise, the request remains active until you cancel it.
    • For a one-time request, ValidUntil is not supported. The request remains active until all instances launch or you cancel the request.

    Default: 7 days from the current date

    BlockDurationMinutes int
    Deprecated.
    InstanceInterruptionBehavior string
    The behavior when a Spot Instance is interrupted. The default is terminate.
    MaxPrice string
    The maximum hourly price you're willing to pay for the Spot Instances. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price. If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.
    SpotInstanceType string
    The Spot Instance request type. If you are using Spot Instances with an Auto Scaling group, use one-time requests, as the ASlong service handles requesting new Spot Instances whenever the group is below its desired capacity.
    ValidUntil string

    The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent requests.

    • For a persistent request, the request remains active until the ValidUntil date and time is reached. Otherwise, the request remains active until you cancel it.
    • For a one-time request, ValidUntil is not supported. The request remains active until all instances launch or you cancel the request.

    Default: 7 days from the current date

    blockDurationMinutes Integer
    Deprecated.
    instanceInterruptionBehavior String
    The behavior when a Spot Instance is interrupted. The default is terminate.
    maxPrice String
    The maximum hourly price you're willing to pay for the Spot Instances. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price. If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.
    spotInstanceType String
    The Spot Instance request type. If you are using Spot Instances with an Auto Scaling group, use one-time requests, as the ASlong service handles requesting new Spot Instances whenever the group is below its desired capacity.
    validUntil String

    The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent requests.

    • For a persistent request, the request remains active until the ValidUntil date and time is reached. Otherwise, the request remains active until you cancel it.
    • For a one-time request, ValidUntil is not supported. The request remains active until all instances launch or you cancel the request.

    Default: 7 days from the current date

    blockDurationMinutes number
    Deprecated.
    instanceInterruptionBehavior string
    The behavior when a Spot Instance is interrupted. The default is terminate.
    maxPrice string
    The maximum hourly price you're willing to pay for the Spot Instances. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price. If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.
    spotInstanceType string
    The Spot Instance request type. If you are using Spot Instances with an Auto Scaling group, use one-time requests, as the ASlong service handles requesting new Spot Instances whenever the group is below its desired capacity.
    validUntil string

    The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent requests.

    • For a persistent request, the request remains active until the ValidUntil date and time is reached. Otherwise, the request remains active until you cancel it.
    • For a one-time request, ValidUntil is not supported. The request remains active until all instances launch or you cancel the request.

    Default: 7 days from the current date

    block_duration_minutes int
    Deprecated.
    instance_interruption_behavior str
    The behavior when a Spot Instance is interrupted. The default is terminate.
    max_price str
    The maximum hourly price you're willing to pay for the Spot Instances. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price. If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.
    spot_instance_type str
    The Spot Instance request type. If you are using Spot Instances with an Auto Scaling group, use one-time requests, as the ASlong service handles requesting new Spot Instances whenever the group is below its desired capacity.
    valid_until str

    The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent requests.

    • For a persistent request, the request remains active until the ValidUntil date and time is reached. Otherwise, the request remains active until you cancel it.
    • For a one-time request, ValidUntil is not supported. The request remains active until all instances launch or you cancel the request.

    Default: 7 days from the current date

    blockDurationMinutes Number
    Deprecated.
    instanceInterruptionBehavior String
    The behavior when a Spot Instance is interrupted. The default is terminate.
    maxPrice String
    The maximum hourly price you're willing to pay for the Spot Instances. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price. If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.
    spotInstanceType String
    The Spot Instance request type. If you are using Spot Instances with an Auto Scaling group, use one-time requests, as the ASlong service handles requesting new Spot Instances whenever the group is below its desired capacity.
    validUntil String

    The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent requests.

    • For a persistent request, the request remains active until the ValidUntil date and time is reached. Otherwise, the request remains active until you cancel it.
    • For a one-time request, ValidUntil is not supported. The request remains active until all instances launch or you cancel the request.

    Default: 7 days from the current date

    LaunchTemplateTag, LaunchTemplateTagArgs

    Key string
    The tag key.
    Value string
    The tag value.
    Key string
    The tag key.
    Value string
    The tag value.
    key String
    The tag key.
    value String
    The tag value.
    key string
    The tag key.
    value string
    The tag value.
    key str
    The tag key.
    value str
    The tag value.
    key String
    The tag key.
    value String
    The tag value.

    LaunchTemplateTagSpecification, LaunchTemplateTagSpecificationArgs

    ResourceType string
    The type of resource. To tag a launch template, ResourceType must be launch-template.
    Tags List<Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateTag>
    The tags for the resource.
    ResourceType string
    The type of resource. To tag a launch template, ResourceType must be launch-template.
    Tags []LaunchTemplateTag
    The tags for the resource.
    resourceType String
    The type of resource. To tag a launch template, ResourceType must be launch-template.
    tags List<LaunchTemplateTag>
    The tags for the resource.
    resourceType string
    The type of resource. To tag a launch template, ResourceType must be launch-template.
    tags LaunchTemplateTag[]
    The tags for the resource.
    resource_type str
    The type of resource. To tag a launch template, ResourceType must be launch-template.
    tags Sequence[LaunchTemplateTag]
    The tags for the resource.
    resourceType String
    The type of resource. To tag a launch template, ResourceType must be launch-template.
    tags List<Property Map>
    The tags for the resource.

    LaunchTemplateTotalLocalStorageGb, LaunchTemplateTotalLocalStorageGbArgs

    Max double
    The maximum amount of total local storage, in GB. To specify no maximum limit, omit this parameter.
    Min double
    The minimum amount of total local storage, in GB. To specify no minimum limit, omit this parameter.
    Max float64
    The maximum amount of total local storage, in GB. To specify no maximum limit, omit this parameter.
    Min float64
    The minimum amount of total local storage, in GB. To specify no minimum limit, omit this parameter.
    max Double
    The maximum amount of total local storage, in GB. To specify no maximum limit, omit this parameter.
    min Double
    The minimum amount of total local storage, in GB. To specify no minimum limit, omit this parameter.
    max number
    The maximum amount of total local storage, in GB. To specify no maximum limit, omit this parameter.
    min number
    The minimum amount of total local storage, in GB. To specify no minimum limit, omit this parameter.
    max float
    The maximum amount of total local storage, in GB. To specify no maximum limit, omit this parameter.
    min float
    The minimum amount of total local storage, in GB. To specify no minimum limit, omit this parameter.
    max Number
    The maximum amount of total local storage, in GB. To specify no maximum limit, omit this parameter.
    min Number
    The minimum amount of total local storage, in GB. To specify no minimum limit, omit this parameter.

    LaunchTemplateVCpuCount, LaunchTemplateVCpuCountArgs

    Max int
    The maximum number of vCPUs. To specify no maximum limit, omit this parameter.
    Min int
    The minimum number of vCPUs. To specify no minimum limit, specify 0.
    Max int
    The maximum number of vCPUs. To specify no maximum limit, omit this parameter.
    Min int
    The minimum number of vCPUs. To specify no minimum limit, specify 0.
    max Integer
    The maximum number of vCPUs. To specify no maximum limit, omit this parameter.
    min Integer
    The minimum number of vCPUs. To specify no minimum limit, specify 0.
    max number
    The maximum number of vCPUs. To specify no maximum limit, omit this parameter.
    min number
    The minimum number of vCPUs. To specify no minimum limit, specify 0.
    max int
    The maximum number of vCPUs. To specify no maximum limit, omit this parameter.
    min int
    The minimum number of vCPUs. To specify no minimum limit, specify 0.
    max Number
    The maximum number of vCPUs. To specify no maximum limit, omit this parameter.
    min Number
    The minimum number of vCPUs. To specify no minimum limit, specify 0.

    TagSpecification, TagSpecificationArgs

    ResourceType string
    The type of resource to tag. You can specify tags for the following resource types only: instance | volume | network-interface | spot-instances-request. If the instance does not include the resource type that you specify, the instance launch fails. For example, not all instance types include a volume. To tag a resource after it has been created, see CreateTags.
    Tags List<Pulumi.AwsNative.Ec2.Inputs.LaunchTemplateTag>
    The tags to apply to the resource.
    ResourceType string
    The type of resource to tag. You can specify tags for the following resource types only: instance | volume | network-interface | spot-instances-request. If the instance does not include the resource type that you specify, the instance launch fails. For example, not all instance types include a volume. To tag a resource after it has been created, see CreateTags.
    Tags []LaunchTemplateTag
    The tags to apply to the resource.
    resourceType String
    The type of resource to tag. You can specify tags for the following resource types only: instance | volume | network-interface | spot-instances-request. If the instance does not include the resource type that you specify, the instance launch fails. For example, not all instance types include a volume. To tag a resource after it has been created, see CreateTags.
    tags List<LaunchTemplateTag>
    The tags to apply to the resource.
    resourceType string
    The type of resource to tag. You can specify tags for the following resource types only: instance | volume | network-interface | spot-instances-request. If the instance does not include the resource type that you specify, the instance launch fails. For example, not all instance types include a volume. To tag a resource after it has been created, see CreateTags.
    tags LaunchTemplateTag[]
    The tags to apply to the resource.
    resource_type str
    The type of resource to tag. You can specify tags for the following resource types only: instance | volume | network-interface | spot-instances-request. If the instance does not include the resource type that you specify, the instance launch fails. For example, not all instance types include a volume. To tag a resource after it has been created, see CreateTags.
    tags Sequence[LaunchTemplateTag]
    The tags to apply to the resource.
    resourceType String
    The type of resource to tag. You can specify tags for the following resource types only: instance | volume | network-interface | spot-instances-request. If the instance does not include the resource type that you specify, the instance launch fails. For example, not all instance types include a volume. To tag a resource after it has been created, see CreateTags.
    tags List<Property Map>
    The tags to apply to the resource.

    Package Details

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

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

    AWS Native v0.126.0 published on Monday, Sep 30, 2024 by Pulumi