Describes your Spot Fleet requests.
Spot Fleet requests are deleted 48 hours after they are canceled and their instances are terminated.
See also: AWS API Documentation
See ‘aws help’ for descriptions of global parameters.
describe-spot-fleet-requests
is a paginated operation. Multiple API calls may be issued in order to retrieve the entire data set of results. You can disable pagination by providing the --no-paginate
argument.
When using --output text
and the --query
argument on a paginated response, the --query
argument must extract data from the results of the following query expressions: SpotFleetRequestConfigs
describe-spot-fleet-requests
[--dry-run | --no-dry-run]
[--spot-fleet-request-ids <value>]
[--cli-input-json | --cli-input-yaml]
[--starting-token <value>]
[--page-size <value>]
[--max-items <value>]
[--generate-cli-skeleton <value>]
--dry-run
| --no-dry-run
(boolean)
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is
DryRunOperation
. Otherwise, it isUnauthorizedOperation
.
--spot-fleet-request-ids
(list)
The IDs of the Spot Fleet requests.
(string)
Syntax:
"string" "string" ...
--cli-input-json
| --cli-input-yaml
(string)
Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton
. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml
.
--starting-token
(string)
A token to specify where to start paginating. This is the
NextToken
from a previously truncated response.For usage examples, see Pagination in the AWS Command Line Interface User Guide .
--page-size
(integer)
The size of each page to get in the AWS service call. This does not affect the number of items returned in the command’s output. Setting a smaller page size results in more calls to the AWS service, retrieving fewer items in each call. This can help prevent the AWS service calls from timing out.
For usage examples, see Pagination in the AWS Command Line Interface User Guide .
--max-items
(integer)
The total number of items to return in the command’s output. If the total number of items available is more than the value specified, a
NextToken
is provided in the command’s output. To resume pagination, provide theNextToken
value in thestarting-token
argument of a subsequent command. Do not use theNextToken
response element directly outside of the AWS CLI.For usage examples, see Pagination in the AWS Command Line Interface User Guide .
--generate-cli-skeleton
(string)
Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input
, prints a sample input JSON that can be used as an argument for --cli-input-json
. Similarly, if provided yaml-input
it will print a sample input YAML that can be used with --cli-input-yaml
. If provided with the value output
, it validates the command inputs and returns a sample output JSON for that command.
See ‘aws help’ for descriptions of global parameters.
To describe your Spot fleet requests
This example describes all of your Spot fleet requests.
Command:
aws ec2 describe-spot-fleet-requests
Output:
{
"SpotFleetRequestConfigs": [
{
"SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE",
"SpotFleetRequestConfig": {
"TargetCapacity": 20,
"LaunchSpecifications": [
{
"EbsOptimized": false,
"NetworkInterfaces": [
{
"SubnetId": "subnet-a61dafcf",
"DeviceIndex": 0,
"DeleteOnTermination": false,
"AssociatePublicIpAddress": true,
"SecondaryPrivateIpAddressCount": 0
}
],
"InstanceType": "cc2.8xlarge",
"ImageId": "ami-1a2b3c4d"
},
{
"EbsOptimized": false,
"NetworkInterfaces": [
{
"SubnetId": "subnet-a61dafcf",
"DeviceIndex": 0,
"DeleteOnTermination": false,
"AssociatePublicIpAddress": true,
"SecondaryPrivateIpAddressCount": 0
}
],
"InstanceType": "r3.8xlarge",
"ImageId": "ami-1a2b3c4d"
}
],
"SpotPrice": "0.05",
"IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role"
},
"SpotFleetRequestState": "active"
},
{
"SpotFleetRequestId": "sfr-306341ed-9739-402e-881b-ce47bEXAMPLE",
"SpotFleetRequestConfig": {
"TargetCapacity": 20,
"LaunchSpecifications": [
{
"EbsOptimized": false,
"NetworkInterfaces": [
{
"SubnetId": "subnet-6e7f829e",
"DeviceIndex": 0,
"DeleteOnTermination": false,
"AssociatePublicIpAddress": true,
"SecondaryPrivateIpAddressCount": 0
}
],
"InstanceType": "m3.medium",
"ImageId": "ami-1a2b3c4d"
}
],
"SpotPrice": "0.05",
"IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role"
},
"SpotFleetRequestState": "active"
}
]
}
To describe a Spot fleet request
This example describes the specified Spot fleet request.
Command:
aws ec2 describe-spot-fleet-requests --spot-fleet-request-ids sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE
Output:
{
"SpotFleetRequestConfigs": [
{
"SpotFleetRequestId": "sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE",
"SpotFleetRequestConfig": {
"TargetCapacity": 20,
"LaunchSpecifications": [
{
"EbsOptimized": false,
"NetworkInterfaces": [
{
"SubnetId": "subnet-a61dafcf",
"DeviceIndex": 0,
"DeleteOnTermination": false,
"AssociatePublicIpAddress": true,
"SecondaryPrivateIpAddressCount": 0
}
],
"InstanceType": "cc2.8xlarge",
"ImageId": "ami-1a2b3c4d"
},
{
"EbsOptimized": false,
"NetworkInterfaces": [
{
"SubnetId": "subnet-a61dafcf",
"DeviceIndex": 0,
"DeleteOnTermination": false,
"AssociatePublicIpAddress": true,
"SecondaryPrivateIpAddressCount": 0
}
],
"InstanceType": "r3.8xlarge",
"ImageId": "ami-1a2b3c4d"
}
],
"SpotPrice": "0.05",
"IamFleetRole": "arn:aws:iam::123456789012:role/my-spot-fleet-role"
},
"SpotFleetRequestState": "active"
}
]
}
NextToken -> (string)
The token required to retrieve the next set of results. This value is
null
when there are no more results to return.
SpotFleetRequestConfigs -> (list)
Information about the configuration of your Spot Fleet.
(structure)
Describes a Spot Fleet request.
ActivityStatus -> (string)
The progress of the Spot Fleet request. If there is an error, the status is
error
. After all requests are placed, the status ispending_fulfillment
. If the size of the fleet is equal to or greater than its target capacity, the status isfulfilled
. If the size of the fleet is decreased, the status ispending_termination
while Spot Instances are terminating.CreateTime -> (timestamp)
The creation date and time of the request.
SpotFleetRequestConfig -> (structure)
The configuration of the Spot Fleet request.
AllocationStrategy -> (string)
Indicates how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the Spot Fleet request.
If the allocation strategy is
lowestPrice
, Spot Fleet launches instances from the Spot Instance pools with the lowest price. This is the default allocation strategy.If the allocation strategy is
diversified
, Spot Fleet launches instances from all the Spot Instance pools that you specify.If the allocation strategy is
capacityOptimized
(recommended), Spot Fleet launches instances from Spot Instance pools with optimal capacity for the number of instances that are launching. To give certain instance types a higher chance of launching first, usecapacityOptimizedPrioritized
. Set a priority for each instance type by using thePriority
parameter forLaunchTemplateOverrides
. You can assign the same priority to differentLaunchTemplateOverrides
. 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 theOnDemandAllocationStrategy
is set toprioritized
, the same priority is applied when fulfilling On-Demand capacity.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 specifyprioritized
, 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 tolowestPrice
.SpotMaintenanceStrategies -> (structure)
The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.
CapacityRebalance -> (structure)
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 for Linux Instances .
ReplacementStrategy -> (string)
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 (inTerminationDelay
), 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 tolaunch-before-terminate
.Not valid when
ReplacementStrategy
is set tolaunch
.Valid values: Minimum value of
120
seconds. Maximum value of7200
seconds.ClientToken -> (string)
A unique, case-sensitive identifier that you provide to ensure the idempotency of your listings. This helps to avoid duplicate listings. For more information, see Ensuring Idempotency .
ExcessCapacityTerminationPolicy -> (string)
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.
FulfilledCapacity -> (double)
The number of units fulfilled by this request compared to the set target capacity. You cannot set this value.
OnDemandFulfilledCapacity -> (double)
The number of On-Demand units fulfilled by this request compared to the set target On-Demand capacity.
IamFleetRole -> (string)
The Amazon Resource Name (ARN) of an 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 for Linux Instances . Spot Fleet can terminate Spot Instances on your behalf when you cancel its Spot Fleet request using CancelSpotFleetRequests or when the Spot Fleet request expires, if you set
TerminateInstancesWithExpiration
.LaunchSpecifications -> (list)
The launch specifications for the Spot Fleet request. If you specify
LaunchSpecifications
, you can’t specifyLaunchTemplateConfigs
. If you include On-Demand capacity in your request, you must useLaunchTemplateConfigs
.(structure)
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 .SecurityGroups -> (list)
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.
(structure)
Describes a security group.
GroupName -> (string)
The name of the security group.
GroupId -> (string)
The ID of the security group.
AddressingType -> (string)
Deprecated.
BlockDeviceMappings -> (list)
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.
(structure)
Describes a block device mapping, which defines the EBS volumes and instance store volumes to attach to an instance at launch.
DeviceName -> (string)
The device name (for example,
/dev/sdh
orxvdh
).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 forephemeral0
andephemeral1
. 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.
Ebs -> (structure)
Parameters used to automatically set up EBS volumes when the instance is launched.
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 .
Iops -> (integer)
The number of I/O operations per second (IOPS). For
gp3
,io1
, andio2
volumes, this represents the number of IOPS that are provisioned for the volume. Forgp2
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-64,000 IOPSFor
io1
andio2
volumes, we guarantee 64,000 IOPS only for Instances built on the Nitro System . Other instance families guarantee performance up to 32,000 IOPS.This parameter is required for
io1
andio2
volumes. The default forgp3
volumes is 3,000 IOPS. This parameter is not supported forgp2
,st1
,sc1
, orstandard
volumes.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 volumes sizes for each volume type:
gp2
andgp3
:1-16,384
io1
andio2
: 4-16,384
st1
andsc1
: 125-16,384
standard
: 1-1,024VolumeType -> (string)
The volume type. For more information, see Amazon EBS volume types in the Amazon EC2 User Guide . If the volume type is
io1
orio2
, you must specify the IOPS that the volume supports.KmsKeyId -> (string)
Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.
This parameter is only supported on
BlockDeviceMapping
objects called by RunInstances , RequestSpotFleet , and RequestSpotInstances .Throughput -> (integer)
The throughput that the volume supports, in MiB/s.
This parameter is valid only for
gp3
volumes.Valid Range: Minimum value of 125. Maximum value of 1000.
OutpostArn -> (string)
The ARN of the Outpost on which the snapshot is stored.
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 .
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.
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 -> (structure)
The IAM instance profile.
Arn -> (string)
The Amazon Resource Name (ARN) of the instance profile.
Name -> (string)
The name of the instance profile.
ImageId -> (string)
The ID of the AMI.
InstanceType -> (string)
The instance type.
KernelId -> (string)
The ID of the kernel.
KeyName -> (string)
The name of the key pair.
Monitoring -> (structure)
Enable or disable monitoring for the instances.
Enabled -> (boolean)
Enables monitoring for the instance.
Default:
false
NetworkInterfaces -> (list)
One or more network interfaces. If you specify a network interface, you must specify subnet IDs and security group IDs using the network interface.
Note
SpotFleetLaunchSpecification
currently does not support Elastic Fabric Adapter (EFA). To specify an EFA, you must use LaunchTemplateConfig .(structure)
Describes a 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
.DeleteOnTermination -> (boolean)
If set to
true
, the interface is deleted when the instance is terminated. You can specifytrue
only if creating a new network interface when launching an instance.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)
The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.
(string)
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)
One or more 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.
(structure)
Describes an IPv6 address.
Ipv6Address -> (string)
The IPv6 address.
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.
PrivateIpAddress -> (string)
The private IPv4 address of the network interface. Applies only if creating a network interface when launching an instance. You cannot specify this option if you’re launching more than one instance in a RunInstances request.
PrivateIpAddresses -> (list)
One or more 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.
(structure)
Describes a secondary private IPv4 address for a network interface.
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 addresses.
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. Applies only if creating a network interface when launching an instance.
AssociateCarrierIpAddress -> (boolean)
Indicates whether to assign a carrier IP address to the network interface.
You can only assign a carrier IP address to a network interface that is in a subnet in a Wavelength Zone. For more information about carrier IP addresses, see Carrier IP addresses in the Amazon Web Services Wavelength Developer Guide.
InterfaceType -> (string)
The type of network interface.
Valid values:
interface
|efa
NetworkCardIndex -> (integer)
The index of the network card. Some instance types support multiple network cards. The primary network interface must be assigned to network card index 0. The default is network card index 0.
If you are using RequestSpotInstances to create Spot Instances, omit this parameter because you can’t specify the network card index when using this API. To specify the network card index, use RunInstances .
Ipv4Prefixes -> (list)
One or more IPv4 delegated prefixes to be assigned to the network interface. You cannot use this option if you use the
Ipv4PrefixCount
option.(structure)
Describes the IPv4 prefix option for a network interface.
Ipv4Prefix -> (string)
The IPv4 prefix. For information, see Assigning prefixes to Amazon EC2 network interfaces in the Amazon Elastic Compute Cloud User Guide .
Ipv4PrefixCount -> (integer)
The number of IPv4 delegated prefixes to be automatically assigned to the network interface. You cannot use this option if you use the
Ipv4Prefix
option.Ipv6Prefixes -> (list)
One or more IPv6 delegated prefixes to be assigned to the network interface. You cannot use this option if you use the
Ipv6PrefixCount
option.(structure)
Describes the IPv4 prefix option for a network interface.
Ipv6Prefix -> (string)
The IPv6 prefix.
Ipv6PrefixCount -> (integer)
The number of IPv6 delegated prefixes to be automatically assigned to the network interface. You cannot use this option if you use the
Ipv6Prefix
option.Placement -> (structure)
The placement information.
AvailabilityZone -> (string)
The Availability Zone.
[Spot Fleet only] 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 -> (string)
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. Thehost
tenancy is not supported for Spot Instances.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 Amazon Web Services Resource Center and search for the kernel ID.
SpotPrice -> (string)
The maximum price per unit hour that you are willing to pay for a Spot Instance. If this value is not specified, the default is the Spot price specified for the fleet. To determine the Spot price per unit hour, divide the Spot price by the value of
WeightedCapacity
.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”.
UserData -> (string)
The Base64-encoded user data that instances use when starting up.
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.
TagSpecifications -> (list)
The tags to apply during creation.
(structure)
The tags for a Spot Fleet resource.
ResourceType -> (string)
The type of resource. Currently, the only resource type that is supported is
instance
. To tag the Spot Fleet request on creation, use theTagSpecifications
parameter in `SpotFleetRequestConfigData
https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetRequestConfigData.html`__ .Tags -> (list)
The tags.
(structure)
Describes a tag.
Key -> (string)
The key of the tag.
Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with
aws:
.Value -> (string)
The value of the tag.
Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.
InstanceRequirements -> (structure)
The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.
Note
If you specify
InstanceRequirements
, you can’t specifyInstanceTypes
.VCpuCount -> (structure)
The minimum and maximum number of vCPUs.
Min -> (integer)
The minimum number of vCPUs. If the value is
0
, there is no minimum limit.Max -> (integer)
The maximum number of vCPUs. If this parameter is not specified, there is no maximum limit.
MemoryMiB -> (structure)
The minimum and maximum amount of memory, in MiB.
Min -> (integer)
The minimum amount of memory, in MiB. If this parameter is not specified, there is no minimum limit.
Max -> (integer)
The maximum amount of memory, in MiB. If this parameter is not specified, there is no maximum limit.
CpuManufacturers -> (list)
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 Amazon Web Services CPUs, specify
amazon-web-services
.Note
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
(string)
MemoryGiBPerVCpu -> (structure)
The minimum and maximum amount of memory per vCPU, in GiB.
Default: No minimum or maximum limits
Min -> (double)
The minimum amount of memory per vCPU, in GiB. If this parameter is not specified, there is no minimum limit.
Max -> (double)
The maximum amount of memory per vCPU, in GiB. If this parameter is not specified, there is no maximum limit.
ExcludedInstanceTypes -> (list)
The instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (
*
), to exclude an instance type, size, or generation. The following are examples:m5.8xlarge
,c5*.*
,m5a.*
,r*
,*3*
.For example, if you specify
c5*
,Amazon EC2 will exclude the entire C5 instance family, which includes all C5a and C5n instance types. If you specifym5a.*
, Amazon EC2 will exclude all the M5a instance types, but not the M5n instance types.Default: No excluded instance types
(string)
InstanceGenerations -> (list)
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
(string)
SpotMaxPricePercentageOverLowestPrice -> (integer)
The price protection threshold for Spot Instances. This is the maximum you’ll pay for a Spot Instance, expressed as a percentage above the cheapest M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.
The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
To turn off price protection, specify a high value, such as
999999
.This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements .
Default:
100
OnDemandMaxPricePercentageOverLowestPrice -> (integer)
The price protection threshold for On-Demand Instances. This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage above the cheapest M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.
The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
To turn off price protection, specify a high value, such as
999999
.This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements .
Default:
20
BareMetal -> (string)
Indicates whether bare metal instance types must be included, excluded, or required.
To include bare metal instance types, specify
included
.To require only bare metal instance types, specify
required
.To exclude bare metal instance types, specify
excluded
.Default:
excluded
BurstablePerformance -> (string)
Indicates whether burstable performance T instance types are included, excluded, or required. For more information, see Burstable performance instances .
To include burstable performance instance types, specify
included
.To require only burstable performance instance types, specify
required
.To exclude burstable performance instance types, specify
excluded
.Default:
excluded
RequireHibernateSupport -> (boolean)
Indicates whether instance types must support hibernation for On-Demand Instances.
This parameter is not supported for GetSpotPlacementScores .
Default:
false
NetworkInterfaceCount -> (structure)
The minimum and maximum number of network interfaces.
Default: No minimum or maximum limits
Min -> (integer)
The minimum number of network interfaces. If this parameter is not specified, there is no minimum limit.
Max -> (integer)
The maximum number of network interfaces. If this parameter is not specified, there is no maximum limit.
LocalStorage -> (string)
Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, Amazon EC2 instance store in the Amazon EC2 User Guide .
To include instance types with instance store volumes, specify
included
.To require only instance types with instance store volumes, specify
required
.To exclude instance types with instance store volumes, specify
excluded
.Default:
included
LocalStorageTypes -> (list)
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 (SDD) storage, specify
sdd
.Default:
hdd
andsdd
(string)
TotalLocalStorageGB -> (structure)
The minimum and maximum amount of total local storage, in GB.
Default: No minimum or maximum limits
Min -> (double)
The minimum amount of total local storage, in GB. If this parameter is not specified, there is no minimum limit.
Max -> (double)
The maximum amount of total local storage, in GB. If this parameter is not specified, there is no maximum limit.
BaselineEbsBandwidthMbps -> (structure)
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
Min -> (integer)
The minimum baseline bandwidth, in Mbps. If this parameter is not specified, there is no minimum limit.
Max -> (integer)
The maximum baseline bandwidth, in Mbps. If this parameter is not specified, there is no maximum limit.
AcceleratorTypes -> (list)
The accelerator types that must be on the instance type.
For instance types with GPU accelerators, specify
gpu
.For instance types with FPGA accelerators, specify
fpga
.For instance types with inference accelerators, specify
inference
.Default: Any accelerator type
(string)
AcceleratorCount -> (structure)
The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on an instance.
To exclude accelerator-enabled instance types, set
Max
to0
.Default: No minimum or maximum limits
Min -> (integer)
The minimum number of accelerators. If this parameter is not specified, there is no minimum limit.
Max -> (integer)
The maximum number of accelerators. If this parameter is not specified, there is no maximum limit.
AcceleratorManufacturers -> (list)
Indicates whether instance types must have accelerators by specific manufacturers.
For instance types with NVIDIA devices, specify
nvidia
.For instance types with AMD devices, specify
amd
.For instance types with Amazon Web Services devices, specify
amazon-web-services
.For instance types with Xilinx devices, specify
xilinx
.Default: Any manufacturer
(string)
AcceleratorNames -> (list)
The accelerators that must be on the instance type.
For instance types with NVIDIA A100 GPUs, specify
a100
.For instance types with NVIDIA V100 GPUs, specify
v100
.For instance types with NVIDIA K80 GPUs, specify
k80
.For instance types with NVIDIA T4 GPUs, specify
t4
.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 Xilinx VU9P FPGAs, specify
vu9p
.Default: Any accelerator
(string)
AcceleratorTotalMemoryMiB -> (structure)
The minimum and maximum amount of total accelerator memory, in MiB.
Default: No minimum or maximum limits
Min -> (integer)
The minimum amount of accelerator memory, in MiB. If this parameter is not specified, there is no minimum limit.
Max -> (integer)
The maximum amount of accelerator memory, in MiB. If this parameter is not specified, there is no maximum limit.
LaunchTemplateConfigs -> (list)
The launch template and overrides. If you specify
LaunchTemplateConfigs
, you can’t specifyLaunchSpecifications
. If you include On-Demand capacity in your request, you must useLaunchTemplateConfigs
.(structure)
Describes a launch template and overrides.
LaunchTemplateSpecification -> (structure)
The launch template.
LaunchTemplateId -> (string)
The ID of the launch template. If you specify the template ID, you can’t specify the template name.
LaunchTemplateName -> (string)
The name of the launch template. If you specify the template name, you can’t specify the template ID.
Version -> (string)
The launch template version number,
$Latest
, or$Default
. You must specify a value, otherwise the request fails.If the value is
$Latest
, Amazon EC2 uses the latest version of the launch template.If the value is
$Default
, Amazon EC2 uses the default version of the launch template.Overrides -> (list)
Any parameters that you specify override the same parameters in the launch template.
(structure)
Describes overrides for a launch template.
InstanceType -> (string)
The instance type.
SpotPrice -> (string)
The maximum price per unit hour that you are willing to pay for a Spot Instance.
SubnetId -> (string)
The ID of the subnet in which to launch the instances.
AvailabilityZone -> (string)
The Availability Zone in which to launch the instances.
WeightedCapacity -> (double)
The number of units provided by the specified instance type.
Priority -> (double)
The priority for the launch template override. The highest priority is launched first.
If
OnDemandAllocationStrategy
is set toprioritized
, Spot Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity.If the Spot
AllocationStrategy
is set tocapacityOptimizedPrioritized
, 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.InstanceRequirements -> (structure)
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.
Note
If you specify
InstanceRequirements
, you can’t specifyInstanceTypes
.VCpuCount -> (structure)
The minimum and maximum number of vCPUs.
Min -> (integer)
The minimum number of vCPUs. If the value is
0
, there is no minimum limit.Max -> (integer)
The maximum number of vCPUs. If this parameter is not specified, there is no maximum limit.
MemoryMiB -> (structure)
The minimum and maximum amount of memory, in MiB.
Min -> (integer)
The minimum amount of memory, in MiB. If this parameter is not specified, there is no minimum limit.
Max -> (integer)
The maximum amount of memory, in MiB. If this parameter is not specified, there is no maximum limit.
CpuManufacturers -> (list)
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 Amazon Web Services CPUs, specify
amazon-web-services
.Note
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
(string)
MemoryGiBPerVCpu -> (structure)
The minimum and maximum amount of memory per vCPU, in GiB.
Default: No minimum or maximum limits
Min -> (double)
The minimum amount of memory per vCPU, in GiB. If this parameter is not specified, there is no minimum limit.
Max -> (double)
The maximum amount of memory per vCPU, in GiB. If this parameter is not specified, there is no maximum limit.
ExcludedInstanceTypes -> (list)
The instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (
*
), to exclude an instance type, size, or generation. The following are examples:m5.8xlarge
,c5*.*
,m5a.*
,r*
,*3*
.For example, if you specify
c5*
,Amazon EC2 will exclude the entire C5 instance family, which includes all C5a and C5n instance types. If you specifym5a.*
, Amazon EC2 will exclude all the M5a instance types, but not the M5n instance types.Default: No excluded instance types
(string)
InstanceGenerations -> (list)
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
(string)
SpotMaxPricePercentageOverLowestPrice -> (integer)
The price protection threshold for Spot Instances. This is the maximum you’ll pay for a Spot Instance, expressed as a percentage above the cheapest M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.
The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
To turn off price protection, specify a high value, such as
999999
.This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements .
Default:
100
OnDemandMaxPricePercentageOverLowestPrice -> (integer)
The price protection threshold for On-Demand Instances. This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage above the cheapest M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.
The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
To turn off price protection, specify a high value, such as
999999
.This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements .
Default:
20
BareMetal -> (string)
Indicates whether bare metal instance types must be included, excluded, or required.
To include bare metal instance types, specify
included
.To require only bare metal instance types, specify
required
.To exclude bare metal instance types, specify
excluded
.Default:
excluded
BurstablePerformance -> (string)
Indicates whether burstable performance T instance types are included, excluded, or required. For more information, see Burstable performance instances .
To include burstable performance instance types, specify
included
.To require only burstable performance instance types, specify
required
.To exclude burstable performance instance types, specify
excluded
.Default:
excluded
RequireHibernateSupport -> (boolean)
Indicates whether instance types must support hibernation for On-Demand Instances.
This parameter is not supported for GetSpotPlacementScores .
Default:
false
NetworkInterfaceCount -> (structure)
The minimum and maximum number of network interfaces.
Default: No minimum or maximum limits
Min -> (integer)
The minimum number of network interfaces. If this parameter is not specified, there is no minimum limit.
Max -> (integer)
The maximum number of network interfaces. If this parameter is not specified, there is no maximum limit.
LocalStorage -> (string)
Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, Amazon EC2 instance store in the Amazon EC2 User Guide .
To include instance types with instance store volumes, specify
included
.To require only instance types with instance store volumes, specify
required
.To exclude instance types with instance store volumes, specify
excluded
.Default:
included
LocalStorageTypes -> (list)
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 (SDD) storage, specify
sdd
.Default:
hdd
andsdd
(string)
TotalLocalStorageGB -> (structure)
The minimum and maximum amount of total local storage, in GB.
Default: No minimum or maximum limits
Min -> (double)
The minimum amount of total local storage, in GB. If this parameter is not specified, there is no minimum limit.
Max -> (double)
The maximum amount of total local storage, in GB. If this parameter is not specified, there is no maximum limit.
BaselineEbsBandwidthMbps -> (structure)
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
Min -> (integer)
The minimum baseline bandwidth, in Mbps. If this parameter is not specified, there is no minimum limit.
Max -> (integer)
The maximum baseline bandwidth, in Mbps. If this parameter is not specified, there is no maximum limit.
AcceleratorTypes -> (list)
The accelerator types that must be on the instance type.
For instance types with GPU accelerators, specify
gpu
.For instance types with FPGA accelerators, specify
fpga
.For instance types with inference accelerators, specify
inference
.Default: Any accelerator type
(string)
AcceleratorCount -> (structure)
The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on an instance.
To exclude accelerator-enabled instance types, set
Max
to0
.Default: No minimum or maximum limits
Min -> (integer)
The minimum number of accelerators. If this parameter is not specified, there is no minimum limit.
Max -> (integer)
The maximum number of accelerators. If this parameter is not specified, there is no maximum limit.
AcceleratorManufacturers -> (list)
Indicates whether instance types must have accelerators by specific manufacturers.
For instance types with NVIDIA devices, specify
nvidia
.For instance types with AMD devices, specify
amd
.For instance types with Amazon Web Services devices, specify
amazon-web-services
.For instance types with Xilinx devices, specify
xilinx
.Default: Any manufacturer
(string)
AcceleratorNames -> (list)
The accelerators that must be on the instance type.
For instance types with NVIDIA A100 GPUs, specify
a100
.For instance types with NVIDIA V100 GPUs, specify
v100
.For instance types with NVIDIA K80 GPUs, specify
k80
.For instance types with NVIDIA T4 GPUs, specify
t4
.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 Xilinx VU9P FPGAs, specify
vu9p
.Default: Any accelerator
(string)
AcceleratorTotalMemoryMiB -> (structure)
The minimum and maximum amount of total accelerator memory, in MiB.
Default: No minimum or maximum limits
Min -> (integer)
The minimum amount of accelerator memory, in MiB. If this parameter is not specified, there is no minimum limit.
Max -> (integer)
The maximum amount of accelerator memory, in MiB. If this parameter is not specified, there is no maximum limit.
SpotPrice -> (string)
The maximum price per unit hour that you are willing to pay for a Spot Instance. The default is the On-Demand price.
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.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.OnDemandMaxTotalPrice -> (string)
The maximum amount per hour for On-Demand Instances that you’re willing to pay. You can use the
onDemandMaxTotalPrice
parameter, thespotMaxTotalPrice
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.SpotMaxTotalPrice -> (string)
The maximum amount per hour for Spot Instances that you’re willing to pay. You can use the
spotdMaxTotalPrice
parameter, theonDemandMaxTotalPrice
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.TerminateInstancesWithExpiration -> (boolean)
Indicates whether running Spot Instances are terminated when the Spot Fleet request expires.
Type -> (string)
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 ismaintain
, 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 -> (timestamp)
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 -> (timestamp)
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.
ReplaceUnhealthyInstances -> (boolean)
Indicates whether Spot Fleet should replace unhealthy instances.
InstanceInterruptionBehavior -> (string)
The behavior when a Spot Instance is interrupted. The default is
terminate
.LoadBalancersConfig -> (structure)
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.
ClassicLoadBalancersConfig -> (structure)
The Classic Load Balancers.
ClassicLoadBalancers -> (list)
One or more Classic Load Balancers.
(structure)
Describes a Classic Load Balancer.
Name -> (string)
The name of the load balancer.
TargetGroupsConfig -> (structure)
The target groups.
TargetGroups -> (list)
One or more target groups.
(structure)
Describes a load balancer target group.
Arn -> (string)
The Amazon Resource Name (ARN) of the target group.
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.
Context -> (string)
Reserved.
TargetCapacityUnitType -> (string)
The unit for the target capacity.
Default:
units
(translates to number of instances)TagSpecifications -> (list)
The key-value pair for tagging the Spot Fleet request on creation. The value for
ResourceType
must bespot-fleet-request
, otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the launch template (valid only if you useLaunchTemplateConfigs
) or in the `SpotFleetTagSpecification
https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html`__ (valid only if you useLaunchSpecifications
). For information about tagging after launch, see Tagging Your Resources .(structure)
The tags to apply to a resource when the resource is being created.
ResourceType -> (string)
The type of resource to tag on creation.
Tags -> (list)
The tags to apply to the resource.
(structure)
Describes a tag.
Key -> (string)
The key of the tag.
Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with
aws:
.Value -> (string)
The value of the tag.
Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.
SpotFleetRequestId -> (string)
The ID of the Spot Fleet request.
SpotFleetRequestState -> (string)
The state of the Spot Fleet request.
Tags -> (list)
The tags for a Spot Fleet resource.
(structure)
Describes a tag.
Key -> (string)
The key of the tag.
Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with
aws:
.Value -> (string)
The value of the tag.
Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.