-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RFE: CAPI failure domain & control plane support #1647
Comments
Is my understanding correct in that the goals here are:
|
@alexbrand I would probably reword your 3rd goal to:
Depending on the scale of the ControlPlane or the number of failure domains it may not be possible to have a Machine in each failure domain, or it may require multiple machines in some failure domains. It may also be good to add an additional goal:
|
/lifecycle active |
@ncdc @vincepri how should we handle getting the details of the proposal documented in repo? It seems like data that we'd want to make sure is highlighted... Maybe it's just a matter of updating the provider implementer docs for now, but I feel like we also need to capture the architectural details somewhere as well. |
@detiber I'd probably add content to the cluster infra provider spec doc describing failure domains, and probably talk about them in the control plane provider spec doc too. Would that suffice? |
Opened #1901 |
User Story
As a Cluster API operator I would like to have the control plane resource create Machines in different failure domains.
Detailed Description
The ControlPlane proposal offers a streamlined way to have control plane management in Cluster API. However, it does not support failure domains; this issue is an addendum to add basic support for failure domains to
ControlPlane
andMachines
.Contract changes
Status.FailureDomains
in its cluster resource (e.g.AcmeCluster
).Cluster.Spec.InfrastructureRef
(if any) is parsed using unstructured object utilities. The reconciler parses and copiesStatus.FailureDomains
from the InfrastructureCluster to Cluster.Cluster.Status.FailureDomains
slice, filters the ones that are applicable for control plane use, and picks one by some deterministic method.Data model changes
FailureDomain
ClusterStatus
[]FailureDomain
MachineSpec
*FailureDomain
Goals
Cluster
.Non-Goals / Future Work
MachineSet
orMachineDeployment
./kind proposal
/milestone v0.3.0
/priority important-soon
The text was updated successfully, but these errors were encountered: