Skip to content

aws.ec2.describe_fleets

Example SQL Queries

SELECT * FROM
aws.ec2.describe_fleets;

Description

Describes the specified EC2 Fleet or all of your EC2 Fleets.

If a fleet is of type instant, you must specify the fleet ID in the request, otherwise the fleet does not appear in the response.

For more information, see Describe your EC2 Fleet in the Amazon EC2 User Guide.

Table Definition

Column NameColumn Data Type
dry_run Input Column

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 is UnauthorizedOperation.

BOOLEAN
filters Input Column

The filters.

  • activity-status - The progress of the EC2 Fleet ( error | pending-fulfillment | pending-termination | fulfilled).

  • excess-capacity-termination-policy - Indicates whether to terminate running instances if the target capacity is decreased below the current EC2 Fleet size (true | false).

  • fleet-state - The state of the EC2 Fleet (submitted | active | deleted | failed | deleted-running | deleted-terminating | modifying).

  • replace-unhealthy-instances - Indicates whether EC2 Fleet should replace unhealthy instances (true | false).

  • type - The type of request (instant | request | maintain).

STRUCT(
"name" VARCHAR,
"values" VARCHAR[]
)[]
Show child fields
filters[]
Show child fields
filters[].name

The name of the filter. Filter names are case-sensitive.

filters[].values[]
fleet_ids Input Column

The IDs of the EC2 Fleets.

If a fleet is of type instant, you must specify the fleet ID, otherwise it does not appear in the response.

VARCHAR[]
Show child fields
fleet_ids[]
_aws_profile Input Column

The AWS profile defines the AWS identity used. It can be defined via credentials or by assuming a IAM role.

STRUCT(
"type" VARCHAR,
"name" VARCHAR,
"account_id" VARCHAR,
"via_profile_name" VARCHAR,
"assumed_role_arn" VARCHAR,
"organization" STRUCT(
"account_name" VARCHAR,
"id" VARCHAR,
"tags" STRUCT(
"key" VARCHAR,
"value" VARCHAR
)[],
"master_account" STRUCT(
"id" VARCHAR,
"email" VARCHAR
),
"parents" STRUCT(
"type" VARCHAR,
"id" VARCHAR,
"name" VARCHAR,
"tags" STRUCT(
"key" VARCHAR,
"value" VARCHAR
)[]
)[]
)
)
Show child fields
_aws_profile.account_id

The AWS account id

_aws_profile.assumed_role_arn

The ARN of the assumed role

_aws_profile.name

The unique name of the profile.

_aws_profile.organization

Information about this profile's membership in the AWS organization.

Show child fields
_aws_profile.organization.account_name

The name of account speciifed by the organization

_aws_profile.organization.id

The organization id

_aws_profile.organization.master_account
Show child fields
_aws_profile.organization.master_account.email

The organization master account email address

_aws_profile.organization.master_account.id

The organization master account id

_aws_profile.organization.parents[]
Show child fields
_aws_profile.organization.parents[].id

The id of the parent

_aws_profile.organization.parents[].name

The name of the parent

_aws_profile.organization.parents[].tags[]
Show child fields
_aws_profile.organization.parents[].tags[].key
_aws_profile.organization.parents[].tags[].value
_aws_profile.organization.parents[].type

The type of parent can be an organization unit or a root

_aws_profile.organization.tags[]
Show child fields
_aws_profile.organization.tags[].key
_aws_profile.organization.tags[].value
_aws_profile.type

The type of profile, either 'credentials' or 'assumed_role'

_aws_profile.via_profile_name

This IAM role for this profile is assumed by first utilizing another profile with this name to obtain credentials.

_aws_region Input Column

The AWS region to use.

VARCHAR
activity_status

The progress of the EC2 Fleet. If there is an error, the status is error. After all requests are placed, the status is pending_fulfillment. If the size of the EC2 Fleet is equal to or greater than its target capacity, the status is fulfilled. If the size of the EC2 Fleet is decreased, the status is pending_termination while instances are terminating.

VARCHAR
client_token

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.

Constraints: Maximum 64 ASCII characters

VARCHAR
context

Reserved.

VARCHAR
create_time

The creation date and time of the EC2 Fleet.

TIMESTAMP_S
errors

Information about the instances that could not be launched by the fleet. Valid only when Type is set to instant.

