amazonka-ec2-2.0: Amazon Elastic Compute Cloud SDK.
Copyright(c) 2013-2023 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Amazonka.EC2.Types.SpotFleetLaunchSpecification

Description

 
Synopsis

Documentation

data SpotFleetLaunchSpecification Source #

Describes the launch specification for one or more Spot Instances. If you include On-Demand capacity in your fleet request or want to specify an EFA network device, you can't use SpotFleetLaunchSpecification; you must use LaunchTemplateConfig.

See: newSpotFleetLaunchSpecification smart constructor.

Constructors

SpotFleetLaunchSpecification' 

Fields

  • addressingType :: Maybe Text

    Deprecated.

  • blockDeviceMappings :: Maybe [BlockDeviceMapping]

    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 :: Maybe 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 :: Maybe IamInstanceProfileSpecification

    The IAM instance profile.

  • imageId :: Maybe Text

    The ID of the AMI.

  • instanceRequirements :: Maybe InstanceRequirements

    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 :: Maybe InstanceType

    The instance type.

  • kernelId :: Maybe Text

    The ID of the kernel.

  • keyName :: Maybe Text

    The name of the key pair.

  • monitoring :: Maybe SpotFleetMonitoring

    Enable or disable monitoring for the instances.

  • networkInterfaces :: Maybe [InstanceNetworkInterfaceSpecification]

    One or more network interfaces. If you specify a network interface, you must specify subnet IDs and security group IDs using the network interface.

    SpotFleetLaunchSpecification currently does not support Elastic Fabric Adapter (EFA). To specify an EFA, you must use LaunchTemplateConfig.

  • placement :: Maybe SpotPlacement

    The placement information.

  • ramdiskId :: Maybe Text

    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 Amazon Web Services Resource Center and search for the kernel ID.

  • securityGroups :: Maybe [GroupIdentifier]

    One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.

  • spotPrice :: Maybe Text

    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 :: Maybe Text

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

  • tagSpecifications :: Maybe [SpotFleetTagSpecification]

    The tags to apply during creation.

  • userData :: Maybe Text

    The Base64-encoded user data that instances use when starting up.

  • weightedCapacity :: Maybe 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.

Instances

Instances details
ToQuery SpotFleetLaunchSpecification Source # 
Instance details

Defined in Amazonka.EC2.Types.SpotFleetLaunchSpecification

FromXML SpotFleetLaunchSpecification Source # 
Instance details

Defined in Amazonka.EC2.Types.SpotFleetLaunchSpecification

Generic SpotFleetLaunchSpecification Source # 
Instance details

Defined in Amazonka.EC2.Types.SpotFleetLaunchSpecification

Associated Types

type Rep SpotFleetLaunchSpecification :: Type -> Type #

Read SpotFleetLaunchSpecification Source # 
Instance details

Defined in Amazonka.EC2.Types.SpotFleetLaunchSpecification

Show SpotFleetLaunchSpecification Source # 
Instance details

Defined in Amazonka.EC2.Types.SpotFleetLaunchSpecification

NFData SpotFleetLaunchSpecification Source # 
Instance details

Defined in Amazonka.EC2.Types.SpotFleetLaunchSpecification

Eq SpotFleetLaunchSpecification Source # 
Instance details

Defined in Amazonka.EC2.Types.SpotFleetLaunchSpecification

Hashable SpotFleetLaunchSpecification Source # 
Instance details

Defined in Amazonka.EC2.Types.SpotFleetLaunchSpecification

type Rep SpotFleetLaunchSpecification Source # 
Instance details

Defined in Amazonka.EC2.Types.SpotFleetLaunchSpecification

