-
Feature
-
Resolution: Done
-
Major
-
None
-
Product / Portfolio Work
-
None
-
0% To Do, 0% In Progress, 100% Done
-
False
-
-
False
-
None
-
None
-
-
-
None
-
None
-
None
-
-
Feature Overview (aka. Goal Summary)
An elevator pitch (value statement) that describes the Feature in a clear, concise way. Complete during New status.
Add support for configuring EC2 instance Capacity Reservation Preference in Cluster API Provider AWS (CAPA). This allows users to control how worker nodes interact with AWS Capacity Reservations — whether they must launch into a reservation, prefer open reservations, or run as standard On-Demand instances. This enhancement brings parity with AWS EC2 launch options and improves capacity planning flexibility for managed Kubernetes environments such as ROSA with Hosted Control Planes (HCP).
Goals (aka. expected user outcomes)
The observable functionality that the user now has as a result of receiving this feature. Include the anticipated primary user type/persona and which existing features, if any, will be expanded. Complete during New status.
- Cluster API users (e.g., Platform Engineers, Site Reliability Engineers) can configure CapacityReservationPreference per node pool using AWSMachineTemplate or equivalent CAPI constructs.
- Users can choose between:
-
- capacity-reservations-only – instance launch fails if no matching reservation is available.
-
- open – instance prefers a reservation but falls back to On-Demand.
-
- none – instance ignores reservations and always runs On-Demand.
Requirements (aka. Acceptance Criteria):
A list of specific needs or objectives that a feature must deliver in order to be considered complete. Be sure to include nonfunctional requirements such as security, reliability, performance, maintainability, scalability, usability, etc. Initial completion during Refinement status.
- A new field capacityReservationPreference is available under PlacementOptions or equivalent CAPA placement spec.
- Field validation limits values to capacity-reservations-only, open, or none.
- If capacityReservationPreference is set to capacity-reservations-only, the user can also optionally configure CapacityReservationTarget.
Anyone reviewing this Feature needs to know which deployment configurations that the Feature will apply to (or not) once it's been completed. Describe specific needs (or indicate N/A) for each of the following deployment scenarios. For specific configurations that are out-of-scope for a given release, ensure you provide the OCPSTRAT (for the future to be supported configuration) as well.
Deployment considerations | List applicable specific needs (N/A = not applicable) |
Self-managed, managed, or both | Both |
Classic (standalone cluster) | yes |
Hosted control planes | yes |
Multi node, Compact (three node), or Single node (SNO), or all | All |
Connected / Restricted Network | both |
Architectures, e.g. x86_x64, ARM (aarch64), IBM Power (ppc64le), and IBM Z (s390x) | |
Operator compatibility | |
Backport needed (list applicable versions) | |
UI need (e.g. OpenShift Console, dynamic plugin, OCM) | no |
Other (please specify) |
Use Cases (Optional):
Include use case diagrams, main success scenarios, alternative flow scenarios. Initial completion during Refinement status.
<your text here>
Questions to Answer (Optional):
Include a list of refinement / architectural questions that may need to be answered before coding can begin. Initial completion during Refinement status.
<your text here>
Out of Scope
High-level list of items that are out of scope. Initial completion during Refinement status.
<your text here>
Background
Provide any additional context is needed to frame the feature. Initial completion during Refinement status.
<your text here>
Customer Considerations
Provide any additional customer-specific considerations that must be made when designing and delivering the Feature. Initial completion during Refinement status.
<your text here>
Documentation Considerations
Provide information that needs to be considered and planned so that documentation will meet customer needs. If the feature extends existing functionality, provide a link to its current documentation. Initial completion during Refinement status.
Update CAPA documentation to include capacityReservationPreference usage.
Interoperability Considerations
Which other projects, including ROSA/OSD/ARO, and versions in our portfolio does this feature impact? What interoperability test scenarios should be factored by the layered products? Initial completion during Refinement status.
ROSA with Hosted Control Planes will benefit from this when scaling worker pools.
- blocks
-
OCPSTRAT-1590 HCP AWS Capacity Blocks Support for GPU Reservations
-
- Closed
-
- clones
-
OCPSTRAT-1791 Support AWS Capacity Blocks for ML in MAPI/CAPI
-
- Closed
-
- depends on
-
OCPCLOUD-2780 Support AWS Capacity Blocks for ML in MAPI
-
- Closed
-
-
OCPCLOUD-2779 Support Capacity Blocks for ML in CAPA
-
- Closed
-
- relates to
-
OCPSTRAT-1336 [Upstream] Support Capacity capacity-reservations in CAPA
-
- Closed
-
- links to