STRUCT(
"launch_template_and_overrides" STRUCT(
"launch_template_specification" STRUCT(
"launch_template_id" VARCHAR,
"launch_template_name" VARCHAR,
"version" VARCHAR
),
"overrides" STRUCT(
"instance_type" VARCHAR,
"max_price" VARCHAR,
"subnet_id" VARCHAR,
"availability_zone" VARCHAR,
"weighted_capacity" DOUBLE,
"priority" DOUBLE,
"placement" STRUCT(
"group_name" VARCHAR
),
"instance_requirements" STRUCT(
"v_cpu_count" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"memory_mi_b" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"cpu_manufacturers" VARCHAR[],
"memory_gi_b_per_v_cpu" STRUCT(
"min" DOUBLE,
"max" DOUBLE
),
"excluded_instance_types" VARCHAR[],
"instance_generations" VARCHAR[],
"spot_max_price_percentage_over_lowest_price" BIGINT,
"on_demand_max_price_percentage_over_lowest_price" BIGINT,
"bare_metal" VARCHAR,
"burstable_performance" VARCHAR,
"require_hibernate_support" BOOLEAN,
"network_interface_count" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"local_storage" VARCHAR,
"local_storage_types" VARCHAR[],
"total_local_storage_gb" STRUCT(
"min" DOUBLE,
"max" DOUBLE
),
"baseline_ebs_bandwidth_mbps" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"accelerator_types" VARCHAR[],
"accelerator_count" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"accelerator_manufacturers" VARCHAR[],
"accelerator_names" VARCHAR[],
"accelerator_total_memory_mi_b" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"network_bandwidth_gbps" STRUCT(
"min" DOUBLE,
"max" DOUBLE
),
"allowed_instance_types" VARCHAR[],
"max_spot_price_as_percentage_of_optimal_on_demand_price" BIGINT
),
"image_id" VARCHAR
)
),
"lifecycle" VARCHAR,
"error_code" VARCHAR,
"error_message" VARCHAR
)[]
Show child fields
errors[]
Show child fields
errors[].error_code

The error code that indicates why the instance could not be launched. For more information about error codes, see Error codes.

errors[].error_message

The error message that describes why the instance could not be launched. For more information about error messages, see Error codes.

errors[].launch_template_and_overrides

The launch templates and overrides that were used for launching the instances. The values that you specify in the Overrides replace the values in the launch template.

Show child fields
errors[].launch_template_and_overrides.launch_template_specification

The launch template.

Show child fields
errors[].launch_template_and_overrides.launch_template_specification.launch_template_id

The ID of the launch template.

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

errors[].launch_template_and_overrides.launch_template_specification.launch_template_name

The name of the launch template.

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

errors[].launch_template_and_overrides.launch_template_specification.version

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.

errors[].launch_template_and_overrides.overrides

Any parameters that you specify override the same parameters in the launch template.

Show child fields
errors[].launch_template_and_overrides.overrides.availability_zone

The Availability Zone in which to launch the instances.

errors[].launch_template_and_overrides.overrides.image_id

The ID of the AMI in the format ami-17characters00000.

Alternatively, you can specify a Systems Manager parameter, using one of the following formats. The Systems Manager parameter will resolve to an AMI ID on launch.

To reference a public parameter:

  • resolve:ssm:public-parameter

To reference a parameter stored in the same account:

  • resolve:ssm:parameter-name

  • resolve:ssm:parameter-name:version-number

  • resolve:ssm:parameter-name:label

To reference a parameter shared from another Amazon Web Services account:

  • resolve:ssm:parameter-ARN

  • resolve:ssm:parameter-ARN:version-number

  • resolve:ssm:parameter-ARN:label

For more information, see Use a Systems Manager parameter instead of an AMI ID in the Amazon EC2 User Guide.

This parameter is only available for fleets of type instant. For fleets of type maintain and request, you must specify the AMI ID in the launch template.

errors[].launch_template_and_overrides.overrides.instance_requirements

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.

Show child fields
errors[].launch_template_and_overrides.overrides.instance_requirements.accelerator_count

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 to 0.

Default: No minimum or maximum limits

Show child fields
errors[].launch_template_and_overrides.overrides.instance_requirements.accelerator_count.max

The maximum number of accelerators. If this parameter is not specified, there is no maximum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.accelerator_count.min

The minimum number of accelerators. If this parameter is not specified, there is no minimum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.accelerator_manufacturers[]
errors[].launch_template_and_overrides.overrides.instance_requirements.accelerator_names[]
errors[].launch_template_and_overrides.overrides.instance_requirements.accelerator_total_memory_mi_b

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

Default: No minimum or maximum limits

Show child fields
errors[].launch_template_and_overrides.overrides.instance_requirements.accelerator_total_memory_mi_b.max

The maximum amount of accelerator memory, in MiB. If this parameter is not specified, there is no maximum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.accelerator_total_memory_mi_b.min

The minimum amount of accelerator memory, in MiB. If this parameter is not specified, there is no minimum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.accelerator_types[]
errors[].launch_template_and_overrides.overrides.instance_requirements.allowed_instance_types[]
errors[].launch_template_and_overrides.overrides.instance_requirements.bare_metal

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

errors[].launch_template_and_overrides.overrides.instance_requirements.baseline_ebs_bandwidth_mbps

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

Show child fields
errors[].launch_template_and_overrides.overrides.instance_requirements.baseline_ebs_bandwidth_mbps.max

The maximum baseline bandwidth, in Mbps. If this parameter is not specified, there is no maximum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.baseline_ebs_bandwidth_mbps.min

The minimum baseline bandwidth, in Mbps. If this parameter is not specified, there is no minimum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.burstable_performance

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

errors[].launch_template_and_overrides.overrides.instance_requirements.cpu_manufacturers[]
errors[].launch_template_and_overrides.overrides.instance_requirements.excluded_instance_types[]
errors[].launch_template_and_overrides.overrides.instance_requirements.instance_generations[]
errors[].launch_template_and_overrides.overrides.instance_requirements.local_storage

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

errors[].launch_template_and_overrides.overrides.instance_requirements.local_storage_types[]
errors[].launch_template_and_overrides.overrides.instance_requirements.max_spot_price_as_percentage_of_optimal_on_demand_price

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

