AWS::EC2::CapacityReservationFleet
Creates a new Capacity Reservation Fleet with the specified attributes. For more information, see Capacity Reservation Fleets in the Amazon EC2 User Guide.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "Type" : "AWS::EC2::CapacityReservationFleet", "Properties" : { "AllocationStrategy" :
String
, "EndDate" :String
, "InstanceMatchCriteria" :String
, "InstanceTypeSpecifications" :[ InstanceTypeSpecification, ... ]
, "NoRemoveEndDate" :Boolean
, "RemoveEndDate" :Boolean
, "TagSpecifications" :[ TagSpecification, ... ]
, "Tenancy" :String
, "TotalTargetCapacity" :Integer
} }
YAML
Type: AWS::EC2::CapacityReservationFleet Properties: AllocationStrategy:
String
EndDate:String
InstanceMatchCriteria:String
InstanceTypeSpecifications:- InstanceTypeSpecification
NoRemoveEndDate:Boolean
RemoveEndDate:Boolean
TagSpecifications:- TagSpecification
Tenancy:String
TotalTargetCapacity:Integer
Properties
AllocationStrategy
-
The strategy used by the Capacity Reservation Fleet to determine which of the specified instance types to use. Currently, only the
prioritized
allocation strategy is supported. For more information, see Allocation strategy in the Amazon EC2 User Guide.Valid values:
prioritized
Required: No
Type: String
Update requires: Replacement
EndDate
-
The date and time at which the Capacity Reservation Fleet expires. When the Capacity Reservation Fleet expires, its state changes to
expired
and all of the Capacity Reservations in the Fleet expire.The Capacity Reservation Fleet expires within an hour after the specified time. For example, if you specify
5/31/2019
,13:30:55
, the Capacity Reservation Fleet is guaranteed to expire between13:30:55
and14:30:55
on5/31/2019
.Required: No
Type: String
Update requires: Replacement
InstanceMatchCriteria
-
Indicates the type of instance launches that the Capacity Reservation Fleet accepts. All Capacity Reservations in the Fleet inherit this instance matching criteria.
Currently, Capacity Reservation Fleets support
open
instance matching criteria only. This means that instances that have matching attributes (instance type, platform, and Availability Zone) run in the Capacity Reservations automatically. Instances do not need to explicitly target a Capacity Reservation Fleet to use its reserved capacity.Required: No
Type: String
Allowed values:
open
Update requires: Replacement
InstanceTypeSpecifications
-
Information about the instance types for which to reserve the capacity.
Required: No
Type: Array of InstanceTypeSpecification
Maximum:
50
Update requires: Replacement
NoRemoveEndDate
-
Used to add an end date to a Capacity Reservation Fleet that has no end date and time. To add an end date to a Capacity Reservation Fleet, specify
true
for this paramater and specify the end date and time (in UTC time format) for the EndDate parameter.Required: No
Type: Boolean
Update requires: No interruption
RemoveEndDate
-
Used to remove an end date from a Capacity Reservation Fleet that is configured to end automatically at a specific date and time. To remove the end date from a Capacity Reservation Fleet, specify
true
for this paramater and omit the EndDate parameter.Required: No
Type: Boolean
Update requires: No interruption
-
The tags to assign to the Capacity Reservation Fleet. The tags are automatically assigned to the Capacity Reservations in the Fleet.
Required: No
Type: Array of TagSpecification
Update requires: Replacement
Tenancy
-
Indicates the tenancy of the Capacity Reservation Fleet. All Capacity Reservations in the Fleet inherit this tenancy. The Capacity Reservation Fleet can have one of the following tenancy settings:
-
default
- The Capacity Reservation Fleet is created on hardware that is shared with other AWS accounts. -
dedicated
- The Capacity Reservations are created on single-tenant hardware that is dedicated to a single AWS account.
Required: No
Type: String
Allowed values:
default
Update requires: Replacement
-
TotalTargetCapacity
-
The total number of capacity units to be reserved by the Capacity Reservation Fleet. This value, together with the instance type weights that you assign to each instance type used by the Fleet determine the number of instances for which the Fleet reserves capacity. Both values are based on units that make sense for your workload. For more information, see Total target capacity in the Amazon EC2 User Guide.
Required: No
Type: Integer
Minimum:
1
Maximum:
25000
Update requires: No interruption
Return values
Ref
When you pass the logical ID of this resource to the intrinsic Ref
function, Ref
returns the resource ID, such as
crf-abcdef01234567890
.
Fn::GetAtt
The Fn::GetAtt
intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.
For more information about using the Fn::GetAtt
intrinsic function, see Fn::GetAtt
.
CapacityReservationFleetId
-
The ID of the Capacity Reservation Fleet.
Examples
Creating a Capacity Reservation Fleet
The following example creates a Capacity Feservation Fleet that creates Capacity
Reservations for 2 c4.large
or c5.large
instances. The
Fleet prioritizes c4.large
over c5.large
and both instance
types have the same weight.
YAML
AWSTemplateFormatVersion: 2010-09-09 Resources: EC2CapacityReservationFleetCanary: Type: 'AWS::EC2::CapacityReservationFleet' Properties: AllocationStrategy: "prioritized" InstanceTypeSpecifications: - InstanceType: "c4.large" InstancePlatform: "Linux/UNIX" AvailabilityZone: "us-east-1a" Weight: 1 Priority: 1 - InstanceType: "c5.large" InstancePlatform: "Linux/UNIX" AvailabilityZone: "us-east-1a" Weight: 1 Priority: 2 Tenancy: "default" TotalTargetCapacity: 2 InstanceMatchCriteria: "open"