1. Packages
  2. AWS Cloud Control
  3. API Docs
  4. ec2
  5. getSpotFleet

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

AWS Cloud Control v1.9.0 published on Monday, Nov 18, 2024 by Pulumi

aws-native.ec2.getSpotFleet

Explore with Pulumi AI

aws-native logo

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

AWS Cloud Control v1.9.0 published on Monday, Nov 18, 2024 by Pulumi

    Resource Type definition for AWS::EC2::SpotFleet

    Using getSpotFleet

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getSpotFleet(args: GetSpotFleetArgs, opts?: InvokeOptions): Promise<GetSpotFleetResult>
    function getSpotFleetOutput(args: GetSpotFleetOutputArgs, opts?: InvokeOptions): Output<GetSpotFleetResult>
    def get_spot_fleet(id: Optional[str] = None,
                       opts: Optional[InvokeOptions] = None) -> GetSpotFleetResult
    def get_spot_fleet_output(id: Optional[pulumi.Input[str]] = None,
                       opts: Optional[InvokeOptions] = None) -> Output[GetSpotFleetResult]
    func LookupSpotFleet(ctx *Context, args *LookupSpotFleetArgs, opts ...InvokeOption) (*LookupSpotFleetResult, error)
    func LookupSpotFleetOutput(ctx *Context, args *LookupSpotFleetOutputArgs, opts ...InvokeOption) LookupSpotFleetResultOutput

    > Note: This function is named LookupSpotFleet in the Go SDK.

    public static class GetSpotFleet 
    {
        public static Task<GetSpotFleetResult> InvokeAsync(GetSpotFleetArgs args, InvokeOptions? opts = null)
        public static Output<GetSpotFleetResult> Invoke(GetSpotFleetInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetSpotFleetResult> getSpotFleet(GetSpotFleetArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: aws-native:ec2:getSpotFleet
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Id string
    The ID of the Spot Fleet.
    Id string
    The ID of the Spot Fleet.
    id String
    The ID of the Spot Fleet.
    id string
    The ID of the Spot Fleet.
    id str
    The ID of the Spot Fleet.
    id String
    The ID of the Spot Fleet.

    getSpotFleet Result

    The following output properties are available:

    Id string
    The ID of the Spot Fleet.
    SpotFleetRequestConfigData Pulumi.AwsNative.Ec2.Outputs.SpotFleetRequestConfigData
    Describes the configuration of a Spot Fleet request.
    Id string
    The ID of the Spot Fleet.
    SpotFleetRequestConfigData SpotFleetRequestConfigData
    Describes the configuration of a Spot Fleet request.
    id String
    The ID of the Spot Fleet.
    spotFleetRequestConfigData SpotFleetRequestConfigData
    Describes the configuration of a Spot Fleet request.
    id string
    The ID of the Spot Fleet.
    spotFleetRequestConfigData SpotFleetRequestConfigData
    Describes the configuration of a Spot Fleet request.
    id str
    The ID of the Spot Fleet.
    spot_fleet_request_config_data SpotFleetRequestConfigData
    Describes the configuration of a Spot Fleet request.
    id String
    The ID of the Spot Fleet.
    spotFleetRequestConfigData Property Map
    Describes the configuration of a Spot Fleet request.

    Supporting Types

    SpotFleetAcceleratorCountRequest

    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.

    SpotFleetAcceleratorTotalMemoryMiBRequest

    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.

    SpotFleetBaselineEbsBandwidthMbpsRequest

    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.

    SpotFleetBlockDeviceMapping

    DeviceName string
    The device name (for example, /dev/sdh or xvdh ).
    Ebs Pulumi.AwsNative.Ec2.Inputs.SpotFleetEbsBlockDevice
    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. When this property is specified, the device is removed from the block device mapping regardless of the assigned value.
    VirtualName string

    The virtual device name ( ephemeral N). 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.

    NVMe instance store volumes are automatically enumerated and assigned a device name. Including them in your block device mapping has no effect.

    Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

    DeviceName string
    The device name (for example, /dev/sdh or xvdh ).
    Ebs SpotFleetEbsBlockDevice
    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. When this property is specified, the device is removed from the block device mapping regardless of the assigned value.
    VirtualName string

    The virtual device name ( ephemeral N). 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.

    NVMe instance store volumes are automatically enumerated and assigned a device name. Including them in your block device mapping has no effect.

    Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

    deviceName String
    The device name (for example, /dev/sdh or xvdh ).
    ebs SpotFleetEbsBlockDevice
    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. When this property is specified, the device is removed from the block device mapping regardless of the assigned value.
    virtualName String

    The virtual device name ( ephemeral N). 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.

    NVMe instance store volumes are automatically enumerated and assigned a device name. Including them in your block device mapping has no effect.

    Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

    deviceName string
    The device name (for example, /dev/sdh or xvdh ).
    ebs SpotFleetEbsBlockDevice
    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. When this property is specified, the device is removed from the block device mapping regardless of the assigned value.
    virtualName string

    The virtual device name ( ephemeral N). 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.

    NVMe instance store volumes are automatically enumerated and assigned a device name. Including them in your block device mapping has no effect.

    Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

    device_name str
    The device name (for example, /dev/sdh or xvdh ).
    ebs SpotFleetEbsBlockDevice
    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. When this property is specified, the device is removed from the block device mapping regardless of the assigned value.
    virtual_name str

    The virtual device name ( ephemeral N). 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.

    NVMe instance store volumes are automatically enumerated and assigned a device name. Including them in your block device mapping has no effect.

    Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

    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. When this property is specified, the device is removed from the block device mapping regardless of the assigned value.
    virtualName String

    The virtual device name ( ephemeral N). 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.

    NVMe instance store volumes are automatically enumerated and assigned a device name. Including them in your block device mapping has no effect.

    Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

    SpotFleetClassicLoadBalancer

    Name string
    The name of the load balancer.
    Name string
    The name of the load balancer.
    name String
    The name of the load balancer.
    name string
    The name of the load balancer.
    name str
    The name of the load balancer.
    name String
    The name of the load balancer.

    SpotFleetClassicLoadBalancersConfig

    ClassicLoadBalancers []SpotFleetClassicLoadBalancer
    One or more Classic Load Balancers.
    classicLoadBalancers List<SpotFleetClassicLoadBalancer>
    One or more Classic Load Balancers.
    classicLoadBalancers SpotFleetClassicLoadBalancer[]
    One or more Classic Load Balancers.
    classicLoadBalancers List<Property Map>
    One or more Classic Load Balancers.

    SpotFleetEbsBlockDevice

    DeleteOnTermination bool
    Indicates whether the EBS volume is deleted on instance termination. For more information, see Preserving Amazon EBS volumes on instance termination in the Amazon EC2 User Guide .
    Encrypted bool

    Indicates whether the encryption state of an EBS volume is changed while being restored from a backing snapshot. The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Amazon EBS Encryption in the Amazon EC2 User Guide .

    In no case can you remove encryption from an encrypted volume.

    Encrypted volumes can only be attached to instances that support Amazon EBS encryption. For more information, see Supported Instance Types .

    This parameter is not returned by DescribeImageAttribute .

    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 required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS.

    SnapshotId string
    The ID of the snapshot.
    VolumeSize int

    The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.

    The following are the supported 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 Pulumi.AwsNative.Ec2.SpotFleetEbsBlockDeviceVolumeType
    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. For more information, see Preserving Amazon EBS volumes on instance termination in the Amazon EC2 User Guide .
    Encrypted bool

    Indicates whether the encryption state of an EBS volume is changed while being restored from a backing snapshot. The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Amazon EBS Encryption in the Amazon EC2 User Guide .

    In no case can you remove encryption from an encrypted volume.

    Encrypted volumes can only be attached to instances that support Amazon EBS encryption. For more information, see Supported Instance Types .

    This parameter is not returned by DescribeImageAttribute .

    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 required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS.

    SnapshotId string
    The ID of the snapshot.
    VolumeSize int

    The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.

    The following are the supported 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 SpotFleetEbsBlockDeviceVolumeType
    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. For more information, see Preserving Amazon EBS volumes on instance termination in the Amazon EC2 User Guide .
    encrypted Boolean

    Indicates whether the encryption state of an EBS volume is changed while being restored from a backing snapshot. The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Amazon EBS Encryption in the Amazon EC2 User Guide .

    In no case can you remove encryption from an encrypted volume.

    Encrypted volumes can only be attached to instances that support Amazon EBS encryption. For more information, see Supported Instance Types .

    This parameter is not returned by DescribeImageAttribute .

    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 required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS.

    snapshotId String
    The ID of the snapshot.
    volumeSize Integer

    The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.

    The following are the supported 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 SpotFleetEbsBlockDeviceVolumeType
    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. For more information, see Preserving Amazon EBS volumes on instance termination in the Amazon EC2 User Guide .
    encrypted boolean

    Indicates whether the encryption state of an EBS volume is changed while being restored from a backing snapshot. The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Amazon EBS Encryption in the Amazon EC2 User Guide .

    In no case can you remove encryption from an encrypted volume.

    Encrypted volumes can only be attached to instances that support Amazon EBS encryption. For more information, see Supported Instance Types .

    This parameter is not returned by DescribeImageAttribute .

    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 required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS.

    snapshotId string
    The ID of the snapshot.
    volumeSize number

    The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.

    The following are the supported 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 SpotFleetEbsBlockDeviceVolumeType
    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. For more information, see Preserving Amazon EBS volumes on instance termination in the Amazon EC2 User Guide .
    encrypted bool

    Indicates whether the encryption state of an EBS volume is changed while being restored from a backing snapshot. The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Amazon EBS Encryption in the Amazon EC2 User Guide .

    In no case can you remove encryption from an encrypted volume.

    Encrypted volumes can only be attached to instances that support Amazon EBS encryption. For more information, see Supported Instance Types .

    This parameter is not returned by DescribeImageAttribute .

    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 required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS.

    snapshot_id str
    The ID of the snapshot.
    volume_size int

    The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.

    The following are the supported 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 SpotFleetEbsBlockDeviceVolumeType
    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. For more information, see Preserving Amazon EBS volumes on instance termination in the Amazon EC2 User Guide .
    encrypted Boolean

    Indicates whether the encryption state of an EBS volume is changed while being restored from a backing snapshot. The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Amazon EBS Encryption in the Amazon EC2 User Guide .

    In no case can you remove encryption from an encrypted volume.

    Encrypted volumes can only be attached to instances that support Amazon EBS encryption. For more information, see Supported Instance Types .

    This parameter is not returned by DescribeImageAttribute .

    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 required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS.

    snapshotId String
    The ID of the snapshot.
    volumeSize Number

    The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.

    The following are the supported 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 "gp2" | "gp3" | "io1" | "io2" | "sc1" | "st1" | "standard"
    The volume type. For more information, see Amazon EBS volume types in the Amazon EBS User Guide .

    SpotFleetEbsBlockDeviceVolumeType

    SpotFleetFleetLaunchTemplateSpecification

    Version string

    The version number of the launch template.

    Specifying $Latest or $Default for the template version number is not supported. However, you can specify LatestVersionNumber or DefaultVersionNumber using the Fn::GetAtt intrinsic function. For more information, see Fn::GetAtt .

    LaunchTemplateId string

    The ID of the launch template.

    You must specify the LaunchTemplateId or the LaunchTemplateName , but not both.

    LaunchTemplateName string

    The name of the launch template.

    You must specify the LaunchTemplateName or the LaunchTemplateId , but not both.

    Version string

    The version number of the launch template.

    Specifying $Latest or $Default for the template version number is not supported. However, you can specify LatestVersionNumber or DefaultVersionNumber using the Fn::GetAtt intrinsic function. For more information, see Fn::GetAtt .

    LaunchTemplateId string

    The ID of the launch template.

    You must specify the LaunchTemplateId or the LaunchTemplateName , but not both.

    LaunchTemplateName string

    The name of the launch template.

    You must specify the LaunchTemplateName or the LaunchTemplateId , but not both.

    version String

    The version number of the launch template.

    Specifying $Latest or $Default for the template version number is not supported. However, you can specify LatestVersionNumber or DefaultVersionNumber using the Fn::GetAtt intrinsic function. For more information, see Fn::GetAtt .

    launchTemplateId String

    The ID of the launch template.

    You must specify the LaunchTemplateId or the LaunchTemplateName , but not both.

    launchTemplateName String

    The name of the launch template.

    You must specify the LaunchTemplateName or the LaunchTemplateId , but not both.

    version string

    The version number of the launch template.

    Specifying $Latest or $Default for the template version number is not supported. However, you can specify LatestVersionNumber or DefaultVersionNumber using the Fn::GetAtt intrinsic function. For more information, see Fn::GetAtt .

    launchTemplateId string

    The ID of the launch template.

    You must specify the LaunchTemplateId or the LaunchTemplateName , but not both.

    launchTemplateName string

    The name of the launch template.

    You must specify the LaunchTemplateName or the LaunchTemplateId , but not both.

    version str

    The version number of the launch template.

    Specifying $Latest or $Default for the template version number is not supported. However, you can specify LatestVersionNumber or DefaultVersionNumber using the Fn::GetAtt intrinsic function. For more information, see Fn::GetAtt .

    launch_template_id str

    The ID of the launch template.

    You must specify the LaunchTemplateId or the LaunchTemplateName , but not both.

    launch_template_name str

    The name of the launch template.

    You must specify the LaunchTemplateName or the LaunchTemplateId , but not both.

    version String

    The version number of the launch template.

    Specifying $Latest or $Default for the template version number is not supported. However, you can specify LatestVersionNumber or DefaultVersionNumber using the Fn::GetAtt intrinsic function. For more information, see Fn::GetAtt .

    launchTemplateId String

    The ID of the launch template.

    You must specify the LaunchTemplateId or the LaunchTemplateName , but not both.

    launchTemplateName String

    The name of the launch template.

    You must specify the LaunchTemplateName or the LaunchTemplateId , but not both.

    SpotFleetGroupIdentifier

    GroupId string
    The ID of the security group.
    GroupId string
    The ID of the security group.
    groupId String
    The ID of the security group.
    groupId string
    The ID of the security group.
    group_id str
    The ID of the security group.
    groupId String
    The ID of the security group.

    SpotFleetIamInstanceProfileSpecification

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

    SpotFleetInstanceIpv6Address

    Ipv6Address string
    The IPv6 address.
    Ipv6Address string
    The IPv6 address.
    ipv6Address String
    The IPv6 address.
    ipv6Address string
    The IPv6 address.
    ipv6_address str
    The IPv6 address.
    ipv6Address String
    The IPv6 address.

    SpotFleetInstanceNetworkInterfaceSpecification

    AssociatePublicIpAddress bool

    Indicates whether to assign a public IPv4 address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true .

    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 .

    DeleteOnTermination bool
    Indicates whether the network interface is deleted when the instance is terminated.
    Description string
    The description of the network interface. Applies only if creating a network interface when launching an instance.
    DeviceIndex int

    The position of the network interface in the attachment order. A primary network interface has a device index of 0.

    If you specify a network interface when launching an instance, you must specify the device index.

    Groups List<string>
    The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.
    Ipv6AddressCount int
    A number of IPv6 addresses to assign to the network interface. Amazon EC2 chooses the IPv6 addresses from the range of the subnet. You cannot specify this option and the option to assign specific IPv6 addresses in the same request. You can specify this option if you've specified a minimum number of instances to launch.
    Ipv6Addresses List<Pulumi.AwsNative.Ec2.Inputs.SpotFleetInstanceIpv6Address>
    The IPv6 addresses to assign to the network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch.
    NetworkInterfaceId string

    The ID of the network interface.

    If you are creating a Spot Fleet, omit this parameter because you can’t specify a network interface ID in a launch specification.

    PrivateIpAddresses List<Pulumi.AwsNative.Ec2.Inputs.SpotFleetPrivateIpAddressSpecification>
    The private IPv4 addresses to assign to the network interface. Only one private IPv4 address can be designated as primary. You cannot specify this option if you're launching more than one instance in a RunInstances request.
    SecondaryPrivateIpAddressCount int
    The number of secondary private IPv4 addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option. You cannot specify this option if you're launching more than one instance in a RunInstances request.
    SubnetId string
    The ID of the subnet associated with the network interface.
    AssociatePublicIpAddress bool

    Indicates whether to assign a public IPv4 address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true .

    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 .

    DeleteOnTermination bool
    Indicates whether the network interface is deleted when the instance is terminated.
    Description string
    The description of the network interface. Applies only if creating a network interface when launching an instance.
    DeviceIndex int

    The position of the network interface in the attachment order. A primary network interface has a device index of 0.

    If you specify a network interface when launching an instance, you must specify the device index.

    Groups []string
    The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.
    Ipv6AddressCount int
    A number of IPv6 addresses to assign to the network interface. Amazon EC2 chooses the IPv6 addresses from the range of the subnet. You cannot specify this option and the option to assign specific IPv6 addresses in the same request. You can specify this option if you've specified a minimum number of instances to launch.
    Ipv6Addresses []SpotFleetInstanceIpv6Address
    The IPv6 addresses to assign to the network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch.
    NetworkInterfaceId string

    The ID of the network interface.

    If you are creating a Spot Fleet, omit this parameter because you can’t specify a network interface ID in a launch specification.

    PrivateIpAddresses []SpotFleetPrivateIpAddressSpecification
    The private IPv4 addresses to assign to the network interface. Only one private IPv4 address can be designated as primary. You cannot specify this option if you're launching more than one instance in a RunInstances request.
    SecondaryPrivateIpAddressCount int
    The number of secondary private IPv4 addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option. You cannot specify this option if you're launching more than one instance in a RunInstances request.
    SubnetId string
    The ID of the subnet associated with the network interface.
    associatePublicIpAddress Boolean

    Indicates whether to assign a public IPv4 address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true .

    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 .

    deleteOnTermination Boolean
    Indicates whether the network interface is deleted when the instance is terminated.
    description String
    The description of the network interface. Applies only if creating a network interface when launching an instance.
    deviceIndex Integer

    The position of the network interface in the attachment order. A primary network interface has a device index of 0.

    If you specify a network interface when launching an instance, you must specify the device index.

    groups List<String>
    The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.
    ipv6AddressCount Integer
    A number of IPv6 addresses to assign to the network interface. Amazon EC2 chooses the IPv6 addresses from the range of the subnet. You cannot specify this option and the option to assign specific IPv6 addresses in the same request. You can specify this option if you've specified a minimum number of instances to launch.
    ipv6Addresses List<SpotFleetInstanceIpv6Address>
    The IPv6 addresses to assign to the network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch.
    networkInterfaceId String

    The ID of the network interface.

    If you are creating a Spot Fleet, omit this parameter because you can’t specify a network interface ID in a launch specification.

    privateIpAddresses List<SpotFleetPrivateIpAddressSpecification>
    The private IPv4 addresses to assign to the network interface. Only one private IPv4 address can be designated as primary. You cannot specify this option if you're launching more than one instance in a RunInstances request.
    secondaryPrivateIpAddressCount Integer
    The number of secondary private IPv4 addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option. You cannot specify this option if you're launching more than one instance in a RunInstances request.
    subnetId String
    The ID of the subnet associated with the network interface.
    associatePublicIpAddress boolean

    Indicates whether to assign a public IPv4 address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true .

    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 .

    deleteOnTermination boolean
    Indicates whether the network interface is deleted when the instance is terminated.
    description string
    The description of the network interface. Applies only if creating a network interface when launching an instance.
    deviceIndex number

    The position of the network interface in the attachment order. A primary network interface has a device index of 0.

    If you specify a network interface when launching an instance, you must specify the device index.

    groups string[]
    The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.
    ipv6AddressCount number
    A number of IPv6 addresses to assign to the network interface. Amazon EC2 chooses the IPv6 addresses from the range of the subnet. You cannot specify this option and the option to assign specific IPv6 addresses in the same request. You can specify this option if you've specified a minimum number of instances to launch.
    ipv6Addresses SpotFleetInstanceIpv6Address[]
    The IPv6 addresses to assign to the network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch.
    networkInterfaceId string

    The ID of the network interface.

    If you are creating a Spot Fleet, omit this parameter because you can’t specify a network interface ID in a launch specification.

    privateIpAddresses SpotFleetPrivateIpAddressSpecification[]
    The private IPv4 addresses to assign to the network interface. Only one private IPv4 address can be designated as primary. You cannot specify this option if you're launching more than one instance in a RunInstances request.
    secondaryPrivateIpAddressCount number
    The number of secondary private IPv4 addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option. You cannot specify this option if you're launching more than one instance in a RunInstances request.
    subnetId string
    The ID of the subnet associated with the network interface.
    associate_public_ip_address bool

    Indicates whether to assign a public IPv4 address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true .

    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 .

    delete_on_termination bool
    Indicates whether the network interface is deleted when the instance is terminated.
    description str
    The description of the network interface. Applies only if creating a network interface when launching an instance.
    device_index int

    The position of the network interface in the attachment order. A primary network interface has a device index of 0.

    If you specify a network interface when launching an instance, you must specify the device index.

    groups Sequence[str]
    The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.
    ipv6_address_count int
    A number of IPv6 addresses to assign to the network interface. Amazon EC2 chooses the IPv6 addresses from the range of the subnet. You cannot specify this option and the option to assign specific IPv6 addresses in the same request. You can specify this option if you've specified a minimum number of instances to launch.
    ipv6_addresses Sequence[SpotFleetInstanceIpv6Address]
    The IPv6 addresses to assign to the network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch.
    network_interface_id str

    The ID of the network interface.

    If you are creating a Spot Fleet, omit this parameter because you can’t specify a network interface ID in a launch specification.

    private_ip_addresses Sequence[SpotFleetPrivateIpAddressSpecification]
    The private IPv4 addresses to assign to the network interface. Only one private IPv4 address can be designated as primary. You cannot specify this option if you're launching more than one instance in a RunInstances request.
    secondary_private_ip_address_count int
    The number of secondary private IPv4 addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option. You cannot specify this option if you're launching more than one instance in a RunInstances request.
    subnet_id str
    The ID of the subnet associated with the network interface.
    associatePublicIpAddress Boolean

    Indicates whether to assign a public IPv4 address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true .

    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 .

    deleteOnTermination Boolean
    Indicates whether the network interface is deleted when the instance is terminated.
    description String
    The description of the network interface. Applies only if creating a network interface when launching an instance.
    deviceIndex Number

    The position of the network interface in the attachment order. A primary network interface has a device index of 0.

    If you specify a network interface when launching an instance, you must specify the device index.

    groups List<String>
    The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.
    ipv6AddressCount Number
    A number of IPv6 addresses to assign to the network interface. Amazon EC2 chooses the IPv6 addresses from the range of the subnet. You cannot specify this option and the option to assign specific IPv6 addresses in the same request. You can specify this option if you've specified a minimum number of instances to launch.
    ipv6Addresses List<Property Map>
    The IPv6 addresses to assign to the network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch.
    networkInterfaceId String

    The ID of the network interface.

    If you are creating a Spot Fleet, omit this parameter because you can’t specify a network interface ID in a launch specification.

    privateIpAddresses List<Property Map>
    The private IPv4 addresses to assign to the network interface. Only one private IPv4 address can be designated as primary. You cannot specify this option if you're launching more than one instance in a RunInstances request.
    secondaryPrivateIpAddressCount Number
    The number of secondary private IPv4 addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option. You cannot specify this option if you're launching more than one instance in a RunInstances request.
    subnetId String
    The ID of the subnet associated with the network interface.

    SpotFleetInstanceRequirementsRequest

    AcceleratorCount Pulumi.AwsNative.Ec2.Inputs.SpotFleetAcceleratorCountRequest

    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<Pulumi.AwsNative.Ec2.SpotFleetInstanceRequirementsRequestAcceleratorManufacturersItem>

    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<Pulumi.AwsNative.Ec2.SpotFleetInstanceRequirementsRequestAcceleratorNamesItem>

    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.SpotFleetAcceleratorTotalMemoryMiBRequest

    The minimum and maximum amount of total accelerator memory, in MiB.

    Default: No minimum or maximum limits

    AcceleratorTypes List<Pulumi.AwsNative.Ec2.SpotFleetInstanceRequirementsRequestAcceleratorTypesItem>

    The accelerator types that must be on the instance type.

    • To include instance types with GPU hardware, specify gpu .
    • To include instance types with FPGA hardware, specify fpga .

    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 Pulumi.AwsNative.Ec2.SpotFleetInstanceRequirementsRequestBareMetal

    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.SpotFleetBaselineEbsBandwidthMbpsRequest

    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 Pulumi.AwsNative.Ec2.SpotFleetInstanceRequirementsRequestBurstablePerformance

    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<Pulumi.AwsNative.Ec2.SpotFleetInstanceRequirementsRequestCpuManufacturersItem>

    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 family, 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<Pulumi.AwsNative.Ec2.SpotFleetInstanceRequirementsRequestInstanceGenerationsItem>

    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 Pulumi.AwsNative.Ec2.SpotFleetInstanceRequirementsRequestLocalStorage

    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<Pulumi.AwsNative.Ec2.SpotFleetInstanceRequirementsRequestLocalStorageTypesItem>

    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.SpotFleetMemoryGiBPerVCpuRequest

    The minimum and maximum amount of memory per vCPU, in GiB.

    Default: No minimum or maximum limits

    MemoryMiB Pulumi.AwsNative.Ec2.Inputs.SpotFleetMemoryMiBRequest
    The minimum and maximum amount of memory, in MiB.
    NetworkBandwidthGbps Pulumi.AwsNative.Ec2.Inputs.SpotFleetNetworkBandwidthGbpsRequest

    The minimum and maximum amount of baseline network bandwidth, in gigabits per second (Gbps). For more information, see Amazon EC2 instance network bandwidth in the Amazon EC2 User Guide .

    Default: No minimum or maximum limits

    NetworkInterfaceCount Pulumi.AwsNative.Ec2.Inputs.SpotFleetNetworkInterfaceCountRequest

    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 indicate no price protection threshold, 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.SpotFleetTotalLocalStorageGbRequest

    The minimum and maximum amount of total local storage, in GB.

    Default: No minimum or maximum limits

    VCpuCount Pulumi.AwsNative.Ec2.Inputs.SpotFleetVCpuCountRangeRequest
    The minimum and maximum number of vCPUs.
    AcceleratorCount SpotFleetAcceleratorCountRequest

    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 []SpotFleetInstanceRequirementsRequestAcceleratorManufacturersItem

    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 []SpotFleetInstanceRequirementsRequestAcceleratorNamesItem

    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 SpotFleetAcceleratorTotalMemoryMiBRequest

    The minimum and maximum amount of total accelerator memory, in MiB.

    Default: No minimum or maximum limits

    AcceleratorTypes []SpotFleetInstanceRequirementsRequestAcceleratorTypesItem

    The accelerator types that must be on the instance type.

    • To include instance types with GPU hardware, specify gpu .
    • To include instance types with FPGA hardware, specify fpga .

    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 SpotFleetInstanceRequirementsRequestBareMetal

    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 SpotFleetBaselineEbsBandwidthMbpsRequest

    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 SpotFleetInstanceRequirementsRequestBurstablePerformance

    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 []SpotFleetInstanceRequirementsRequestCpuManufacturersItem

    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 family, 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 []SpotFleetInstanceRequirementsRequestInstanceGenerationsItem

    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 SpotFleetInstanceRequirementsRequestLocalStorage

    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 []SpotFleetInstanceRequirementsRequestLocalStorageTypesItem

    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 SpotFleetMemoryGiBPerVCpuRequest

    The minimum and maximum amount of memory per vCPU, in GiB.

    Default: No minimum or maximum limits

    MemoryMiB SpotFleetMemoryMiBRequest
    The minimum and maximum amount of memory, in MiB.
    NetworkBandwidthGbps SpotFleetNetworkBandwidthGbpsRequest

    The minimum and maximum amount of baseline network bandwidth, in gigabits per second (Gbps). For more information, see Amazon EC2 instance network bandwidth in the Amazon EC2 User Guide .

    Default: No minimum or maximum limits

    NetworkInterfaceCount SpotFleetNetworkInterfaceCountRequest

    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 indicate no price protection threshold, 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 SpotFleetTotalLocalStorageGbRequest

    The minimum and maximum amount of total local storage, in GB.

    Default: No minimum or maximum limits

    VCpuCount SpotFleetVCpuCountRangeRequest
    The minimum and maximum number of vCPUs.
    acceleratorCount SpotFleetAcceleratorCountRequest

    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<SpotFleetInstanceRequirementsRequestAcceleratorManufacturersItem>

    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<SpotFleetInstanceRequirementsRequestAcceleratorNamesItem>

    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 SpotFleetAcceleratorTotalMemoryMiBRequest

    The minimum and maximum amount of total accelerator memory, in MiB.

    Default: No minimum or maximum limits

    acceleratorTypes List<SpotFleetInstanceRequirementsRequestAcceleratorTypesItem>

    The accelerator types that must be on the instance type.

    • To include instance types with GPU hardware, specify gpu .
    • To include instance types with FPGA hardware, specify fpga .

    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 SpotFleetInstanceRequirementsRequestBareMetal

    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 SpotFleetBaselineEbsBandwidthMbpsRequest

    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 SpotFleetInstanceRequirementsRequestBurstablePerformance

    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<SpotFleetInstanceRequirementsRequestCpuManufacturersItem>

    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 family, 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<SpotFleetInstanceRequirementsRequestInstanceGenerationsItem>

    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 SpotFleetInstanceRequirementsRequestLocalStorage

    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<SpotFleetInstanceRequirementsRequestLocalStorageTypesItem>

    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 SpotFleetMemoryGiBPerVCpuRequest

    The minimum and maximum amount of memory per vCPU, in GiB.

    Default: No minimum or maximum limits

    memoryMiB SpotFleetMemoryMiBRequest
    The minimum and maximum amount of memory, in MiB.
    networkBandwidthGbps SpotFleetNetworkBandwidthGbpsRequest

    The minimum and maximum amount of baseline network bandwidth, in gigabits per second (Gbps). For more information, see Amazon EC2 instance network bandwidth in the Amazon EC2 User Guide .

    Default: No minimum or maximum limits

    networkInterfaceCount SpotFleetNetworkInterfaceCountRequest

    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 indicate no price protection threshold, 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 SpotFleetTotalLocalStorageGbRequest

    The minimum and maximum amount of total local storage, in GB.

    Default: No minimum or maximum limits

    vCpuCount SpotFleetVCpuCountRangeRequest
    The minimum and maximum number of vCPUs.
    acceleratorCount SpotFleetAcceleratorCountRequest

    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 SpotFleetInstanceRequirementsRequestAcceleratorManufacturersItem[]

    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 SpotFleetInstanceRequirementsRequestAcceleratorNamesItem[]

    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 SpotFleetAcceleratorTotalMemoryMiBRequest

    The minimum and maximum amount of total accelerator memory, in MiB.

    Default: No minimum or maximum limits

    acceleratorTypes SpotFleetInstanceRequirementsRequestAcceleratorTypesItem[]

    The accelerator types that must be on the instance type.

    • To include instance types with GPU hardware, specify gpu .
    • To include instance types with FPGA hardware, specify fpga .

    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 SpotFleetInstanceRequirementsRequestBareMetal

    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 SpotFleetBaselineEbsBandwidthMbpsRequest

    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 SpotFleetInstanceRequirementsRequestBurstablePerformance

    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 SpotFleetInstanceRequirementsRequestCpuManufacturersItem[]

    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 family, 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 SpotFleetInstanceRequirementsRequestInstanceGenerationsItem[]

    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 SpotFleetInstanceRequirementsRequestLocalStorage

    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 SpotFleetInstanceRequirementsRequestLocalStorageTypesItem[]

    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 SpotFleetMemoryGiBPerVCpuRequest

    The minimum and maximum amount of memory per vCPU, in GiB.

    Default: No minimum or maximum limits

    memoryMiB SpotFleetMemoryMiBRequest
    The minimum and maximum amount of memory, in MiB.
    networkBandwidthGbps SpotFleetNetworkBandwidthGbpsRequest

    The minimum and maximum amount of baseline network bandwidth, in gigabits per second (Gbps). For more information, see Amazon EC2 instance network bandwidth in the Amazon EC2 User Guide .

    Default: No minimum or maximum limits

    networkInterfaceCount SpotFleetNetworkInterfaceCountRequest

    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 indicate no price protection threshold, 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 SpotFleetTotalLocalStorageGbRequest

    The minimum and maximum amount of total local storage, in GB.

    Default: No minimum or maximum limits

    vCpuCount SpotFleetVCpuCountRangeRequest
    The minimum and maximum number of vCPUs.
    accelerator_count SpotFleetAcceleratorCountRequest

    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[SpotFleetInstanceRequirementsRequestAcceleratorManufacturersItem]

    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[SpotFleetInstanceRequirementsRequestAcceleratorNamesItem]

    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 SpotFleetAcceleratorTotalMemoryMiBRequest

    The minimum and maximum amount of total accelerator memory, in MiB.

    Default: No minimum or maximum limits

    accelerator_types Sequence[SpotFleetInstanceRequirementsRequestAcceleratorTypesItem]

    The accelerator types that must be on the instance type.

    • To include instance types with GPU hardware, specify gpu .
    • To include instance types with FPGA hardware, specify fpga .

    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 SpotFleetInstanceRequirementsRequestBareMetal

    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 SpotFleetBaselineEbsBandwidthMbpsRequest

    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 SpotFleetInstanceRequirementsRequestBurstablePerformance

    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[SpotFleetInstanceRequirementsRequestCpuManufacturersItem]

    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 family, 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[SpotFleetInstanceRequirementsRequestInstanceGenerationsItem]

    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 SpotFleetInstanceRequirementsRequestLocalStorage

    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[SpotFleetInstanceRequirementsRequestLocalStorageTypesItem]

    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 SpotFleetMemoryGiBPerVCpuRequest

    The minimum and maximum amount of memory per vCPU, in GiB.

    Default: No minimum or maximum limits

    memory_mi_b SpotFleetMemoryMiBRequest
    The minimum and maximum amount of memory, in MiB.
    network_bandwidth_gbps SpotFleetNetworkBandwidthGbpsRequest

    The minimum and maximum amount of baseline network bandwidth, in gigabits per second (Gbps). For more information, see Amazon EC2 instance network bandwidth in the Amazon EC2 User Guide .

    Default: No minimum or maximum limits

    network_interface_count SpotFleetNetworkInterfaceCountRequest

    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 indicate no price protection threshold, 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 SpotFleetTotalLocalStorageGbRequest

    The minimum and maximum amount of total local storage, in GB.

    Default: No minimum or maximum limits

    v_cpu_count SpotFleetVCpuCountRangeRequest
    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<"amazon-web-services" | "amd" | "habana" | "nvidia" | "xilinx">

    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<"a10g" | "a100" | "h100" | "inferentia" | "k520" | "k80" | "m60" | "radeon-pro-v520" | "t4" | "t4g" | "vu9p" | "v100">

    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<"gpu" | "fpga" | "inference">

    The accelerator types that must be on the instance type.

    • To include instance types with GPU hardware, specify gpu .
    • To include instance types with FPGA hardware, specify fpga .

    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 "included" | "required" | "excluded"

    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 "included" | "required" | "excluded"

    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<"intel" | "amd" | "amazon-web-services" | "apple">

    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 family, 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<"current" | "previous">

    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 "included" | "required" | "excluded"

    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<"hdd" | "ssd">

    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 baseline network bandwidth, in gigabits per second (Gbps). For more information, see Amazon EC2 instance network bandwidth in the Amazon EC2 User Guide .

    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 indicate no price protection threshold, 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.

    SpotFleetInstanceRequirementsRequestAcceleratorManufacturersItem

    SpotFleetInstanceRequirementsRequestAcceleratorNamesItem

    SpotFleetInstanceRequirementsRequestAcceleratorTypesItem

    SpotFleetInstanceRequirementsRequestBareMetal

    SpotFleetInstanceRequirementsRequestBurstablePerformance

    SpotFleetInstanceRequirementsRequestCpuManufacturersItem

    SpotFleetInstanceRequirementsRequestInstanceGenerationsItem

    SpotFleetInstanceRequirementsRequestLocalStorage

    SpotFleetInstanceRequirementsRequestLocalStorageTypesItem

    SpotFleetLaunchSpecification

    ImageId string
    The ID of the AMI.
    BlockDeviceMappings List<Pulumi.AwsNative.Ec2.Inputs.SpotFleetBlockDeviceMapping>
    One or more block devices that are mapped to the Spot Instances. You can't specify both a snapshot ID and an encryption value. This is because only blank volumes can be encrypted on creation. If a snapshot is the basis for a volume, it is not blank and its encryption status is used for the volume encryption status.
    EbsOptimized bool

    Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

    Default: false

    IamInstanceProfile Pulumi.AwsNative.Ec2.Inputs.SpotFleetIamInstanceProfileSpecification
    The IAM instance profile.
    InstanceRequirements Pulumi.AwsNative.Ec2.Inputs.SpotFleetInstanceRequirementsRequest

    The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

    If you specify InstanceRequirements , you can't specify InstanceType .

    InstanceType string
    The instance type.
    KernelId string
    The ID of the kernel.
    KeyName string
    The name of the key pair.
    Monitoring Pulumi.AwsNative.Ec2.Inputs.SpotFleetMonitoring
    Enable or disable monitoring for the instances.
    NetworkInterfaces List<Pulumi.AwsNative.Ec2.Inputs.SpotFleetInstanceNetworkInterfaceSpecification>
    The network interfaces.
    Placement Pulumi.AwsNative.Ec2.Inputs.SpotFleetSpotPlacement
    The placement information.
    RamdiskId string
    The ID of the RAM disk. Some kernels require additional drivers at launch. Check the kernel requirements for information about whether you need to specify a RAM disk. To find kernel requirements, refer to the AWS Resource Center and search for the kernel ID.
    SecurityGroups List<Pulumi.AwsNative.Ec2.Inputs.SpotFleetGroupIdentifier>

    The security groups.

    If you specify a network interface, you must specify any security groups as part of the network interface instead of using this parameter.

    SpotPrice string

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    SubnetId string

    The IDs of the subnets in which to launch the instances. To specify multiple subnets, separate them using commas; for example, "subnet-1234abcdeexample1, subnet-0987cdef6example2".

    If you specify a network interface, you must specify any subnets as part of the network interface instead of using this parameter.

    TagSpecifications List<Pulumi.AwsNative.Ec2.Inputs.SpotFleetTagSpecification>
    The tags to apply during creation.
    UserData string
    The base64-encoded user data that instances use when starting up. User data is limited to 16 KB.
    WeightedCapacity double

    The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

    If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

    When specifying weights, the price used in the lowestPrice and priceCapacityOptimized allocation strategies is per unit hour (where the instance price is divided by the specified weight). However, if all the specified weights are above the requested TargetCapacity , resulting in only 1 instance being launched, the price used is per instance hour.

    ImageId string
    The ID of the AMI.
    BlockDeviceMappings []SpotFleetBlockDeviceMapping
    One or more block devices that are mapped to the Spot Instances. You can't specify both a snapshot ID and an encryption value. This is because only blank volumes can be encrypted on creation. If a snapshot is the basis for a volume, it is not blank and its encryption status is used for the volume encryption status.
    EbsOptimized bool

    Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

    Default: false

    IamInstanceProfile SpotFleetIamInstanceProfileSpecification
    The IAM instance profile.
    InstanceRequirements SpotFleetInstanceRequirementsRequest

    The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

    If you specify InstanceRequirements , you can't specify InstanceType .

    InstanceType string
    The instance type.
    KernelId string
    The ID of the kernel.
    KeyName string
    The name of the key pair.
    Monitoring SpotFleetMonitoring
    Enable or disable monitoring for the instances.
    NetworkInterfaces []SpotFleetInstanceNetworkInterfaceSpecification
    The network interfaces.
    Placement SpotFleetSpotPlacement
    The placement information.
    RamdiskId string
    The ID of the RAM disk. Some kernels require additional drivers at launch. Check the kernel requirements for information about whether you need to specify a RAM disk. To find kernel requirements, refer to the AWS Resource Center and search for the kernel ID.
    SecurityGroups []SpotFleetGroupIdentifier

    The security groups.

    If you specify a network interface, you must specify any security groups as part of the network interface instead of using this parameter.

    SpotPrice string

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    SubnetId string

    The IDs of the subnets in which to launch the instances. To specify multiple subnets, separate them using commas; for example, "subnet-1234abcdeexample1, subnet-0987cdef6example2".

    If you specify a network interface, you must specify any subnets as part of the network interface instead of using this parameter.

    TagSpecifications []SpotFleetTagSpecification
    The tags to apply during creation.
    UserData string
    The base64-encoded user data that instances use when starting up. User data is limited to 16 KB.
    WeightedCapacity float64

    The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

    If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

    When specifying weights, the price used in the lowestPrice and priceCapacityOptimized allocation strategies is per unit hour (where the instance price is divided by the specified weight). However, if all the specified weights are above the requested TargetCapacity , resulting in only 1 instance being launched, the price used is per instance hour.

    imageId String
    The ID of the AMI.
    blockDeviceMappings List<SpotFleetBlockDeviceMapping>
    One or more block devices that are mapped to the Spot Instances. You can't specify both a snapshot ID and an encryption value. This is because only blank volumes can be encrypted on creation. If a snapshot is the basis for a volume, it is not blank and its encryption status is used for the volume encryption status.
    ebsOptimized Boolean

    Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

    Default: false

    iamInstanceProfile SpotFleetIamInstanceProfileSpecification
    The IAM instance profile.
    instanceRequirements SpotFleetInstanceRequirementsRequest

    The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

    If you specify InstanceRequirements , you can't specify InstanceType .

    instanceType String
    The instance type.
    kernelId String
    The ID of the kernel.
    keyName String
    The name of the key pair.
    monitoring SpotFleetMonitoring
    Enable or disable monitoring for the instances.
    networkInterfaces List<SpotFleetInstanceNetworkInterfaceSpecification>
    The network interfaces.
    placement SpotFleetSpotPlacement
    The placement information.
    ramdiskId String
    The ID of the RAM disk. Some kernels require additional drivers at launch. Check the kernel requirements for information about whether you need to specify a RAM disk. To find kernel requirements, refer to the AWS Resource Center and search for the kernel ID.
    securityGroups List<SpotFleetGroupIdentifier>

    The security groups.

    If you specify a network interface, you must specify any security groups as part of the network interface instead of using this parameter.

    spotPrice String

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    subnetId String

    The IDs of the subnets in which to launch the instances. To specify multiple subnets, separate them using commas; for example, "subnet-1234abcdeexample1, subnet-0987cdef6example2".

    If you specify a network interface, you must specify any subnets as part of the network interface instead of using this parameter.

    tagSpecifications List<SpotFleetTagSpecification>
    The tags to apply during creation.
    userData String
    The base64-encoded user data that instances use when starting up. User data is limited to 16 KB.
    weightedCapacity Double

    The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

    If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

    When specifying weights, the price used in the lowestPrice and priceCapacityOptimized allocation strategies is per unit hour (where the instance price is divided by the specified weight). However, if all the specified weights are above the requested TargetCapacity , resulting in only 1 instance being launched, the price used is per instance hour.

    imageId string
    The ID of the AMI.
    blockDeviceMappings SpotFleetBlockDeviceMapping[]
    One or more block devices that are mapped to the Spot Instances. You can't specify both a snapshot ID and an encryption value. This is because only blank volumes can be encrypted on creation. If a snapshot is the basis for a volume, it is not blank and its encryption status is used for the volume encryption status.
    ebsOptimized boolean

    Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

    Default: false

    iamInstanceProfile SpotFleetIamInstanceProfileSpecification
    The IAM instance profile.
    instanceRequirements SpotFleetInstanceRequirementsRequest

    The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

    If you specify InstanceRequirements , you can't specify InstanceType .

    instanceType string
    The instance type.
    kernelId string
    The ID of the kernel.
    keyName string
    The name of the key pair.
    monitoring SpotFleetMonitoring
    Enable or disable monitoring for the instances.
    networkInterfaces SpotFleetInstanceNetworkInterfaceSpecification[]
    The network interfaces.
    placement SpotFleetSpotPlacement
    The placement information.
    ramdiskId string
    The ID of the RAM disk. Some kernels require additional drivers at launch. Check the kernel requirements for information about whether you need to specify a RAM disk. To find kernel requirements, refer to the AWS Resource Center and search for the kernel ID.
    securityGroups SpotFleetGroupIdentifier[]

    The security groups.

    If you specify a network interface, you must specify any security groups as part of the network interface instead of using this parameter.

    spotPrice string

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    subnetId string

    The IDs of the subnets in which to launch the instances. To specify multiple subnets, separate them using commas; for example, "subnet-1234abcdeexample1, subnet-0987cdef6example2".

    If you specify a network interface, you must specify any subnets as part of the network interface instead of using this parameter.

    tagSpecifications SpotFleetTagSpecification[]
    The tags to apply during creation.
    userData string
    The base64-encoded user data that instances use when starting up. User data is limited to 16 KB.
    weightedCapacity number

    The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

    If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

    When specifying weights, the price used in the lowestPrice and priceCapacityOptimized allocation strategies is per unit hour (where the instance price is divided by the specified weight). However, if all the specified weights are above the requested TargetCapacity , resulting in only 1 instance being launched, the price used is per instance hour.

    image_id str
    The ID of the AMI.
    block_device_mappings Sequence[SpotFleetBlockDeviceMapping]
    One or more block devices that are mapped to the Spot Instances. You can't specify both a snapshot ID and an encryption value. This is because only blank volumes can be encrypted on creation. If a snapshot is the basis for a volume, it is not blank and its encryption status is used for the volume encryption status.
    ebs_optimized bool

    Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

    Default: false

    iam_instance_profile SpotFleetIamInstanceProfileSpecification
    The IAM instance profile.
    instance_requirements SpotFleetInstanceRequirementsRequest

    The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

    If you specify InstanceRequirements , you can't specify InstanceType .

    instance_type str
    The instance type.
    kernel_id str
    The ID of the kernel.
    key_name str
    The name of the key pair.
    monitoring SpotFleetMonitoring
    Enable or disable monitoring for the instances.
    network_interfaces Sequence[SpotFleetInstanceNetworkInterfaceSpecification]
    The network interfaces.
    placement SpotFleetSpotPlacement
    The placement information.
    ramdisk_id str
    The ID of the RAM disk. Some kernels require additional drivers at launch. Check the kernel requirements for information about whether you need to specify a RAM disk. To find kernel requirements, refer to the AWS Resource Center and search for the kernel ID.
    security_groups Sequence[SpotFleetGroupIdentifier]

    The security groups.

    If you specify a network interface, you must specify any security groups as part of the network interface instead of using this parameter.

    spot_price str

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    subnet_id str

    The IDs of the subnets in which to launch the instances. To specify multiple subnets, separate them using commas; for example, "subnet-1234abcdeexample1, subnet-0987cdef6example2".

    If you specify a network interface, you must specify any subnets as part of the network interface instead of using this parameter.

    tag_specifications Sequence[SpotFleetTagSpecification]
    The tags to apply during creation.
    user_data str
    The base64-encoded user data that instances use when starting up. User data is limited to 16 KB.
    weighted_capacity float

    The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

    If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

    When specifying weights, the price used in the lowestPrice and priceCapacityOptimized allocation strategies is per unit hour (where the instance price is divided by the specified weight). However, if all the specified weights are above the requested TargetCapacity , resulting in only 1 instance being launched, the price used is per instance hour.

    imageId String
    The ID of the AMI.
    blockDeviceMappings List<Property Map>
    One or more block devices that are mapped to the Spot Instances. You can't specify both a snapshot ID and an encryption value. This is because only blank volumes can be encrypted on creation. If a snapshot is the basis for a volume, it is not blank and its encryption status is used for the volume encryption status.
    ebsOptimized Boolean

    Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

    Default: false

    iamInstanceProfile Property Map
    The IAM instance profile.
    instanceRequirements Property Map

    The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

    If you specify InstanceRequirements , you can't specify InstanceType .

    instanceType String
    The instance type.
    kernelId String
    The ID of the kernel.
    keyName String
    The name of the key pair.
    monitoring Property Map
    Enable or disable monitoring for the instances.
    networkInterfaces List<Property Map>
    The network interfaces.
    placement Property Map
    The placement information.
    ramdiskId String
    The ID of the RAM disk. Some kernels require additional drivers at launch. Check the kernel requirements for information about whether you need to specify a RAM disk. To find kernel requirements, refer to the AWS Resource Center and search for the kernel ID.
    securityGroups List<Property Map>

    The security groups.

    If you specify a network interface, you must specify any security groups as part of the network interface instead of using this parameter.

    spotPrice String

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    subnetId String

    The IDs of the subnets in which to launch the instances. To specify multiple subnets, separate them using commas; for example, "subnet-1234abcdeexample1, subnet-0987cdef6example2".

    If you specify a network interface, you must specify any subnets as part of the network interface instead of using this parameter.

    tagSpecifications List<Property Map>
    The tags to apply during creation.
    userData String
    The base64-encoded user data that instances use when starting up. User data is limited to 16 KB.
    weightedCapacity Number

    The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

    If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

    When specifying weights, the price used in the lowestPrice and priceCapacityOptimized allocation strategies is per unit hour (where the instance price is divided by the specified weight). However, if all the specified weights are above the requested TargetCapacity , resulting in only 1 instance being launched, the price used is per instance hour.

    SpotFleetLaunchTemplateConfig

    LaunchTemplateSpecification Pulumi.AwsNative.Ec2.Inputs.SpotFleetFleetLaunchTemplateSpecification
    The launch template to use. Make sure that the launch template does not contain the NetworkInterfaceId parameter because you can't specify a network interface ID in a Spot Fleet.
    Overrides List<Pulumi.AwsNative.Ec2.Inputs.SpotFleetLaunchTemplateOverrides>
    Any parameters that you specify override the same parameters in the launch template.
    LaunchTemplateSpecification SpotFleetFleetLaunchTemplateSpecification
    The launch template to use. Make sure that the launch template does not contain the NetworkInterfaceId parameter because you can't specify a network interface ID in a Spot Fleet.
    Overrides []SpotFleetLaunchTemplateOverrides
    Any parameters that you specify override the same parameters in the launch template.
    launchTemplateSpecification SpotFleetFleetLaunchTemplateSpecification
    The launch template to use. Make sure that the launch template does not contain the NetworkInterfaceId parameter because you can't specify a network interface ID in a Spot Fleet.
    overrides List<SpotFleetLaunchTemplateOverrides>
    Any parameters that you specify override the same parameters in the launch template.
    launchTemplateSpecification SpotFleetFleetLaunchTemplateSpecification
    The launch template to use. Make sure that the launch template does not contain the NetworkInterfaceId parameter because you can't specify a network interface ID in a Spot Fleet.
    overrides SpotFleetLaunchTemplateOverrides[]
    Any parameters that you specify override the same parameters in the launch template.
    launch_template_specification SpotFleetFleetLaunchTemplateSpecification
    The launch template to use. Make sure that the launch template does not contain the NetworkInterfaceId parameter because you can't specify a network interface ID in a Spot Fleet.
    overrides Sequence[SpotFleetLaunchTemplateOverrides]
    Any parameters that you specify override the same parameters in the launch template.
    launchTemplateSpecification Property Map
    The launch template to use. Make sure that the launch template does not contain the NetworkInterfaceId parameter because you can't specify a network interface ID in a Spot Fleet.
    overrides List<Property Map>
    Any parameters that you specify override the same parameters in the launch template.

    SpotFleetLaunchTemplateOverrides

    AvailabilityZone string
    The Availability Zone in which to launch the instances.
    InstanceRequirements Pulumi.AwsNative.Ec2.Inputs.SpotFleetInstanceRequirementsRequest

    The instance requirements. When you specify instance requirements, Amazon EC2 will identify instance types with the provided requirements, and then use your On-Demand and Spot allocation strategies to launch instances from these instance types, in the same way as when you specify a list of instance types.

    If you specify InstanceRequirements , you can't specify InstanceType .

    InstanceType string
    The instance type.
    Priority double

    The priority for the launch template override. The highest priority is launched first.

    If OnDemandAllocationStrategy is set to prioritized , Spot Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity.

    If the Spot AllocationStrategy is set to capacityOptimizedPrioritized , Spot Fleet uses priority on a best-effort basis to determine which launch template override to use in fulfilling Spot capacity, but optimizes for capacity first.

    Valid values are whole numbers starting at 0 . The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority. You can set the same priority for different launch template overrides.

    SpotPrice string

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    SubnetId string
    The ID of the subnet in which to launch the instances.
    WeightedCapacity double

    The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

    If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

    When specifying weights, the price used in the lowestPrice and priceCapacityOptimized allocation strategies is per unit hour (where the instance price is divided by the specified weight). However, if all the specified weights are above the requested TargetCapacity , resulting in only 1 instance being launched, the price used is per instance hour.

    AvailabilityZone string
    The Availability Zone in which to launch the instances.
    InstanceRequirements SpotFleetInstanceRequirementsRequest

    The instance requirements. When you specify instance requirements, Amazon EC2 will identify instance types with the provided requirements, and then use your On-Demand and Spot allocation strategies to launch instances from these instance types, in the same way as when you specify a list of instance types.

    If you specify InstanceRequirements , you can't specify InstanceType .

    InstanceType string
    The instance type.
    Priority float64

    The priority for the launch template override. The highest priority is launched first.

    If OnDemandAllocationStrategy is set to prioritized , Spot Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity.

    If the Spot AllocationStrategy is set to capacityOptimizedPrioritized , Spot Fleet uses priority on a best-effort basis to determine which launch template override to use in fulfilling Spot capacity, but optimizes for capacity first.

    Valid values are whole numbers starting at 0 . The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority. You can set the same priority for different launch template overrides.

    SpotPrice string

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    SubnetId string
    The ID of the subnet in which to launch the instances.
    WeightedCapacity float64

    The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

    If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

    When specifying weights, the price used in the lowestPrice and priceCapacityOptimized allocation strategies is per unit hour (where the instance price is divided by the specified weight). However, if all the specified weights are above the requested TargetCapacity , resulting in only 1 instance being launched, the price used is per instance hour.

    availabilityZone String
    The Availability Zone in which to launch the instances.
    instanceRequirements SpotFleetInstanceRequirementsRequest

    The instance requirements. When you specify instance requirements, Amazon EC2 will identify instance types with the provided requirements, and then use your On-Demand and Spot allocation strategies to launch instances from these instance types, in the same way as when you specify a list of instance types.

    If you specify InstanceRequirements , you can't specify InstanceType .

    instanceType String
    The instance type.
    priority Double

    The priority for the launch template override. The highest priority is launched first.

    If OnDemandAllocationStrategy is set to prioritized , Spot Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity.

    If the Spot AllocationStrategy is set to capacityOptimizedPrioritized , Spot Fleet uses priority on a best-effort basis to determine which launch template override to use in fulfilling Spot capacity, but optimizes for capacity first.

    Valid values are whole numbers starting at 0 . The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority. You can set the same priority for different launch template overrides.

    spotPrice String

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    subnetId String
    The ID of the subnet in which to launch the instances.
    weightedCapacity Double

    The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

    If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

    When specifying weights, the price used in the lowestPrice and priceCapacityOptimized allocation strategies is per unit hour (where the instance price is divided by the specified weight). However, if all the specified weights are above the requested TargetCapacity , resulting in only 1 instance being launched, the price used is per instance hour.

    availabilityZone string
    The Availability Zone in which to launch the instances.
    instanceRequirements SpotFleetInstanceRequirementsRequest

    The instance requirements. When you specify instance requirements, Amazon EC2 will identify instance types with the provided requirements, and then use your On-Demand and Spot allocation strategies to launch instances from these instance types, in the same way as when you specify a list of instance types.

    If you specify InstanceRequirements , you can't specify InstanceType .

    instanceType string
    The instance type.
    priority number

    The priority for the launch template override. The highest priority is launched first.

    If OnDemandAllocationStrategy is set to prioritized , Spot Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity.

    If the Spot AllocationStrategy is set to capacityOptimizedPrioritized , Spot Fleet uses priority on a best-effort basis to determine which launch template override to use in fulfilling Spot capacity, but optimizes for capacity first.

    Valid values are whole numbers starting at 0 . The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority. You can set the same priority for different launch template overrides.

    spotPrice string

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    subnetId string
    The ID of the subnet in which to launch the instances.
    weightedCapacity number

    The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

    If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

    When specifying weights, the price used in the lowestPrice and priceCapacityOptimized allocation strategies is per unit hour (where the instance price is divided by the specified weight). However, if all the specified weights are above the requested TargetCapacity , resulting in only 1 instance being launched, the price used is per instance hour.

    availability_zone str
    The Availability Zone in which to launch the instances.
    instance_requirements SpotFleetInstanceRequirementsRequest

    The instance requirements. When you specify instance requirements, Amazon EC2 will identify instance types with the provided requirements, and then use your On-Demand and Spot allocation strategies to launch instances from these instance types, in the same way as when you specify a list of instance types.

    If you specify InstanceRequirements , you can't specify InstanceType .

    instance_type str
    The instance type.
    priority float

    The priority for the launch template override. The highest priority is launched first.

    If OnDemandAllocationStrategy is set to prioritized , Spot Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity.

    If the Spot AllocationStrategy is set to capacityOptimizedPrioritized , Spot Fleet uses priority on a best-effort basis to determine which launch template override to use in fulfilling Spot capacity, but optimizes for capacity first.

    Valid values are whole numbers starting at 0 . The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority. You can set the same priority for different launch template overrides.

    spot_price str

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    subnet_id str
    The ID of the subnet in which to launch the instances.
    weighted_capacity float

    The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

    If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

    When specifying weights, the price used in the lowestPrice and priceCapacityOptimized allocation strategies is per unit hour (where the instance price is divided by the specified weight). However, if all the specified weights are above the requested TargetCapacity , resulting in only 1 instance being launched, the price used is per instance hour.

    availabilityZone String
    The Availability Zone in which to launch the instances.
    instanceRequirements Property Map

    The instance requirements. When you specify instance requirements, Amazon EC2 will identify instance types with the provided requirements, and then use your On-Demand and Spot allocation strategies to launch instances from these instance types, in the same way as when you specify a list of instance types.

    If you specify InstanceRequirements , you can't specify InstanceType .

    instanceType String
    The instance type.
    priority Number

    The priority for the launch template override. The highest priority is launched first.

    If OnDemandAllocationStrategy is set to prioritized , Spot Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity.

    If the Spot AllocationStrategy is set to capacityOptimizedPrioritized , Spot Fleet uses priority on a best-effort basis to determine which launch template override to use in fulfilling Spot capacity, but optimizes for capacity first.

    Valid values are whole numbers starting at 0 . The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority. You can set the same priority for different launch template overrides.

    spotPrice String

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    subnetId String
    The ID of the subnet in which to launch the instances.
    weightedCapacity Number

    The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

    If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

    When specifying weights, the price used in the lowestPrice and priceCapacityOptimized allocation strategies is per unit hour (where the instance price is divided by the specified weight). However, if all the specified weights are above the requested TargetCapacity , resulting in only 1 instance being launched, the price used is per instance hour.

    SpotFleetLoadBalancersConfig

    classicLoadBalancersConfig Property Map
    The Classic Load Balancers.
    targetGroupsConfig Property Map
    The target groups.

    SpotFleetMemoryGiBPerVCpuRequest

    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.

    SpotFleetMemoryMiBRequest

    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 .

    SpotFleetMonitoring

    Enabled bool

    Enables monitoring for the instance.

    Default: false

    Enabled bool

    Enables monitoring for the instance.

    Default: false

    enabled Boolean

    Enables monitoring for the instance.

    Default: false

    enabled boolean

    Enables monitoring for the instance.

    Default: false

    enabled bool

    Enables monitoring for the instance.

    Default: false

    enabled Boolean

    Enables monitoring for the instance.

    Default: false

    SpotFleetNetworkBandwidthGbpsRequest

    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. To specify no minimum limit, omit this parameter.
    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. To specify no minimum limit, omit this parameter.
    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. To specify no minimum limit, omit this parameter.
    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. To specify no minimum limit, omit this parameter.
    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. To specify no minimum limit, omit this parameter.
    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. To specify no minimum limit, omit this parameter.

    SpotFleetNetworkInterfaceCountRequest

    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.

    SpotFleetPrivateIpAddressSpecification

    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 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.
    private_ip_address str
    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.

    SpotFleetRequestConfigData

    IamFleetRole string
    The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that grants the Spot Fleet the permission to request, launch, terminate, and tag instances on your behalf. For more information, see Spot Fleet Prerequisites in the Amazon EC2 User Guide . Spot Fleet can terminate Spot Instances on your behalf when you cancel its Spot Fleet request or when the Spot Fleet request expires, if you set TerminateInstancesWithExpiration .
    TargetCapacity int
    The number of units to request for the Spot Fleet. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain , you can specify a target capacity of 0 and add capacity later.
    AllocationStrategy Pulumi.AwsNative.Ec2.SpotFleetRequestConfigDataAllocationStrategy

    The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the Spot Fleet launch configuration. For more information, see Allocation strategies for Spot Instances in the Amazon EC2 User Guide .

    • priceCapacityOptimized (recommended) - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. Spot Fleet then requests Spot Instances from the lowest priced of these pools.
    • capacityOptimized - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. To give certain instance types a higher chance of launching first, use capacityOptimizedPrioritized . Set a priority for each instance type by using the Priority parameter for LaunchTemplateOverrides . You can assign the same priority to different LaunchTemplateOverrides . EC2 implements the priorities on a best-effort basis, but optimizes for capacity first. capacityOptimizedPrioritized is supported only if your Spot Fleet uses a launch template. Note that if the OnDemandAllocationStrategy is set to prioritized , the same priority is applied when fulfilling On-Demand capacity.
    • diversified - Spot Fleet requests instances from all of the Spot Instance pools that you specify.
    • lowestPrice (not recommended) - > We don't recommend the lowestPrice allocation strategy because it has the highest risk of interruption for your Spot Instances.

    Spot Fleet requests instances from the lowest priced Spot Instance pool that has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances come from the next lowest priced pool that has available capacity. If a pool runs out of capacity before fulfilling your desired capacity, Spot Fleet will continue to fulfill your request by drawing from the next lowest priced pool. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. Because this strategy only considers instance price and not capacity availability, it might lead to high interruption rates.

    Default: lowestPrice

    Context string
    Reserved.
    ExcessCapacityTerminationPolicy Pulumi.AwsNative.Ec2.SpotFleetRequestConfigDataExcessCapacityTerminationPolicy

    Indicates whether running Spot Instances should be terminated if you decrease the target capacity of the Spot Fleet request below the current size of the Spot Fleet.

    Supported only for fleets of type maintain .

    InstanceInterruptionBehavior Pulumi.AwsNative.Ec2.SpotFleetRequestConfigDataInstanceInterruptionBehavior
    The behavior when a Spot Instance is interrupted. The default is terminate .
    InstancePoolsToUseCount int

    The number of Spot pools across which to allocate your target Spot capacity. Valid only when Spot AllocationStrategy is set to lowest-price . Spot Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.

    Note that Spot Fleet attempts to draw Spot Instances from the number of pools that you specify on a best effort basis. If a pool runs out of Spot capacity before fulfilling your target capacity, Spot Fleet will continue to fulfill your request by drawing from the next cheapest pool. To ensure that your target capacity is met, you might receive Spot Instances from more than the number of pools that you specified. Similarly, if most of the pools have no Spot capacity, you might receive your full target capacity from fewer than the number of pools that you specified.

    LaunchSpecifications List<Pulumi.AwsNative.Ec2.Inputs.SpotFleetLaunchSpecification>
    The launch specifications for the Spot Fleet request. If you specify LaunchSpecifications , you can't specify LaunchTemplateConfigs .
    LaunchTemplateConfigs List<Pulumi.AwsNative.Ec2.Inputs.SpotFleetLaunchTemplateConfig>
    The launch template and overrides. If you specify LaunchTemplateConfigs , you can't specify LaunchSpecifications .
    LoadBalancersConfig Pulumi.AwsNative.Ec2.Inputs.SpotFleetLoadBalancersConfig

    One or more Classic Load Balancers and target groups to attach to the Spot Fleet request. Spot Fleet registers the running Spot Instances with the specified Classic Load Balancers and target groups.

    With Network Load Balancers, Spot Fleet cannot register instances that have the following instance types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and T1.

    OnDemandAllocationStrategy string
    The order of the launch template overrides to use in fulfilling On-Demand capacity. If you specify lowestPrice , Spot Fleet uses price to determine the order, launching the lowest price first. If you specify prioritized , Spot Fleet uses the priority that you assign to each Spot Fleet launch template override, launching the highest priority first. If you do not specify a value, Spot Fleet defaults to lowestPrice .
    OnDemandMaxTotalPrice string

    The maximum amount per hour for On-Demand Instances that you're willing to pay. You can use the onDemandMaxTotalPrice parameter, the spotMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

    If your fleet includes T instances that are configured as unlimited , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The onDemandMaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for onDemandMaxTotalPrice . For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide .

    OnDemandTargetCapacity int
    The number of On-Demand units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain , you can specify a target capacity of 0 and add capacity later.
    ReplaceUnhealthyInstances bool
    Indicates whether Spot Fleet should replace unhealthy instances.
    SpotMaintenanceStrategies Pulumi.AwsNative.Ec2.Inputs.SpotFleetSpotMaintenanceStrategies
    The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.
    SpotMaxTotalPrice string

    The maximum amount per hour for Spot Instances that you're willing to pay. You can use the spotMaxTotalPrice parameter, the onDemandMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

    If your fleet includes T instances that are configured as unlimited , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The spotMaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for spotMaxTotalPrice . For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide .

    SpotPrice string

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    TagSpecifications List<Pulumi.AwsNative.Ec2.Inputs.SpotFleetTagSpecification>
    The key-value pair for tagging the Spot Fleet request on creation. The value for ResourceType must be spot-fleet-request , otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the launch template (valid only if you use LaunchTemplateConfigs ) or in the [SpotFleetTagSpecification](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html) (valid only if you use LaunchSpecifications ). For information about tagging after launch, see Tag your resources .
    TargetCapacityUnitType Pulumi.AwsNative.Ec2.SpotFleetRequestConfigDataTargetCapacityUnitType

    The unit for the target capacity. You can specify this parameter only when using attribute-based instance type selection.

    Default: units (the number of instances)

    TerminateInstancesWithExpiration bool
    Indicates whether running Spot Instances are terminated when the Spot Fleet request expires.
    Type Pulumi.AwsNative.Ec2.SpotFleetRequestConfigDataType
    The type of request. Indicates whether the Spot Fleet only requests the target capacity or also attempts to maintain it. When this value is request , the Spot Fleet only places the required requests. It does not attempt to replenish Spot Instances if capacity is diminished, nor does it submit requests in alternative Spot pools if capacity is not available. When this value is maintain , the Spot Fleet maintains the target capacity. The Spot Fleet places the required requests to meet capacity and automatically replenishes any interrupted instances. Default: maintain . instant is listed but is not used by Spot Fleet.
    ValidFrom string
    The start date and time of the request, in UTC format ( YYYY - MM - DD T HH : MM : SS Z). By default, Amazon EC2 starts fulfilling the request immediately.
    ValidUntil string
    The end date and time of the request, in UTC format ( YYYY - MM - DD T HH : MM : SS Z). After the end date and time, no new Spot Instance requests are placed or able to fulfill the request. If no value is specified, the Spot Fleet request remains until you cancel it.
    IamFleetRole string
    The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that grants the Spot Fleet the permission to request, launch, terminate, and tag instances on your behalf. For more information, see Spot Fleet Prerequisites in the Amazon EC2 User Guide . Spot Fleet can terminate Spot Instances on your behalf when you cancel its Spot Fleet request or when the Spot Fleet request expires, if you set TerminateInstancesWithExpiration .
    TargetCapacity int
    The number of units to request for the Spot Fleet. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain , you can specify a target capacity of 0 and add capacity later.
    AllocationStrategy SpotFleetRequestConfigDataAllocationStrategy

    The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the Spot Fleet launch configuration. For more information, see Allocation strategies for Spot Instances in the Amazon EC2 User Guide .

    • priceCapacityOptimized (recommended) - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. Spot Fleet then requests Spot Instances from the lowest priced of these pools.
    • capacityOptimized - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. To give certain instance types a higher chance of launching first, use capacityOptimizedPrioritized . Set a priority for each instance type by using the Priority parameter for LaunchTemplateOverrides . You can assign the same priority to different LaunchTemplateOverrides . EC2 implements the priorities on a best-effort basis, but optimizes for capacity first. capacityOptimizedPrioritized is supported only if your Spot Fleet uses a launch template. Note that if the OnDemandAllocationStrategy is set to prioritized , the same priority is applied when fulfilling On-Demand capacity.
    • diversified - Spot Fleet requests instances from all of the Spot Instance pools that you specify.
    • lowestPrice (not recommended) - > We don't recommend the lowestPrice allocation strategy because it has the highest risk of interruption for your Spot Instances.

    Spot Fleet requests instances from the lowest priced Spot Instance pool that has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances come from the next lowest priced pool that has available capacity. If a pool runs out of capacity before fulfilling your desired capacity, Spot Fleet will continue to fulfill your request by drawing from the next lowest priced pool. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. Because this strategy only considers instance price and not capacity availability, it might lead to high interruption rates.

    Default: lowestPrice

    Context string
    Reserved.
    ExcessCapacityTerminationPolicy SpotFleetRequestConfigDataExcessCapacityTerminationPolicy

    Indicates whether running Spot Instances should be terminated if you decrease the target capacity of the Spot Fleet request below the current size of the Spot Fleet.

    Supported only for fleets of type maintain .

    InstanceInterruptionBehavior SpotFleetRequestConfigDataInstanceInterruptionBehavior
    The behavior when a Spot Instance is interrupted. The default is terminate .
    InstancePoolsToUseCount int

    The number of Spot pools across which to allocate your target Spot capacity. Valid only when Spot AllocationStrategy is set to lowest-price . Spot Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.

    Note that Spot Fleet attempts to draw Spot Instances from the number of pools that you specify on a best effort basis. If a pool runs out of Spot capacity before fulfilling your target capacity, Spot Fleet will continue to fulfill your request by drawing from the next cheapest pool. To ensure that your target capacity is met, you might receive Spot Instances from more than the number of pools that you specified. Similarly, if most of the pools have no Spot capacity, you might receive your full target capacity from fewer than the number of pools that you specified.

    LaunchSpecifications []SpotFleetLaunchSpecification
    The launch specifications for the Spot Fleet request. If you specify LaunchSpecifications , you can't specify LaunchTemplateConfigs .
    LaunchTemplateConfigs []SpotFleetLaunchTemplateConfig
    The launch template and overrides. If you specify LaunchTemplateConfigs , you can't specify LaunchSpecifications .
    LoadBalancersConfig SpotFleetLoadBalancersConfig

    One or more Classic Load Balancers and target groups to attach to the Spot Fleet request. Spot Fleet registers the running Spot Instances with the specified Classic Load Balancers and target groups.

    With Network Load Balancers, Spot Fleet cannot register instances that have the following instance types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and T1.

    OnDemandAllocationStrategy string
    The order of the launch template overrides to use in fulfilling On-Demand capacity. If you specify lowestPrice , Spot Fleet uses price to determine the order, launching the lowest price first. If you specify prioritized , Spot Fleet uses the priority that you assign to each Spot Fleet launch template override, launching the highest priority first. If you do not specify a value, Spot Fleet defaults to lowestPrice .
    OnDemandMaxTotalPrice string

    The maximum amount per hour for On-Demand Instances that you're willing to pay. You can use the onDemandMaxTotalPrice parameter, the spotMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

    If your fleet includes T instances that are configured as unlimited , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The onDemandMaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for onDemandMaxTotalPrice . For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide .

    OnDemandTargetCapacity int
    The number of On-Demand units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain , you can specify a target capacity of 0 and add capacity later.
    ReplaceUnhealthyInstances bool
    Indicates whether Spot Fleet should replace unhealthy instances.
    SpotMaintenanceStrategies SpotFleetSpotMaintenanceStrategies
    The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.
    SpotMaxTotalPrice string

    The maximum amount per hour for Spot Instances that you're willing to pay. You can use the spotMaxTotalPrice parameter, the onDemandMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

    If your fleet includes T instances that are configured as unlimited , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The spotMaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for spotMaxTotalPrice . For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide .

    SpotPrice string

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    TagSpecifications []SpotFleetTagSpecification
    The key-value pair for tagging the Spot Fleet request on creation. The value for ResourceType must be spot-fleet-request , otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the launch template (valid only if you use LaunchTemplateConfigs ) or in the [SpotFleetTagSpecification](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html) (valid only if you use LaunchSpecifications ). For information about tagging after launch, see Tag your resources .
    TargetCapacityUnitType SpotFleetRequestConfigDataTargetCapacityUnitType

    The unit for the target capacity. You can specify this parameter only when using attribute-based instance type selection.

    Default: units (the number of instances)

    TerminateInstancesWithExpiration bool
    Indicates whether running Spot Instances are terminated when the Spot Fleet request expires.
    Type SpotFleetRequestConfigDataType
    The type of request. Indicates whether the Spot Fleet only requests the target capacity or also attempts to maintain it. When this value is request , the Spot Fleet only places the required requests. It does not attempt to replenish Spot Instances if capacity is diminished, nor does it submit requests in alternative Spot pools if capacity is not available. When this value is maintain , the Spot Fleet maintains the target capacity. The Spot Fleet places the required requests to meet capacity and automatically replenishes any interrupted instances. Default: maintain . instant is listed but is not used by Spot Fleet.
    ValidFrom string
    The start date and time of the request, in UTC format ( YYYY - MM - DD T HH : MM : SS Z). By default, Amazon EC2 starts fulfilling the request immediately.
    ValidUntil string
    The end date and time of the request, in UTC format ( YYYY - MM - DD T HH : MM : SS Z). After the end date and time, no new Spot Instance requests are placed or able to fulfill the request. If no value is specified, the Spot Fleet request remains until you cancel it.
    iamFleetRole String
    The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that grants the Spot Fleet the permission to request, launch, terminate, and tag instances on your behalf. For more information, see Spot Fleet Prerequisites in the Amazon EC2 User Guide . Spot Fleet can terminate Spot Instances on your behalf when you cancel its Spot Fleet request or when the Spot Fleet request expires, if you set TerminateInstancesWithExpiration .
    targetCapacity Integer
    The number of units to request for the Spot Fleet. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain , you can specify a target capacity of 0 and add capacity later.
    allocationStrategy SpotFleetRequestConfigDataAllocationStrategy

    The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the Spot Fleet launch configuration. For more information, see Allocation strategies for Spot Instances in the Amazon EC2 User Guide .

    • priceCapacityOptimized (recommended) - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. Spot Fleet then requests Spot Instances from the lowest priced of these pools.
    • capacityOptimized - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. To give certain instance types a higher chance of launching first, use capacityOptimizedPrioritized . Set a priority for each instance type by using the Priority parameter for LaunchTemplateOverrides . You can assign the same priority to different LaunchTemplateOverrides . EC2 implements the priorities on a best-effort basis, but optimizes for capacity first. capacityOptimizedPrioritized is supported only if your Spot Fleet uses a launch template. Note that if the OnDemandAllocationStrategy is set to prioritized , the same priority is applied when fulfilling On-Demand capacity.
    • diversified - Spot Fleet requests instances from all of the Spot Instance pools that you specify.
    • lowestPrice (not recommended) - > We don't recommend the lowestPrice allocation strategy because it has the highest risk of interruption for your Spot Instances.

    Spot Fleet requests instances from the lowest priced Spot Instance pool that has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances come from the next lowest priced pool that has available capacity. If a pool runs out of capacity before fulfilling your desired capacity, Spot Fleet will continue to fulfill your request by drawing from the next lowest priced pool. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. Because this strategy only considers instance price and not capacity availability, it might lead to high interruption rates.

    Default: lowestPrice

    context String
    Reserved.
    excessCapacityTerminationPolicy SpotFleetRequestConfigDataExcessCapacityTerminationPolicy

    Indicates whether running Spot Instances should be terminated if you decrease the target capacity of the Spot Fleet request below the current size of the Spot Fleet.

    Supported only for fleets of type maintain .

    instanceInterruptionBehavior SpotFleetRequestConfigDataInstanceInterruptionBehavior
    The behavior when a Spot Instance is interrupted. The default is terminate .
    instancePoolsToUseCount Integer

    The number of Spot pools across which to allocate your target Spot capacity. Valid only when Spot AllocationStrategy is set to lowest-price . Spot Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.

    Note that Spot Fleet attempts to draw Spot Instances from the number of pools that you specify on a best effort basis. If a pool runs out of Spot capacity before fulfilling your target capacity, Spot Fleet will continue to fulfill your request by drawing from the next cheapest pool. To ensure that your target capacity is met, you might receive Spot Instances from more than the number of pools that you specified. Similarly, if most of the pools have no Spot capacity, you might receive your full target capacity from fewer than the number of pools that you specified.

    launchSpecifications List<SpotFleetLaunchSpecification>
    The launch specifications for the Spot Fleet request. If you specify LaunchSpecifications , you can't specify LaunchTemplateConfigs .
    launchTemplateConfigs List<SpotFleetLaunchTemplateConfig>
    The launch template and overrides. If you specify LaunchTemplateConfigs , you can't specify LaunchSpecifications .
    loadBalancersConfig SpotFleetLoadBalancersConfig

    One or more Classic Load Balancers and target groups to attach to the Spot Fleet request. Spot Fleet registers the running Spot Instances with the specified Classic Load Balancers and target groups.

    With Network Load Balancers, Spot Fleet cannot register instances that have the following instance types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and T1.

    onDemandAllocationStrategy String
    The order of the launch template overrides to use in fulfilling On-Demand capacity. If you specify lowestPrice , Spot Fleet uses price to determine the order, launching the lowest price first. If you specify prioritized , Spot Fleet uses the priority that you assign to each Spot Fleet launch template override, launching the highest priority first. If you do not specify a value, Spot Fleet defaults to lowestPrice .
    onDemandMaxTotalPrice String

    The maximum amount per hour for On-Demand Instances that you're willing to pay. You can use the onDemandMaxTotalPrice parameter, the spotMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

    If your fleet includes T instances that are configured as unlimited , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The onDemandMaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for onDemandMaxTotalPrice . For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide .

    onDemandTargetCapacity Integer
    The number of On-Demand units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain , you can specify a target capacity of 0 and add capacity later.
    replaceUnhealthyInstances Boolean
    Indicates whether Spot Fleet should replace unhealthy instances.
    spotMaintenanceStrategies SpotFleetSpotMaintenanceStrategies
    The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.
    spotMaxTotalPrice String

    The maximum amount per hour for Spot Instances that you're willing to pay. You can use the spotMaxTotalPrice parameter, the onDemandMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

    If your fleet includes T instances that are configured as unlimited , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The spotMaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for spotMaxTotalPrice . For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide .

    spotPrice String

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    tagSpecifications List<SpotFleetTagSpecification>
    The key-value pair for tagging the Spot Fleet request on creation. The value for ResourceType must be spot-fleet-request , otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the launch template (valid only if you use LaunchTemplateConfigs ) or in the [SpotFleetTagSpecification](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html) (valid only if you use LaunchSpecifications ). For information about tagging after launch, see Tag your resources .
    targetCapacityUnitType SpotFleetRequestConfigDataTargetCapacityUnitType

    The unit for the target capacity. You can specify this parameter only when using attribute-based instance type selection.

    Default: units (the number of instances)

    terminateInstancesWithExpiration Boolean
    Indicates whether running Spot Instances are terminated when the Spot Fleet request expires.
    type SpotFleetRequestConfigDataType
    The type of request. Indicates whether the Spot Fleet only requests the target capacity or also attempts to maintain it. When this value is request , the Spot Fleet only places the required requests. It does not attempt to replenish Spot Instances if capacity is diminished, nor does it submit requests in alternative Spot pools if capacity is not available. When this value is maintain , the Spot Fleet maintains the target capacity. The Spot Fleet places the required requests to meet capacity and automatically replenishes any interrupted instances. Default: maintain . instant is listed but is not used by Spot Fleet.
    validFrom String
    The start date and time of the request, in UTC format ( YYYY - MM - DD T HH : MM : SS Z). By default, Amazon EC2 starts fulfilling the request immediately.
    validUntil String
    The end date and time of the request, in UTC format ( YYYY - MM - DD T HH : MM : SS Z). After the end date and time, no new Spot Instance requests are placed or able to fulfill the request. If no value is specified, the Spot Fleet request remains until you cancel it.
    iamFleetRole string
    The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that grants the Spot Fleet the permission to request, launch, terminate, and tag instances on your behalf. For more information, see Spot Fleet Prerequisites in the Amazon EC2 User Guide . Spot Fleet can terminate Spot Instances on your behalf when you cancel its Spot Fleet request or when the Spot Fleet request expires, if you set TerminateInstancesWithExpiration .
    targetCapacity number
    The number of units to request for the Spot Fleet. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain , you can specify a target capacity of 0 and add capacity later.
    allocationStrategy SpotFleetRequestConfigDataAllocationStrategy

    The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the Spot Fleet launch configuration. For more information, see Allocation strategies for Spot Instances in the Amazon EC2 User Guide .

    • priceCapacityOptimized (recommended) - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. Spot Fleet then requests Spot Instances from the lowest priced of these pools.
    • capacityOptimized - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. To give certain instance types a higher chance of launching first, use capacityOptimizedPrioritized . Set a priority for each instance type by using the Priority parameter for LaunchTemplateOverrides . You can assign the same priority to different LaunchTemplateOverrides . EC2 implements the priorities on a best-effort basis, but optimizes for capacity first. capacityOptimizedPrioritized is supported only if your Spot Fleet uses a launch template. Note that if the OnDemandAllocationStrategy is set to prioritized , the same priority is applied when fulfilling On-Demand capacity.
    • diversified - Spot Fleet requests instances from all of the Spot Instance pools that you specify.
    • lowestPrice (not recommended) - > We don't recommend the lowestPrice allocation strategy because it has the highest risk of interruption for your Spot Instances.

    Spot Fleet requests instances from the lowest priced Spot Instance pool that has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances come from the next lowest priced pool that has available capacity. If a pool runs out of capacity before fulfilling your desired capacity, Spot Fleet will continue to fulfill your request by drawing from the next lowest priced pool. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. Because this strategy only considers instance price and not capacity availability, it might lead to high interruption rates.

    Default: lowestPrice

    context string
    Reserved.
    excessCapacityTerminationPolicy SpotFleetRequestConfigDataExcessCapacityTerminationPolicy

    Indicates whether running Spot Instances should be terminated if you decrease the target capacity of the Spot Fleet request below the current size of the Spot Fleet.

    Supported only for fleets of type maintain .

    instanceInterruptionBehavior SpotFleetRequestConfigDataInstanceInterruptionBehavior
    The behavior when a Spot Instance is interrupted. The default is terminate .
    instancePoolsToUseCount number

    The number of Spot pools across which to allocate your target Spot capacity. Valid only when Spot AllocationStrategy is set to lowest-price . Spot Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.

    Note that Spot Fleet attempts to draw Spot Instances from the number of pools that you specify on a best effort basis. If a pool runs out of Spot capacity before fulfilling your target capacity, Spot Fleet will continue to fulfill your request by drawing from the next cheapest pool. To ensure that your target capacity is met, you might receive Spot Instances from more than the number of pools that you specified. Similarly, if most of the pools have no Spot capacity, you might receive your full target capacity from fewer than the number of pools that you specified.

    launchSpecifications SpotFleetLaunchSpecification[]
    The launch specifications for the Spot Fleet request. If you specify LaunchSpecifications , you can't specify LaunchTemplateConfigs .
    launchTemplateConfigs SpotFleetLaunchTemplateConfig[]
    The launch template and overrides. If you specify LaunchTemplateConfigs , you can't specify LaunchSpecifications .
    loadBalancersConfig SpotFleetLoadBalancersConfig

    One or more Classic Load Balancers and target groups to attach to the Spot Fleet request. Spot Fleet registers the running Spot Instances with the specified Classic Load Balancers and target groups.

    With Network Load Balancers, Spot Fleet cannot register instances that have the following instance types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and T1.

    onDemandAllocationStrategy string
    The order of the launch template overrides to use in fulfilling On-Demand capacity. If you specify lowestPrice , Spot Fleet uses price to determine the order, launching the lowest price first. If you specify prioritized , Spot Fleet uses the priority that you assign to each Spot Fleet launch template override, launching the highest priority first. If you do not specify a value, Spot Fleet defaults to lowestPrice .
    onDemandMaxTotalPrice string

    The maximum amount per hour for On-Demand Instances that you're willing to pay. You can use the onDemandMaxTotalPrice parameter, the spotMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

    If your fleet includes T instances that are configured as unlimited , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The onDemandMaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for onDemandMaxTotalPrice . For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide .

    onDemandTargetCapacity number
    The number of On-Demand units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain , you can specify a target capacity of 0 and add capacity later.
    replaceUnhealthyInstances boolean
    Indicates whether Spot Fleet should replace unhealthy instances.
    spotMaintenanceStrategies SpotFleetSpotMaintenanceStrategies
    The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.
    spotMaxTotalPrice string

    The maximum amount per hour for Spot Instances that you're willing to pay. You can use the spotMaxTotalPrice parameter, the onDemandMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

    If your fleet includes T instances that are configured as unlimited , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The spotMaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for spotMaxTotalPrice . For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide .

    spotPrice string

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    tagSpecifications SpotFleetTagSpecification[]
    The key-value pair for tagging the Spot Fleet request on creation. The value for ResourceType must be spot-fleet-request , otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the launch template (valid only if you use LaunchTemplateConfigs ) or in the [SpotFleetTagSpecification](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html) (valid only if you use LaunchSpecifications ). For information about tagging after launch, see Tag your resources .
    targetCapacityUnitType SpotFleetRequestConfigDataTargetCapacityUnitType

    The unit for the target capacity. You can specify this parameter only when using attribute-based instance type selection.

    Default: units (the number of instances)

    terminateInstancesWithExpiration boolean
    Indicates whether running Spot Instances are terminated when the Spot Fleet request expires.
    type SpotFleetRequestConfigDataType
    The type of request. Indicates whether the Spot Fleet only requests the target capacity or also attempts to maintain it. When this value is request , the Spot Fleet only places the required requests. It does not attempt to replenish Spot Instances if capacity is diminished, nor does it submit requests in alternative Spot pools if capacity is not available. When this value is maintain , the Spot Fleet maintains the target capacity. The Spot Fleet places the required requests to meet capacity and automatically replenishes any interrupted instances. Default: maintain . instant is listed but is not used by Spot Fleet.
    validFrom string
    The start date and time of the request, in UTC format ( YYYY - MM - DD T HH : MM : SS Z). By default, Amazon EC2 starts fulfilling the request immediately.
    validUntil string
    The end date and time of the request, in UTC format ( YYYY - MM - DD T HH : MM : SS Z). After the end date and time, no new Spot Instance requests are placed or able to fulfill the request. If no value is specified, the Spot Fleet request remains until you cancel it.
    iam_fleet_role str
    The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that grants the Spot Fleet the permission to request, launch, terminate, and tag instances on your behalf. For more information, see Spot Fleet Prerequisites in the Amazon EC2 User Guide . Spot Fleet can terminate Spot Instances on your behalf when you cancel its Spot Fleet request or when the Spot Fleet request expires, if you set TerminateInstancesWithExpiration .
    target_capacity int
    The number of units to request for the Spot Fleet. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain , you can specify a target capacity of 0 and add capacity later.
    allocation_strategy SpotFleetRequestConfigDataAllocationStrategy

    The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the Spot Fleet launch configuration. For more information, see Allocation strategies for Spot Instances in the Amazon EC2 User Guide .

    • priceCapacityOptimized (recommended) - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. Spot Fleet then requests Spot Instances from the lowest priced of these pools.
    • capacityOptimized - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. To give certain instance types a higher chance of launching first, use capacityOptimizedPrioritized . Set a priority for each instance type by using the Priority parameter for LaunchTemplateOverrides . You can assign the same priority to different LaunchTemplateOverrides . EC2 implements the priorities on a best-effort basis, but optimizes for capacity first. capacityOptimizedPrioritized is supported only if your Spot Fleet uses a launch template. Note that if the OnDemandAllocationStrategy is set to prioritized , the same priority is applied when fulfilling On-Demand capacity.
    • diversified - Spot Fleet requests instances from all of the Spot Instance pools that you specify.
    • lowestPrice (not recommended) - > We don't recommend the lowestPrice allocation strategy because it has the highest risk of interruption for your Spot Instances.

    Spot Fleet requests instances from the lowest priced Spot Instance pool that has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances come from the next lowest priced pool that has available capacity. If a pool runs out of capacity before fulfilling your desired capacity, Spot Fleet will continue to fulfill your request by drawing from the next lowest priced pool. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. Because this strategy only considers instance price and not capacity availability, it might lead to high interruption rates.

    Default: lowestPrice

    context str
    Reserved.
    excess_capacity_termination_policy SpotFleetRequestConfigDataExcessCapacityTerminationPolicy

    Indicates whether running Spot Instances should be terminated if you decrease the target capacity of the Spot Fleet request below the current size of the Spot Fleet.

    Supported only for fleets of type maintain .

    instance_interruption_behavior SpotFleetRequestConfigDataInstanceInterruptionBehavior
    The behavior when a Spot Instance is interrupted. The default is terminate .
    instance_pools_to_use_count int

    The number of Spot pools across which to allocate your target Spot capacity. Valid only when Spot AllocationStrategy is set to lowest-price . Spot Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.

    Note that Spot Fleet attempts to draw Spot Instances from the number of pools that you specify on a best effort basis. If a pool runs out of Spot capacity before fulfilling your target capacity, Spot Fleet will continue to fulfill your request by drawing from the next cheapest pool. To ensure that your target capacity is met, you might receive Spot Instances from more than the number of pools that you specified. Similarly, if most of the pools have no Spot capacity, you might receive your full target capacity from fewer than the number of pools that you specified.

    launch_specifications Sequence[SpotFleetLaunchSpecification]
    The launch specifications for the Spot Fleet request. If you specify LaunchSpecifications , you can't specify LaunchTemplateConfigs .
    launch_template_configs Sequence[SpotFleetLaunchTemplateConfig]
    The launch template and overrides. If you specify LaunchTemplateConfigs , you can't specify LaunchSpecifications .
    load_balancers_config SpotFleetLoadBalancersConfig

    One or more Classic Load Balancers and target groups to attach to the Spot Fleet request. Spot Fleet registers the running Spot Instances with the specified Classic Load Balancers and target groups.

    With Network Load Balancers, Spot Fleet cannot register instances that have the following instance types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and T1.

    on_demand_allocation_strategy str
    The order of the launch template overrides to use in fulfilling On-Demand capacity. If you specify lowestPrice , Spot Fleet uses price to determine the order, launching the lowest price first. If you specify prioritized , Spot Fleet uses the priority that you assign to each Spot Fleet launch template override, launching the highest priority first. If you do not specify a value, Spot Fleet defaults to lowestPrice .
    on_demand_max_total_price str

    The maximum amount per hour for On-Demand Instances that you're willing to pay. You can use the onDemandMaxTotalPrice parameter, the spotMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

    If your fleet includes T instances that are configured as unlimited , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The onDemandMaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for onDemandMaxTotalPrice . For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide .

    on_demand_target_capacity int
    The number of On-Demand units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain , you can specify a target capacity of 0 and add capacity later.
    replace_unhealthy_instances bool
    Indicates whether Spot Fleet should replace unhealthy instances.
    spot_maintenance_strategies SpotFleetSpotMaintenanceStrategies
    The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.
    spot_max_total_price str

    The maximum amount per hour for Spot Instances that you're willing to pay. You can use the spotMaxTotalPrice parameter, the onDemandMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

    If your fleet includes T instances that are configured as unlimited , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The spotMaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for spotMaxTotalPrice . For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide .

    spot_price str

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    tag_specifications Sequence[SpotFleetTagSpecification]
    The key-value pair for tagging the Spot Fleet request on creation. The value for ResourceType must be spot-fleet-request , otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the launch template (valid only if you use LaunchTemplateConfigs ) or in the [SpotFleetTagSpecification](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html) (valid only if you use LaunchSpecifications ). For information about tagging after launch, see Tag your resources .
    target_capacity_unit_type SpotFleetRequestConfigDataTargetCapacityUnitType

    The unit for the target capacity. You can specify this parameter only when using attribute-based instance type selection.

    Default: units (the number of instances)

    terminate_instances_with_expiration bool
    Indicates whether running Spot Instances are terminated when the Spot Fleet request expires.
    type SpotFleetRequestConfigDataType
    The type of request. Indicates whether the Spot Fleet only requests the target capacity or also attempts to maintain it. When this value is request , the Spot Fleet only places the required requests. It does not attempt to replenish Spot Instances if capacity is diminished, nor does it submit requests in alternative Spot pools if capacity is not available. When this value is maintain , the Spot Fleet maintains the target capacity. The Spot Fleet places the required requests to meet capacity and automatically replenishes any interrupted instances. Default: maintain . instant is listed but is not used by Spot Fleet.
    valid_from str
    The start date and time of the request, in UTC format ( YYYY - MM - DD T HH : MM : SS Z). By default, Amazon EC2 starts fulfilling the request immediately.
    valid_until str
    The end date and time of the request, in UTC format ( YYYY - MM - DD T HH : MM : SS Z). After the end date and time, no new Spot Instance requests are placed or able to fulfill the request. If no value is specified, the Spot Fleet request remains until you cancel it.
    iamFleetRole String
    The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that grants the Spot Fleet the permission to request, launch, terminate, and tag instances on your behalf. For more information, see Spot Fleet Prerequisites in the Amazon EC2 User Guide . Spot Fleet can terminate Spot Instances on your behalf when you cancel its Spot Fleet request or when the Spot Fleet request expires, if you set TerminateInstancesWithExpiration .
    targetCapacity Number
    The number of units to request for the Spot Fleet. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain , you can specify a target capacity of 0 and add capacity later.
    allocationStrategy "capacityOptimized" | "capacityOptimizedPrioritized" | "diversified" | "lowestPrice" | "priceCapacityOptimized"

    The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the Spot Fleet launch configuration. For more information, see Allocation strategies for Spot Instances in the Amazon EC2 User Guide .

    • priceCapacityOptimized (recommended) - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. Spot Fleet then requests Spot Instances from the lowest priced of these pools.
    • capacityOptimized - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. To give certain instance types a higher chance of launching first, use capacityOptimizedPrioritized . Set a priority for each instance type by using the Priority parameter for LaunchTemplateOverrides . You can assign the same priority to different LaunchTemplateOverrides . EC2 implements the priorities on a best-effort basis, but optimizes for capacity first. capacityOptimizedPrioritized is supported only if your Spot Fleet uses a launch template. Note that if the OnDemandAllocationStrategy is set to prioritized , the same priority is applied when fulfilling On-Demand capacity.
    • diversified - Spot Fleet requests instances from all of the Spot Instance pools that you specify.
    • lowestPrice (not recommended) - > We don't recommend the lowestPrice allocation strategy because it has the highest risk of interruption for your Spot Instances.

    Spot Fleet requests instances from the lowest priced Spot Instance pool that has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances come from the next lowest priced pool that has available capacity. If a pool runs out of capacity before fulfilling your desired capacity, Spot Fleet will continue to fulfill your request by drawing from the next lowest priced pool. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. Because this strategy only considers instance price and not capacity availability, it might lead to high interruption rates.

    Default: lowestPrice

    context String
    Reserved.
    excessCapacityTerminationPolicy "Default" | "NoTermination"

    Indicates whether running Spot Instances should be terminated if you decrease the target capacity of the Spot Fleet request below the current size of the Spot Fleet.

    Supported only for fleets of type maintain .

    instanceInterruptionBehavior "hibernate" | "stop" | "terminate"
    The behavior when a Spot Instance is interrupted. The default is terminate .
    instancePoolsToUseCount Number

    The number of Spot pools across which to allocate your target Spot capacity. Valid only when Spot AllocationStrategy is set to lowest-price . Spot Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.

    Note that Spot Fleet attempts to draw Spot Instances from the number of pools that you specify on a best effort basis. If a pool runs out of Spot capacity before fulfilling your target capacity, Spot Fleet will continue to fulfill your request by drawing from the next cheapest pool. To ensure that your target capacity is met, you might receive Spot Instances from more than the number of pools that you specified. Similarly, if most of the pools have no Spot capacity, you might receive your full target capacity from fewer than the number of pools that you specified.

    launchSpecifications List<Property Map>
    The launch specifications for the Spot Fleet request. If you specify LaunchSpecifications , you can't specify LaunchTemplateConfigs .
    launchTemplateConfigs List<Property Map>
    The launch template and overrides. If you specify LaunchTemplateConfigs , you can't specify LaunchSpecifications .
    loadBalancersConfig Property Map

    One or more Classic Load Balancers and target groups to attach to the Spot Fleet request. Spot Fleet registers the running Spot Instances with the specified Classic Load Balancers and target groups.

    With Network Load Balancers, Spot Fleet cannot register instances that have the following instance types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and T1.

    onDemandAllocationStrategy String
    The order of the launch template overrides to use in fulfilling On-Demand capacity. If you specify lowestPrice , Spot Fleet uses price to determine the order, launching the lowest price first. If you specify prioritized , Spot Fleet uses the priority that you assign to each Spot Fleet launch template override, launching the highest priority first. If you do not specify a value, Spot Fleet defaults to lowestPrice .
    onDemandMaxTotalPrice String

    The maximum amount per hour for On-Demand Instances that you're willing to pay. You can use the onDemandMaxTotalPrice parameter, the spotMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

    If your fleet includes T instances that are configured as unlimited , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The onDemandMaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for onDemandMaxTotalPrice . For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide .

    onDemandTargetCapacity Number
    The number of On-Demand units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain , you can specify a target capacity of 0 and add capacity later.
    replaceUnhealthyInstances Boolean
    Indicates whether Spot Fleet should replace unhealthy instances.
    spotMaintenanceStrategies Property Map
    The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.
    spotMaxTotalPrice String

    The maximum amount per hour for Spot Instances that you're willing to pay. You can use the spotMaxTotalPrice parameter, the onDemandMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

    If your fleet includes T instances that are configured as unlimited , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The spotMaxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for spotMaxTotalPrice . For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide .

    spotPrice String

    The maximum price per unit hour that you are willing to pay for a Spot Instance. 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 instances will be interrupted more frequently than if you do not specify this parameter.

    tagSpecifications List<Property Map>
    The key-value pair for tagging the Spot Fleet request on creation. The value for ResourceType must be spot-fleet-request , otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the launch template (valid only if you use LaunchTemplateConfigs ) or in the [SpotFleetTagSpecification](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html) (valid only if you use LaunchSpecifications ). For information about tagging after launch, see Tag your resources .
    targetCapacityUnitType "vcpu" | "memory-mib" | "units"

    The unit for the target capacity. You can specify this parameter only when using attribute-based instance type selection.

    Default: units (the number of instances)

    terminateInstancesWithExpiration Boolean
    Indicates whether running Spot Instances are terminated when the Spot Fleet request expires.
    type "maintain" | "request"
    The type of request. Indicates whether the Spot Fleet only requests the target capacity or also attempts to maintain it. When this value is request , the Spot Fleet only places the required requests. It does not attempt to replenish Spot Instances if capacity is diminished, nor does it submit requests in alternative Spot pools if capacity is not available. When this value is maintain , the Spot Fleet maintains the target capacity. The Spot Fleet places the required requests to meet capacity and automatically replenishes any interrupted instances. Default: maintain . instant is listed but is not used by Spot Fleet.
    validFrom String
    The start date and time of the request, in UTC format ( YYYY - MM - DD T HH : MM : SS Z). By default, Amazon EC2 starts fulfilling the request immediately.
    validUntil String
    The end date and time of the request, in UTC format ( YYYY - MM - DD T HH : MM : SS Z). After the end date and time, no new Spot Instance requests are placed or able to fulfill the request. If no value is specified, the Spot Fleet request remains until you cancel it.

    SpotFleetRequestConfigDataAllocationStrategy

    SpotFleetRequestConfigDataExcessCapacityTerminationPolicy

    SpotFleetRequestConfigDataInstanceInterruptionBehavior

    SpotFleetRequestConfigDataTargetCapacityUnitType

    SpotFleetRequestConfigDataType

    SpotFleetSpotCapacityRebalance

    ReplacementStrategy Pulumi.AwsNative.Ec2.SpotFleetSpotCapacityRebalanceReplacementStrategy

    The replacement strategy to use. Only available for fleets of type maintain .

    launch - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet. Spot Fleet does not terminate the instances that receive a rebalance notification. You can terminate the old instances, or you can leave them running. You are charged for all instances while they are running.

    launch-before-terminate - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet, and then, after a delay that you specify (in TerminationDelay ), terminates the instances that received a rebalance notification.

    TerminationDelay int

    The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot Instance after launching a new replacement Spot Instance.

    Required when ReplacementStrategy is set to launch-before-terminate .

    Not valid when ReplacementStrategy is set to launch .

    Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

    ReplacementStrategy SpotFleetSpotCapacityRebalanceReplacementStrategy

    The replacement strategy to use. Only available for fleets of type maintain .

    launch - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet. Spot Fleet does not terminate the instances that receive a rebalance notification. You can terminate the old instances, or you can leave them running. You are charged for all instances while they are running.

    launch-before-terminate - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet, and then, after a delay that you specify (in TerminationDelay ), terminates the instances that received a rebalance notification.

    TerminationDelay int

    The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot Instance after launching a new replacement Spot Instance.

    Required when ReplacementStrategy is set to launch-before-terminate .

    Not valid when ReplacementStrategy is set to launch .

    Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

    replacementStrategy SpotFleetSpotCapacityRebalanceReplacementStrategy

    The replacement strategy to use. Only available for fleets of type maintain .

    launch - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet. Spot Fleet does not terminate the instances that receive a rebalance notification. You can terminate the old instances, or you can leave them running. You are charged for all instances while they are running.

    launch-before-terminate - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet, and then, after a delay that you specify (in TerminationDelay ), terminates the instances that received a rebalance notification.

    terminationDelay Integer

    The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot Instance after launching a new replacement Spot Instance.

    Required when ReplacementStrategy is set to launch-before-terminate .

    Not valid when ReplacementStrategy is set to launch .

    Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

    replacementStrategy SpotFleetSpotCapacityRebalanceReplacementStrategy

    The replacement strategy to use. Only available for fleets of type maintain .

    launch - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet. Spot Fleet does not terminate the instances that receive a rebalance notification. You can terminate the old instances, or you can leave them running. You are charged for all instances while they are running.

    launch-before-terminate - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet, and then, after a delay that you specify (in TerminationDelay ), terminates the instances that received a rebalance notification.

    terminationDelay number

    The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot Instance after launching a new replacement Spot Instance.

    Required when ReplacementStrategy is set to launch-before-terminate .

    Not valid when ReplacementStrategy is set to launch .

    Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

    replacement_strategy SpotFleetSpotCapacityRebalanceReplacementStrategy

    The replacement strategy to use. Only available for fleets of type maintain .

    launch - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet. Spot Fleet does not terminate the instances that receive a rebalance notification. You can terminate the old instances, or you can leave them running. You are charged for all instances while they are running.

    launch-before-terminate - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet, and then, after a delay that you specify (in TerminationDelay ), terminates the instances that received a rebalance notification.

    termination_delay int

    The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot Instance after launching a new replacement Spot Instance.

    Required when ReplacementStrategy is set to launch-before-terminate .

    Not valid when ReplacementStrategy is set to launch .

    Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

    replacementStrategy "launch" | "launch-before-terminate"

    The replacement strategy to use. Only available for fleets of type maintain .

    launch - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet. Spot Fleet does not terminate the instances that receive a rebalance notification. You can terminate the old instances, or you can leave them running. You are charged for all instances while they are running.

    launch-before-terminate - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet, and then, after a delay that you specify (in TerminationDelay ), terminates the instances that received a rebalance notification.

    terminationDelay Number

    The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot Instance after launching a new replacement Spot Instance.

    Required when ReplacementStrategy is set to launch-before-terminate .

    Not valid when ReplacementStrategy is set to launch .

    Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

    SpotFleetSpotCapacityRebalanceReplacementStrategy

    SpotFleetSpotMaintenanceStrategies

    CapacityRebalance Pulumi.AwsNative.Ec2.Inputs.SpotFleetSpotCapacityRebalance
    The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see Capacity rebalancing in the Amazon EC2 User Guide .
    CapacityRebalance SpotFleetSpotCapacityRebalance
    The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see Capacity rebalancing in the Amazon EC2 User Guide .
    capacityRebalance SpotFleetSpotCapacityRebalance
    The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see Capacity rebalancing in the Amazon EC2 User Guide .
    capacityRebalance SpotFleetSpotCapacityRebalance
    The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see Capacity rebalancing in the Amazon EC2 User Guide .
    capacity_rebalance SpotFleetSpotCapacityRebalance
    The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see Capacity rebalancing in the Amazon EC2 User Guide .
    capacityRebalance Property Map
    The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see Capacity rebalancing in the Amazon EC2 User Guide .

    SpotFleetSpotPlacement

    AvailabilityZone string

    The Availability Zone.

    To specify multiple Availability Zones, separate them using commas; for example, "us-west-2a, us-west-2b".

    GroupName string
    The name of the placement group.
    Tenancy Pulumi.AwsNative.Ec2.SpotFleetSpotPlacementTenancy
    The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for Spot Instances.
    AvailabilityZone string

    The Availability Zone.

    To specify multiple Availability Zones, separate them using commas; for example, "us-west-2a, us-west-2b".

    GroupName string
    The name of the placement group.
    Tenancy SpotFleetSpotPlacementTenancy
    The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for Spot Instances.
    availabilityZone String

    The Availability Zone.

    To specify multiple Availability Zones, separate them using commas; for example, "us-west-2a, us-west-2b".

    groupName String
    The name of the placement group.
    tenancy SpotFleetSpotPlacementTenancy
    The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for Spot Instances.
    availabilityZone string

    The Availability Zone.

    To specify multiple Availability Zones, separate them using commas; for example, "us-west-2a, us-west-2b".

    groupName string
    The name of the placement group.
    tenancy SpotFleetSpotPlacementTenancy
    The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for Spot Instances.
    availability_zone str

    The Availability Zone.

    To specify multiple Availability Zones, separate them using commas; for example, "us-west-2a, us-west-2b".

    group_name str
    The name of the placement group.
    tenancy SpotFleetSpotPlacementTenancy
    The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for Spot Instances.
    availabilityZone String

    The Availability Zone.

    To specify multiple Availability Zones, separate them using commas; for example, "us-west-2a, us-west-2b".

    groupName String
    The name of the placement group.
    tenancy "dedicated" | "default" | "host"
    The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for Spot Instances.

    SpotFleetSpotPlacementTenancy

    SpotFleetTag

    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.

    SpotFleetTagSpecification

    ResourceType Pulumi.AwsNative.Ec2.SpotFleetTagSpecificationResourceType
    The type of resource. Currently, the only resource type that is supported is instance . To tag the Spot Fleet request on creation, use the TagSpecifications parameter in [SpotFleetRequestConfigData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetRequestConfigData.html) .
    Tags List<Pulumi.AwsNative.Ec2.Inputs.SpotFleetTag>
    The tags.
    ResourceType SpotFleetTagSpecificationResourceType
    The type of resource. Currently, the only resource type that is supported is instance . To tag the Spot Fleet request on creation, use the TagSpecifications parameter in [SpotFleetRequestConfigData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetRequestConfigData.html) .
    Tags []SpotFleetTag
    The tags.
    resourceType SpotFleetTagSpecificationResourceType
    The type of resource. Currently, the only resource type that is supported is instance . To tag the Spot Fleet request on creation, use the TagSpecifications parameter in [SpotFleetRequestConfigData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetRequestConfigData.html) .
    tags List<SpotFleetTag>
    The tags.
    resourceType SpotFleetTagSpecificationResourceType
    The type of resource. Currently, the only resource type that is supported is instance . To tag the Spot Fleet request on creation, use the TagSpecifications parameter in [SpotFleetRequestConfigData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetRequestConfigData.html) .
    tags SpotFleetTag[]
    The tags.
    resource_type SpotFleetTagSpecificationResourceType
    The type of resource. Currently, the only resource type that is supported is instance . To tag the Spot Fleet request on creation, use the TagSpecifications parameter in [SpotFleetRequestConfigData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetRequestConfigData.html) .
    tags Sequence[SpotFleetTag]
    The tags.
    resourceType "client-vpn-endpoint" | "customer-gateway" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-gpu" | "elastic-ip" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "internet-gateway" | "key-pair" | "launch-template" | "local-gateway-route-table-vpc-association" | "natgateway" | "network-acl" | "network-insights-analysis" | "network-insights-path" | "network-interface" | "placement-group" | "reserved-instances" | "route-table" | "security-group" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-route-table" | "volume" | "vpc" | "vpc-flow-log" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway"
    The type of resource. Currently, the only resource type that is supported is instance . To tag the Spot Fleet request on creation, use the TagSpecifications parameter in [SpotFleetRequestConfigData](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetRequestConfigData.html) .
    tags List<Property Map>
    The tags.

    SpotFleetTagSpecificationResourceType

    SpotFleetTargetGroup

    Arn string
    The Amazon Resource Name (ARN) of the target group.
    Arn string
    The Amazon Resource Name (ARN) of the target group.
    arn String
    The Amazon Resource Name (ARN) of the target group.
    arn string
    The Amazon Resource Name (ARN) of the target group.
    arn str
    The Amazon Resource Name (ARN) of the target group.
    arn String
    The Amazon Resource Name (ARN) of the target group.

    SpotFleetTargetGroupsConfig

    TargetGroups []SpotFleetTargetGroup
    One or more target groups.
    targetGroups List<SpotFleetTargetGroup>
    One or more target groups.
    targetGroups SpotFleetTargetGroup[]
    One or more target groups.
    targetGroups List<Property Map>
    One or more target groups.

    SpotFleetTotalLocalStorageGbRequest

    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.

    SpotFleetVCpuCountRangeRequest

    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 .

    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 Cloud Control v1.9.0 published on Monday, Nov 18, 2024 by Pulumi