Capacity Reservation Fleet concepts and planning
The following information describes how to plan a Capacity Reservation Fleet and describes Capacity Reservation Fleet concepts including total target capacity, allocation strategy, instance type weight, and instance type priority.
Topics
Plan a Capacity Reservation Fleet
When planning your Capacity Reservation Fleet, we recommend that you do the following:
-
Determine the amount of compute capacity that is needed by your workload.
-
Decide on the instance types and Availability Zones that you want to use.
-
Assign each instance type a priority based on your needs and preferences. For more information, see Instance type priority.
-
Create a capacity weighting system that makes sense for your workload. Assign a weight to each instance type and determine your total target capacity. For more information, see Instance type weight and Total target capacity.
-
Determine whether you need the Capacity Reservation indefinitely or only for a specific period of time.
Total target capacity
The total target capacity defines the total amount of compute capacity that the Capacity Reservation Fleet reserves. You specify the total target capacity when you create the Capacity Reservation Fleet. After the Fleet has been created, Amazon EC2 automatically creates Capacity Reservations to reserve capacity up to the total target capacity.
The number of instances for which the Capacity Reservation Fleet reserves capacity is determined by the
total target capacity and the instance type weight that you specify for
each instance type in the Capacity Reservation Fleet (total target capacity
/instance type
weight
=number of instances
).
You can assign a total target capacity based on units that are meaningful to your
workload. For example, if your workload requires a certain number of vCPUs, you
can assign the total target capacity based on the number of vCPUs required. If
your workload requires 2048
vCPUs, specify a total target capacity
of 2048
and then assign instance type weights based on the number
of vCPUs provided by the instance types in the Fleet. For an example, see Instance type weight.
Allocation strategy
The allocation strategy for your Capacity Reservation Fleet determines how it fulfills your request for reserved capacity from the instance type specifications in the Capacity Reservation Fleet configuration.
Currently, only the prioritized
allocation strategy is supported. With this
strategy, the Capacity Reservation Fleet creates Capacity Reservations using the priorities that you have assigned to each
of the instance type specifications in the Capacity Reservation Fleet configuration. Lower priority values
indicate higher priority for use. For example, say you create a Capacity Reservation Fleet that uses the
following instance types and priorities:
-
m4.16xlarge
— priority = 1 -
m5.16xlarge
— priority = 3 -
m5.24xlarge
— priority = 2
The Fleet first attempts to create Capacity Reservations for m4.16xlarge
. If Amazon EC2
has insufficient m4.16xlarge
capacity, the Fleet attempts to create
Capacity Reservations for m5.24xlarge
. If Amazon EC2 has insufficient m5.24xlarge
capacity, the Fleet creates Capacity Reservations for m5.16xlarge
.
Instance type weight
The instance type weight is a weight that you assign to each instance type in the Capacity Reservation Fleet. The weight determines how many units of capacity each instance of that specific instance type counts toward the Fleet's total target capacity.
You can assign weights based on units that are meaningful to your workload. For example,
if your workload requires a certain number of vCPUs, you can assign weights
based on the number of vCPUs provided by each instance type in the Capacity Reservation Fleet. In
this case, if you create a Capacity Reservation Fleet using m4.16xlarge
and
m5.24xlarge
instances, you would assign weights that correspond
to the number of vCPUs for each instance as follows:
-
m4.16xlarge
—64
vCPUs, weight =64
units -
m5.24xlarge
—96
vCPUs, weight =96
units
The instance type weight determines the number of instances for which the Capacity Reservation Fleet
reserves capacity. For example, if a Capacity Reservation Fleet with a total target capacity of
384
units uses the instance types and weights in the preceding
example, the Fleet could reserve capacity for 6
m4.16xlarge
instances (384 total target capacity/64 instance type
weight=6 instances), or 4
m5.24xlarge
instances (384 / 96 = 4).
If you do not assign instance type weights, or if you assign an instance type weight of
1
, the total target capacity is based purely on instance count.
For example, if a Capacity Reservation Fleet with a total target capacity of 384
units uses the instance types in the preceding example, but omits the weights or
specifies a weight of 1
for both instance types, the Fleet could
reserve capacity for either 384
m4.16xlarge
instances or 384
m5.24xlarge
instances.
Instance type priority
The instance type priority is a value that you assign to the instance types in the Fleet. The priorities are used to determine which of the instance types specified for the Fleet should be prioritized for use.
Lower priority values indicate a higher priority for use.