AWS CloudFormation
User Guide (API Version 2010-05-15)

AWS::EC2::EC2Fleet

The AWS::EC2::EC2Fleet resource specifies the configuration information to launch a fleet—or group—of instances. An EC2 Fleet can launch multiple instance types across multiple Availability Zones, using the On-Demand Instance, Reserved Instance, and Spot Instance purchasing models together. Using EC2 Fleet, you can define separate On-Demand and Spot capacity targets, specify the instance types that work best for your applications, and specify how Amazon EC2 should distribute your fleet capacity within each purchasing model. For more information, see Launching an EC2 Fleet in the Amazon EC2 User Guide for Linux Instances.

Syntax

To declare this entity in your AWS CloudFormation template, use the following syntax:

Properties

ExcessCapacityTerminationPolicy

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

Required: No

Type: String

Update requires: No interruption

LaunchTemplateConfigs

The configuration for the EC2 Fleet.

Required: Yes

Type: List of FleetLaunchTemplateConfigRequest property types

Update requires: Replacement

OnDemandOptions

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

Required: No

Type: OnDemandOptionsRequest

Update requires: Replacement

ReplaceUnhealthyInstances

Indicates whether EC2 Fleet should replace unhealthy instances.

Required: No

Type: Boolean

Update requires: Replacement

SpotOptions

Describes the configuration of Spot Instances in an EC2 Fleet.

Required: No

Type: SpotOptionsRequest

Update requires: Replacement

TagSpecifications

The key-value pair for tagging the EC2 Fleet request on creation. The value for ResourceType must be fleet, otherwise the fleet request fails. To tag instances at launch, specify the tags in the launch template. For information about tagging after launch, see Tagging Your Resources.

Required: No

Type: List of TagSpecification property types

Update requires: Replacement

TargetCapacitySpecification

The TotalTargetCapacity, OnDemandTargetCapacity, SpotTargetCapacity, and DefaultCapacityType structure.

Required: Yes

Type: TargetCapacitySpecificationRequest

Update requires: No interruption

TerminateInstancesWithExpiration

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

Required: No

Type: Boolean

Update requires: Replacement

Type

The type of the request. By default, the EC2 Fleet places an asynchronous request for your desired capacity, and maintains it by replenishing interrupted Spot Instances (maintain). A value of instant places a synchronous one-time request, and returns errors for any instances that could not be launched. A value of request places an asynchronous one-time request without maintaining capacity or submitting requests in alternative capacity pools if capacity is unavailable. For more information, see EC2 Fleet Request Types in the Amazon EC2 User Guide for Linux Instances.

request Required: No

Type: String

Update requires: Replacement

ValidFrom

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.

Required: No

Type: String

Update requires: Replacement

ValidUntil

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

Required: No

Type: String

Update requires: Replacement

Return Values

Ref

When you pass the logical ID of an AWS::EC2::EC2Fleet resource to the intrinsic Ref function, the function returns the fleet ID, such as fleet-1fe24079-d272-4023-8e7c-70e10784cb0e.

For more information about using the Ref function, see Ref.

See Also