errors[].launch_template_and_overrides.overrides.instance_requirements.memory_gi_b_per_v_cpu

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

Default: No minimum or maximum limits

Show child fields
errors[].launch_template_and_overrides.overrides.instance_requirements.memory_gi_b_per_v_cpu.max

The maximum amount of memory per vCPU, in GiB. If this parameter is not specified, there is no maximum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.memory_gi_b_per_v_cpu.min

The minimum amount of memory per vCPU, in GiB. If this parameter is not specified, there is no minimum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.memory_mi_b

The minimum and maximum amount of memory, in MiB.

Show child fields
errors[].launch_template_and_overrides.overrides.instance_requirements.memory_mi_b.max

The maximum amount of memory, in MiB. If this parameter is not specified, there is no maximum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.memory_mi_b.min

The minimum amount of memory, in MiB. If this parameter is not specified, there is no minimum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.network_bandwidth_gbps

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

Default: No minimum or maximum limits

Show child fields
errors[].launch_template_and_overrides.overrides.instance_requirements.network_bandwidth_gbps.max

The maximum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no maximum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.network_bandwidth_gbps.min

The minimum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no minimum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.network_interface_count

The minimum and maximum number of network interfaces.

Default: No minimum or maximum limits

Show child fields
errors[].launch_template_and_overrides.overrides.instance_requirements.network_interface_count.max

The maximum number of network interfaces. If this parameter is not specified, there is no maximum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.network_interface_count.min

The minimum number of network interfaces. If this parameter is not specified, there is no minimum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.on_demand_max_price_percentage_over_lowest_price