type Rep SpotFleetLaunchSpecification = D1 ('MetaData "SpotFleetLaunchSpecification" "Amazonka.EC2.Types.SpotFleetLaunchSpecification" "amazonka-ec2-2.0-48L9RAJvmvzAdBkRegqWCL" 'False) (C1 ('MetaCons "SpotFleetLaunchSpecification'" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "addressingType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "blockDeviceMappings") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [BlockDeviceMapping]))) :*: (S1 ('MetaSel ('Just "ebsOptimized") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Bool)) :*: S1 ('MetaSel ('Just "iamInstanceProfile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe IamInstanceProfileSpecification)))) :*: ((S1 ('MetaSel ('Just "imageId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "instanceRequirements") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe InstanceRequirements))) :*: (S1 ('MetaSel ('Just "instanceType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe InstanceType)) :*: (S1 ('MetaSel ('Just "kernelId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "keyName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)))))) :*: (((S1 ('MetaSel ('Just "monitoring") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe SpotFleetMonitoring)) :*: S1 ('MetaSel ('Just "networkInterfaces") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [InstanceNetworkInterfaceSpecification]))) :*: (S1 ('MetaSel ('Just "placement") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe SpotPlacement)) :*: (S1 ('MetaSel ('Just "ramdiskId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "securityGroups") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [GroupIdentifier]))))) :*: ((S1 ('MetaSel ('Just "spotPrice") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "subnetId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 ('MetaSel ('Just "tagSpecifications") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [SpotFleetTagSpecification])) :*: (S1 ('MetaSel ('Just "userData") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "weightedCapacity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Double))))))))

newSpotFleetLaunchSpecification :: SpotFleetLaunchSpecification Source #

Create a value of SpotFleetLaunchSpecification with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:addressingType:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_addressingType - Deprecated.

$sel:blockDeviceMappings:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_blockDeviceMappings - 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.

$sel:ebsOptimized:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_ebsOptimized - 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

$sel:iamInstanceProfile:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_iamInstanceProfile - The IAM instance profile.

$sel:imageId:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_imageId - The ID of the AMI.

$sel:instanceRequirements:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_instanceRequirements - 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.

$sel:instanceType:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_instanceType - The instance type.

$sel:kernelId:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_kernelId - The ID of the kernel.

$sel:keyName:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_keyName - The name of the key pair.

$sel:monitoring:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_monitoring - Enable or disable monitoring for the instances.

$sel:networkInterfaces:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_networkInterfaces - One or more network interfaces. If you specify a network interface, you must specify subnet IDs and security group IDs using the network interface.

SpotFleetLaunchSpecification currently does not support Elastic Fabric Adapter (EFA). To specify an EFA, you must use LaunchTemplateConfig.

$sel:placement:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_placement - The placement information.

$sel:ramdiskId:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_ramdiskId - 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 Amazon Web Services Resource Center and search for the kernel ID.

$sel:securityGroups:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_securityGroups - One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.

$sel:spotPrice:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_spotPrice - 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.

SpotFleetLaunchSpecification, spotFleetLaunchSpecification_subnetId - 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".

$sel:tagSpecifications:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_tagSpecifications - The tags to apply during creation.

$sel:userData:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_userData - The Base64-encoded user data that instances use when starting up.

$sel:weightedCapacity:SpotFleetLaunchSpecification', spotFleetLaunchSpecification_weightedCapacity - 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.

spotFleetLaunchSpecification_blockDeviceMappings :: Lens' SpotFleetLaunchSpecification (Maybe [BlockDeviceMapping]) Source #

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.

spotFleetLaunchSpecification_ebsOptimized :: Lens' SpotFleetLaunchSpecification (Maybe Bool) Source #

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

spotFleetLaunchSpecification_instanceRequirements :: Lens' SpotFleetLaunchSpecification (Maybe InstanceRequirements) Source #

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.

spotFleetLaunchSpecification_networkInterfaces :: Lens' SpotFleetLaunchSpecification (Maybe [InstanceNetworkInterfaceSpecification]) Source #

One or more network interfaces. If you specify a network interface, you must specify subnet IDs and security group IDs using the network interface.

SpotFleetLaunchSpecification currently does not support Elastic Fabric Adapter (EFA). To specify an EFA, you must use LaunchTemplateConfig.

spotFleetLaunchSpecification_ramdiskId :: Lens' SpotFleetLaunchSpecification (Maybe Text) Source #

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 Amazon Web Services Resource Center and search for the kernel ID.

spotFleetLaunchSpecification_securityGroups :: Lens' SpotFleetLaunchSpecification (Maybe [GroupIdentifier]) Source #

One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.

spotFleetLaunchSpecification_spotPrice :: Lens' SpotFleetLaunchSpecification (Maybe Text) Source #

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.

spotFleetLaunchSpecification_subnetId :: Lens' SpotFleetLaunchSpecification (Maybe Text) Source #

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

spotFleetLaunchSpecification_userData :: Lens' SpotFleetLaunchSpecification (Maybe Text) Source #

The Base64-encoded user data that instances use when starting up.

spotFleetLaunchSpecification_weightedCapacity :: Lens' SpotFleetLaunchSpecification (Maybe Double) Source #

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.