[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

To turn off price protection, specify a high value, such as 999999.

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.

Default: 20

errors[].launch_template_and_overrides.overrides.instance_requirements.require_hibernate_support

Indicates whether instance types must support hibernation for On-Demand Instances.

This parameter is not supported for GetSpotPlacementScores.

Default: false

errors[].launch_template_and_overrides.overrides.instance_requirements.spot_max_price_percentage_over_lowest_price

[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

errors[].launch_template_and_overrides.overrides.instance_requirements.total_local_storage_gb

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

Default: No minimum or maximum limits

Show child fields
errors[].launch_template_and_overrides.overrides.instance_requirements.total_local_storage_gb.max

The maximum amount of total local storage, in GB. If this parameter is not specified, there is no maximum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.total_local_storage_gb.min

The minimum amount of total local storage, in GB. If this parameter is not specified, there is no minimum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.v_cpu_count

The minimum and maximum number of vCPUs.

Show child fields
errors[].launch_template_and_overrides.overrides.instance_requirements.v_cpu_count.max

The maximum number of vCPUs. If this parameter is not specified, there is no maximum limit.

errors[].launch_template_and_overrides.overrides.instance_requirements.v_cpu_count.min

The minimum number of vCPUs. If the value is 0, there is no minimum limit.

errors[].launch_template_and_overrides.overrides.instance_type

The instance type.

mac1.metal is not supported as a launch template override.

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

errors[].launch_template_and_overrides.overrides.max_price

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.

errors[].launch_template_and_overrides.overrides.placement

The location where the instance launched, if applicable.

Show child fields
errors[].launch_template_and_overrides.overrides.placement.group_name

The name of the placement group that the instance is in.

errors[].launch_template_and_overrides.overrides.priority

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

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

If the Spot AllocationStrategy is set to capacity-optimized-prioritized, EC2 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 override has the lowest priority. You can set the same priority for different launch template overrides.

errors[].launch_template_and_overrides.overrides.subnet_id

The ID of the subnet in which to launch the instances.

errors[].launch_template_and_overrides.overrides.weighted_capacity

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 lowest-price and price-capacity-optimized 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.

errors[].lifecycle

Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.

excess_capacity_termination_policy

Indicates whether running instances should be terminated if the target capacity of the EC2 Fleet is decreased below the current size of the EC2 Fleet.

Supported only for fleets of type maintain.

VARCHAR
fleet_id

The ID of the EC2 Fleet.

VARCHAR
fleet_state

The state of the EC2 Fleet.

VARCHAR
fulfilled_capacity

The number of units fulfilled by this request compared to the set target capacity.

DOUBLE
fulfilled_on_demand_capacity

The number of units fulfilled by this request compared to the set target On-Demand capacity.

DOUBLE
instances

Information about the instances that were launched by the fleet. Valid only when Type is set to instant.

STRUCT(
"launch_template_and_overrides" STRUCT(
"launch_template_specification" STRUCT(
"launch_template_id" VARCHAR,
"launch_template_name" VARCHAR,
"version" VARCHAR
),
"overrides" STRUCT(
"instance_type" VARCHAR,
"max_price" VARCHAR,
"subnet_id" VARCHAR,
"availability_zone" VARCHAR,
"weighted_capacity" DOUBLE,
"priority" DOUBLE,
"placement" STRUCT(
"group_name" VARCHAR
),
"instance_requirements" STRUCT(
"v_cpu_count" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"memory_mi_b" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"cpu_manufacturers" VARCHAR[],
"memory_gi_b_per_v_cpu" STRUCT(
"min" DOUBLE,
"max" DOUBLE
),
"excluded_instance_types" VARCHAR[],
"instance_generations" VARCHAR[],
"spot_max_price_percentage_over_lowest_price" BIGINT,
"on_demand_max_price_percentage_over_lowest_price" BIGINT,
"bare_metal" VARCHAR,
"burstable_performance" VARCHAR,
"require_hibernate_support" BOOLEAN,
"network_interface_count" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"local_storage" VARCHAR,
"local_storage_types" VARCHAR[],
"total_local_storage_gb" STRUCT(
"min" DOUBLE,
"max" DOUBLE
),
"baseline_ebs_bandwidth_mbps" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"accelerator_types" VARCHAR[],
"accelerator_count" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"accelerator_manufacturers" VARCHAR[],
"accelerator_names" VARCHAR[],
"accelerator_total_memory_mi_b" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"network_bandwidth_gbps" STRUCT(
"min" DOUBLE,
"max" DOUBLE
),
"allowed_instance_types" VARCHAR[],
"max_spot_price_as_percentage_of_optimal_on_demand_price" BIGINT
),
"image_id" VARCHAR
)
),
"lifecycle" VARCHAR,
"instance_ids" VARCHAR[],
"instance_type" VARCHAR,
"platform" VARCHAR
)[]
Show child fields
instances[]
Show child fields
instances[].instance_ids[]
instances[].instance_type

The instance type.

instances[].launch_template_and_overrides

The launch templates and overrides that were used for launching the instances. The values that you specify in the Overrides replace the values in the launch template.

Show child fields
instances[].launch_template_and_overrides.launch_template_specification

The launch template.

Show child fields
instances[].launch_template_and_overrides.launch_template_specification.launch_template_id

The ID of the launch template.

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

instances[].launch_template_and_overrides.launch_template_specification.launch_template_name

The name of the launch template.

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

instances[].launch_template_and_overrides.launch_template_specification.version

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.

instances[].launch_template_and_overrides.overrides

Any parameters that you specify override the same parameters in the launch template.

Show child fields
instances[].launch_template_and_overrides.overrides.availability_zone

The Availability Zone in which to launch the instances.

instances[].launch_template_and_overrides.overrides.image_id

The ID of the AMI in the format ami-17characters00000.

Alternatively, you can specify a Systems Manager parameter, using one of the following formats. The Systems Manager parameter will resolve to an AMI ID on launch.

To reference a public parameter:

  • resolve:ssm:public-parameter

To reference a parameter stored in the same account:

  • resolve:ssm:parameter-name

  • resolve:ssm:parameter-name:version-number

  • resolve:ssm:parameter-name:label

To reference a parameter shared from another Amazon Web Services account:

  • resolve:ssm:parameter-ARN

  • resolve:ssm:parameter-ARN:version-number

  • resolve:ssm:parameter-ARN:label

For more information, see Use a Systems Manager parameter instead of an AMI ID in the Amazon EC2 User Guide.

This parameter is only available for fleets of type instant. For fleets of type maintain and request, you must specify the AMI ID in the launch template.

instances[].launch_template_and_overrides.overrides.instance_requirements

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.

Show child fields
instances[].launch_template_and_overrides.overrides.instance_requirements.accelerator_count

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 to 0.

Default: No minimum or maximum limits

Show child fields
instances[].launch_template_and_overrides.overrides.instance_requirements.accelerator_count.max

The maximum number of accelerators. If this parameter is not specified, there is no maximum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.accelerator_count.min

The minimum number of accelerators. If this parameter is not specified, there is no minimum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.accelerator_manufacturers[]
instances[].launch_template_and_overrides.overrides.instance_requirements.accelerator_names[]
instances[].launch_template_and_overrides.overrides.instance_requirements.accelerator_total_memory_mi_b

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

Default: No minimum or maximum limits

Show child fields
instances[].launch_template_and_overrides.overrides.instance_requirements.accelerator_total_memory_mi_b.max

The maximum amount of accelerator memory, in MiB. If this parameter is not specified, there is no maximum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.accelerator_total_memory_mi_b.min

The minimum amount of accelerator memory, in MiB. If this parameter is not specified, there is no minimum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.accelerator_types[]
instances[].launch_template_and_overrides.overrides.instance_requirements.allowed_instance_types[]
instances[].launch_template_and_overrides.overrides.instance_requirements.bare_metal

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

instances[].launch_template_and_overrides.overrides.instance_requirements.baseline_ebs_bandwidth_mbps

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

Show child fields
instances[].launch_template_and_overrides.overrides.instance_requirements.baseline_ebs_bandwidth_mbps.max

The maximum baseline bandwidth, in Mbps. If this parameter is not specified, there is no maximum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.baseline_ebs_bandwidth_mbps.min

The minimum baseline bandwidth, in Mbps. If this parameter is not specified, there is no minimum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.burstable_performance

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

instances[].launch_template_and_overrides.overrides.instance_requirements.cpu_manufacturers[]
instances[].launch_template_and_overrides.overrides.instance_requirements.excluded_instance_types[]
instances[].launch_template_and_overrides.overrides.instance_requirements.instance_generations[]
instances[].launch_template_and_overrides.overrides.instance_requirements.local_storage

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

instances[].launch_template_and_overrides.overrides.instance_requirements.local_storage_types[]
instances[].launch_template_and_overrides.overrides.instance_requirements.max_spot_price_as_percentage_of_optimal_on_demand_price

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

instances[].launch_template_and_overrides.overrides.instance_requirements.memory_gi_b_per_v_cpu

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

Default: No minimum or maximum limits

Show child fields
instances[].launch_template_and_overrides.overrides.instance_requirements.memory_gi_b_per_v_cpu.max

The maximum amount of memory per vCPU, in GiB. If this parameter is not specified, there is no maximum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.memory_gi_b_per_v_cpu.min

The minimum amount of memory per vCPU, in GiB. If this parameter is not specified, there is no minimum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.memory_mi_b

The minimum and maximum amount of memory, in MiB.

Show child fields
instances[].launch_template_and_overrides.overrides.instance_requirements.memory_mi_b.max

The maximum amount of memory, in MiB. If this parameter is not specified, there is no maximum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.memory_mi_b.min

The minimum amount of memory, in MiB. If this parameter is not specified, there is no minimum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.network_bandwidth_gbps

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

Default: No minimum or maximum limits

Show child fields
instances[].launch_template_and_overrides.overrides.instance_requirements.network_bandwidth_gbps.max

The maximum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no maximum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.network_bandwidth_gbps.min

The minimum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no minimum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.network_interface_count

The minimum and maximum number of network interfaces.

Default: No minimum or maximum limits

Show child fields
instances[].launch_template_and_overrides.overrides.instance_requirements.network_interface_count.max

The maximum number of network interfaces. If this parameter is not specified, there is no maximum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.network_interface_count.min

The minimum number of network interfaces. If this parameter is not specified, there is no minimum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.on_demand_max_price_percentage_over_lowest_price

[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

To turn off price protection, specify a high value, such as 999999.

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.

Default: 20

instances[].launch_template_and_overrides.overrides.instance_requirements.require_hibernate_support

Indicates whether instance types must support hibernation for On-Demand Instances.

This parameter is not supported for GetSpotPlacementScores.

Default: false

instances[].launch_template_and_overrides.overrides.instance_requirements.spot_max_price_percentage_over_lowest_price

[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

instances[].launch_template_and_overrides.overrides.instance_requirements.total_local_storage_gb

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

Default: No minimum or maximum limits

Show child fields
instances[].launch_template_and_overrides.overrides.instance_requirements.total_local_storage_gb.max

The maximum amount of total local storage, in GB. If this parameter is not specified, there is no maximum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.total_local_storage_gb.min

The minimum amount of total local storage, in GB. If this parameter is not specified, there is no minimum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.v_cpu_count

The minimum and maximum number of vCPUs.

Show child fields
instances[].launch_template_and_overrides.overrides.instance_requirements.v_cpu_count.max

The maximum number of vCPUs. If this parameter is not specified, there is no maximum limit.

instances[].launch_template_and_overrides.overrides.instance_requirements.v_cpu_count.min

The minimum number of vCPUs. If the value is 0, there is no minimum limit.

instances[].launch_template_and_overrides.overrides.instance_type

The instance type.

mac1.metal is not supported as a launch template override.

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

instances[].launch_template_and_overrides.overrides.max_price

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.

instances[].launch_template_and_overrides.overrides.placement

The location where the instance launched, if applicable.

Show child fields
instances[].launch_template_and_overrides.overrides.placement.group_name

The name of the placement group that the instance is in.

instances[].launch_template_and_overrides.overrides.priority

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

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

If the Spot AllocationStrategy is set to capacity-optimized-prioritized, EC2 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 override has the lowest priority. You can set the same priority for different launch template overrides.

instances[].launch_template_and_overrides.overrides.subnet_id

The ID of the subnet in which to launch the instances.

instances[].launch_template_and_overrides.overrides.weighted_capacity

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 lowest-price and price-capacity-optimized 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.

instances[].lifecycle

Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.

instances[].platform

The value is Windows for Windows instances. Otherwise, the value is blank.

launch_template_configs

The launch template and overrides.

STRUCT(
"launch_template_specification" STRUCT(
"launch_template_id" VARCHAR,
"launch_template_name" VARCHAR,
"version" VARCHAR
),
"overrides" STRUCT(
"instance_type" VARCHAR,
"max_price" VARCHAR,
"subnet_id" VARCHAR,
"availability_zone" VARCHAR,
"weighted_capacity" DOUBLE,
"priority" DOUBLE,
"placement" STRUCT(
"group_name" VARCHAR
),
"instance_requirements" STRUCT(
"v_cpu_count" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"memory_mi_b" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"cpu_manufacturers" VARCHAR[],
"memory_gi_b_per_v_cpu" STRUCT(
"min" DOUBLE,
"max" DOUBLE
),
"excluded_instance_types" VARCHAR[],
"instance_generations" VARCHAR[],
"spot_max_price_percentage_over_lowest_price" BIGINT,
"on_demand_max_price_percentage_over_lowest_price" BIGINT,
"bare_metal" VARCHAR,
"burstable_performance" VARCHAR,
"require_hibernate_support" BOOLEAN,
"network_interface_count" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"local_storage" VARCHAR,
"local_storage_types" VARCHAR[],
"total_local_storage_gb" STRUCT(
"min" DOUBLE,
"max" DOUBLE
),
"baseline_ebs_bandwidth_mbps" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"accelerator_types" VARCHAR[],
"accelerator_count" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"accelerator_manufacturers" VARCHAR[],
"accelerator_names" VARCHAR[],
"accelerator_total_memory_mi_b" STRUCT(
"min" BIGINT,
"max" BIGINT
),
"network_bandwidth_gbps" STRUCT(
"min" DOUBLE,
"max" DOUBLE
),
"allowed_instance_types" VARCHAR[],
"max_spot_price_as_percentage_of_optimal_on_demand_price" BIGINT
),
"image_id" VARCHAR
)[]
)[]
Show child fields
launch_template_configs[]
Show child fields
launch_template_configs[].launch_template_specification

The launch template.

Show child fields
launch_template_configs[].launch_template_specification.launch_template_id

The ID of the launch template.

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

launch_template_configs[].launch_template_specification.launch_template_name

The name of the launch template.

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

launch_template_configs[].launch_template_specification.version

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.

launch_template_configs[].overrides[]
Show child fields
launch_template_configs[].overrides[].availability_zone

The Availability Zone in which to launch the instances.

launch_template_configs[].overrides[].image_id

The ID of the AMI in the format ami-17characters00000.

Alternatively, you can specify a Systems Manager parameter, using one of the following formats. The Systems Manager parameter will resolve to an AMI ID on launch.

To reference a public parameter:

  • resolve:ssm:public-parameter

To reference a parameter stored in the same account:

  • resolve:ssm:parameter-name

  • resolve:ssm:parameter-name:version-number

  • resolve:ssm:parameter-name:label

To reference a parameter shared from another Amazon Web Services account:

  • resolve:ssm:parameter-ARN

  • resolve:ssm:parameter-ARN:version-number

  • resolve:ssm:parameter-ARN:label

For more information, see Use a Systems Manager parameter instead of an AMI ID in the Amazon EC2 User Guide.

This parameter is only available for fleets of type instant. For fleets of type maintain and request, you must specify the AMI ID in the launch template.

launch_template_configs[].overrides[].instance_requirements

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.

Show child fields
launch_template_configs[].overrides[].instance_requirements.accelerator_count

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 to 0.

Default: No minimum or maximum limits

Show child fields
launch_template_configs[].overrides[].instance_requirements.accelerator_count.max

The maximum number of accelerators. If this parameter is not specified, there is no maximum limit.

launch_template_configs[].overrides[].instance_requirements.accelerator_count.min

The minimum number of accelerators. If this parameter is not specified, there is no minimum limit.

launch_template_configs[].overrides[].instance_requirements.accelerator_manufacturers[]
launch_template_configs[].overrides[].instance_requirements.accelerator_names[]
launch_template_configs[].overrides[].instance_requirements.accelerator_total_memory_mi_b

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

Default: No minimum or maximum limits

Show child fields
launch_template_configs[].overrides[].instance_requirements.accelerator_total_memory_mi_b.max

The maximum amount of accelerator memory, in MiB. If this parameter is not specified, there is no maximum limit.

launch_template_configs[].overrides[].instance_requirements.accelerator_total_memory_mi_b.min

The minimum amount of accelerator memory, in MiB. If this parameter is not specified, there is no minimum limit.

launch_template_configs[].overrides[].instance_requirements.accelerator_types[]
launch_template_configs[].overrides[].instance_requirements.allowed_instance_types[]
launch_template_configs[].overrides[].instance_requirements.bare_metal

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

launch_template_configs[].overrides[].instance_requirements.baseline_ebs_bandwidth_mbps

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

Show child fields
launch_template_configs[].overrides[].instance_requirements.baseline_ebs_bandwidth_mbps.max

The maximum baseline bandwidth, in Mbps. If this parameter is not specified, there is no maximum limit.

launch_template_configs[].overrides[].instance_requirements.baseline_ebs_bandwidth_mbps.min

The minimum baseline bandwidth, in Mbps. If this parameter is not specified, there is no minimum limit.

launch_template_configs[].overrides[].instance_requirements.burstable_performance

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

launch_template_configs[].overrides[].instance_requirements.cpu_manufacturers[]
launch_template_configs[].overrides[].instance_requirements.excluded_instance_types[]
launch_template_configs[].overrides[].instance_requirements.instance_generations[]
launch_template_configs[].overrides[].instance_requirements.local_storage

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

launch_template_configs[].overrides[].instance_requirements.local_storage_types[]
launch_template_configs[].overrides[].instance_requirements.max_spot_price_as_percentage_of_optimal_on_demand_price

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

launch_template_configs[].overrides[].instance_requirements.memory_gi_b_per_v_cpu

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

Default: No minimum or maximum limits

Show child fields
launch_template_configs[].overrides[].instance_requirements.memory_gi_b_per_v_cpu.max

The maximum amount of memory per vCPU, in GiB. If this parameter is not specified, there is no maximum limit.

launch_template_configs[].overrides[].instance_requirements.memory_gi_b_per_v_cpu.min

The minimum amount of memory per vCPU, in GiB. If this parameter is not specified, there is no minimum limit.

launch_template_configs[].overrides[].instance_requirements.memory_mi_b

The minimum and maximum amount of memory, in MiB.

Show child fields
launch_template_configs[].overrides[].instance_requirements.memory_mi_b.max

The maximum amount of memory, in MiB. If this parameter is not specified, there is no maximum limit.

launch_template_configs[].overrides[].instance_requirements.memory_mi_b.min

The minimum amount of memory, in MiB. If this parameter is not specified, there is no minimum limit.

launch_template_configs[].overrides[].instance_requirements.network_bandwidth_gbps

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

Default: No minimum or maximum limits

Show child fields
launch_template_configs[].overrides[].instance_requirements.network_bandwidth_gbps.max

The maximum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no maximum limit.

launch_template_configs[].overrides[].instance_requirements.network_bandwidth_gbps.min

The minimum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no minimum limit.

launch_template_configs[].overrides[].instance_requirements.network_interface_count

The minimum and maximum number of network interfaces.

Default: No minimum or maximum limits

Show child fields
launch_template_configs[].overrides[].instance_requirements.network_interface_count.max

The maximum number of network interfaces. If this parameter is not specified, there is no maximum limit.

launch_template_configs[].overrides[].instance_requirements.network_interface_count.min

The minimum number of network interfaces. If this parameter is not specified, there is no minimum limit.

launch_template_configs[].overrides[].instance_requirements.on_demand_max_price_percentage_over_lowest_price

[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

To turn off price protection, specify a high value, such as 999999.

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.

Default: 20

launch_template_configs[].overrides[].instance_requirements.require_hibernate_support

Indicates whether instance types must support hibernation for On-Demand Instances.

This parameter is not supported for GetSpotPlacementScores.

Default: false

launch_template_configs[].overrides[].instance_requirements.spot_max_price_percentage_over_lowest_price

[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

launch_template_configs[].overrides[].instance_requirements.total_local_storage_gb

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

Default: No minimum or maximum limits

Show child fields
launch_template_configs[].overrides[].instance_requirements.total_local_storage_gb.max

The maximum amount of total local storage, in GB. If this parameter is not specified, there is no maximum limit.

launch_template_configs[].overrides[].instance_requirements.total_local_storage_gb.min

The minimum amount of total local storage, in GB. If this parameter is not specified, there is no minimum limit.

launch_template_configs[].overrides[].instance_requirements.v_cpu_count

The minimum and maximum number of vCPUs.

Show child fields
launch_template_configs[].overrides[].instance_requirements.v_cpu_count.max

The maximum number of vCPUs. If this parameter is not specified, there is no maximum limit.

launch_template_configs[].overrides[].instance_requirements.v_cpu_count.min

The minimum number of vCPUs. If the value is 0, there is no minimum limit.

launch_template_configs[].overrides[].instance_type

The instance type.

mac1.metal is not supported as a launch template override.

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

launch_template_configs[].overrides[].max_price

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.

launch_template_configs[].overrides[].placement

The location where the instance launched, if applicable.

Show child fields
launch_template_configs[].overrides[].placement.group_name

The name of the placement group that the instance is in.

launch_template_configs[].overrides[].priority

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

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

If the Spot AllocationStrategy is set to capacity-optimized-prioritized, EC2 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 override has the lowest priority. You can set the same priority for different launch template overrides.

launch_template_configs[].overrides[].subnet_id

The ID of the subnet in which to launch the instances.

launch_template_configs[].overrides[].weighted_capacity

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 lowest-price and price-capacity-optimized 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.

on_demand_options

The allocation strategy of On-Demand Instances in an EC2 Fleet.

STRUCT(
"allocation_strategy" VARCHAR,
"capacity_reservation_options" STRUCT(
"usage_strategy" VARCHAR
),
"single_instance_type" BOOLEAN,
"single_availability_zone" BOOLEAN,
"min_target_capacity" BIGINT,
"max_total_price" VARCHAR
)
Show child fields
on_demand_options.allocation_strategy

The strategy that determines the order of the launch template overrides to use in fulfilling On-Demand capacity.

lowest-price - EC2 Fleet uses price to determine the order, launching the lowest price first.

prioritized - EC2 Fleet uses the priority that you assigned to each launch template override, launching the highest priority first.

Default: lowest-price

on_demand_options.capacity_reservation_options

The strategy for using unused Capacity Reservations for fulfilling On-Demand capacity.

Supported only for fleets of type instant.

Show child fields
on_demand_options.capacity_reservation_options.usage_strategy

Indicates whether to use unused Capacity Reservations for fulfilling On-Demand capacity.

If you specify use-capacity-reservations-first, the fleet uses unused Capacity Reservations to fulfill On-Demand capacity up to the target On-Demand capacity. If multiple instance pools have unused Capacity Reservations, the On-Demand allocation strategy (lowest-price or prioritized) is applied. If the number of unused Capacity Reservations is less than the On-Demand target capacity, the remaining On-Demand target capacity is launched according to the On-Demand allocation strategy (lowest-price or prioritized).

If you do not specify a value, the fleet fulfils the On-Demand capacity according to the chosen On-Demand allocation strategy.

on_demand_options.max_total_price

The maximum amount per hour for On-Demand Instances that you're willing to pay.

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 maxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for maxTotalPrice. For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide.

on_demand_options.min_target_capacity

The minimum target capacity for On-Demand Instances in the fleet. If this minimum capacity isn't reached, no instances are launched.

Constraints: Maximum value of 1000. Supported only for fleets of type instant.

At least one of the following must be specified: SingleAvailabilityZone | SingleInstanceType

on_demand_options.single_availability_zone

Indicates that the fleet launches all On-Demand Instances into a single Availability Zone.

Supported only for fleets of type instant.

on_demand_options.single_instance_type

Indicates that the fleet uses a single instance type to launch all On-Demand Instances in the fleet.

Supported only for fleets of type instant.

replace_unhealthy_instances

Indicates whether EC2 Fleet should replace unhealthy Spot Instances. Supported only for fleets of type maintain. For more information, see EC2 Fleet health checks in the Amazon EC2 User Guide.

BOOLEAN
spot_options

The configuration of Spot Instances in an EC2 Fleet.

STRUCT(
"allocation_strategy" VARCHAR,
"maintenance_strategies" STRUCT(
"capacity_rebalance" STRUCT(
"replacement_strategy" VARCHAR,
"termination_delay" BIGINT
)
),
"instance_interruption_behavior" VARCHAR,
"instance_pools_to_use_count" BIGINT,
"single_instance_type" BOOLEAN,
"single_availability_zone" BOOLEAN,
"min_target_capacity" BIGINT,
"max_total_price" VARCHAR
)
Show child fields
spot_options.allocation_strategy

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

price-capacity-optimized (recommended)

EC2 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. EC2 Fleet then requests Spot Instances from the lowest priced of these pools.

capacity-optimized

EC2 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 capacity-optimized-prioritized. 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. capacity-optimized-prioritized is supported only if your EC2 Fleet uses a launch template. Note that if the On-Demand AllocationStrategy is set to prioritized, the same priority is applied when fulfilling On-Demand capacity.

diversified

EC2 Fleet requests instances from all of the Spot Instance pools that you specify.

lowest-price (not recommended)

We don't recommend the lowest-price allocation strategy because it has the highest risk of interruption for your Spot Instances.

EC2 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, EC2 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: lowest-price

spot_options.instance_interruption_behavior

The behavior when a Spot Instance is interrupted.

Default: terminate

spot_options.instance_pools_to_use_count

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

Note that EC2 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, EC2 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.

spot_options.maintenance_strategies

The strategies for managing your workloads on your Spot Instances that will be interrupted. Currently only the capacity rebalance strategy is available.

Show child fields
spot_options.maintenance_strategies.capacity_rebalance

The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted.

Show child fields
spot_options.maintenance_strategies.capacity_rebalance.replacement_strategy

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

launch - EC2 Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet. EC2 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 - EC2 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.

spot_options.maintenance_strategies.capacity_rebalance.termination_delay

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.

spot_options.max_total_price

The maximum amount per hour for Spot Instances that you're willing to pay. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

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 maxTotalPrice does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for maxTotalPrice. For more information, see Surplus credits can incur charges in the Amazon EC2 User Guide.

spot_options.min_target_capacity

The minimum target capacity for Spot Instances in the fleet. If this minimum capacity isn't reached, no instances are launched.

Constraints: Maximum value of 1000. Supported only for fleets of type instant.

At least one of the following must be specified: SingleAvailabilityZone | SingleInstanceType

spot_options.single_availability_zone

Indicates that the fleet launches all Spot Instances into a single Availability Zone.

Supported only for fleets of type instant.

spot_options.single_instance_type

Indicates that the fleet uses a single instance type to launch all Spot Instances in the fleet.

Supported only for fleets of type instant.

tags

The tags for an EC2 Fleet resource.

STRUCT(
"key" VARCHAR,
"value" VARCHAR
)[]
Show child fields
tags[]
Show child fields
tags[].key

The key of the tag.

Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws:.

tags[].value

The value of the tag.

Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.

target_capacity_specification

The number of 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.

STRUCT(
"total_target_capacity" BIGINT,
"on_demand_target_capacity" BIGINT,
"spot_target_capacity" BIGINT,
"default_target_capacity_type" VARCHAR,
"target_capacity_unit_type" VARCHAR
)
Show child fields
target_capacity_specification.default_target_capacity_type

The default target capacity type.

target_capacity_specification.on_demand_target_capacity

The number of On-Demand units to request. If you specify a target capacity for Spot units, you cannot specify a target capacity for On-Demand units.

target_capacity_specification.spot_target_capacity

The maximum number of Spot units to launch. If you specify a target capacity for On-Demand units, you cannot specify a target capacity for Spot units.

target_capacity_specification.target_capacity_unit_type

The unit for the target capacity.

target_capacity_specification.total_target_capacity

The number of units to request, filled the default target capacity type.

terminate_instances_with_expiration

Indicates whether running instances should be terminated when the EC2 Fleet expires.

BOOLEAN
type

The type of request. Indicates whether the EC2 Fleet only requests the target capacity, or also attempts to maintain it. If you request a certain target capacity, EC2 Fleet only places the required requests; it does not attempt to replenish instances if capacity is diminished, and it does not submit requests in alternative capacity pools if capacity is unavailable. To maintain a certain target capacity, EC2 Fleet places the required requests to meet this target capacity. It also automatically replenishes any interrupted Spot Instances. Default: maintain.

VARCHAR
valid_from

The start date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.

TIMESTAMP_S
valid_until

The end date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new instance requests are placed or able to fulfill the request. The default end date is 7 days from the current date.

TIMESTAMP_S