sigs.k8s.io/cluster-api@v1.7.1/docs/book/src/developer/architecture/controllers/machine-deployment.md (about) 1 # MachineDeployment 2 3 A MachineDeployment orchestrates deployments over a fleet of [MachineSets](./machine-set.md). 4 5 Its main responsibilities are: 6 * Adopting matching MachineSets not assigned to a MachineDeployment 7 * Adopting matching MachineSets not assigned to a Cluster 8 * Managing the Machine deployment process 9 * Scaling up new MachineSets when changes are made 10 * Scaling down old MachineSets when newer MachineSets replace them 11 * Updating the status of MachineDeployment objects 12 13  14 15 ## In-place propagation 16 Changes to the following fields of the MachineDeployment are propagated in-place to the MachineSet and do not trigger a full rollout: 17 - `.annotations` 18 - `.spec.template.metadata.labels` 19 - `.spec.template.metadata.annotations` 20 - `.spec.minReadySeconds` 21 - `.spec.template.spec.nodeDrainTimeout` 22 - `.spec.template.spec.nodeDeletionTimeout` 23 - `.spec.template.spec.nodeVolumeDetachTimeout` 24 - `.spec.strategy.rollingUpdate.deletePolicy` 25 26 Note: In cases where changes to any of these fields are paired with rollout causing changes, the new values are propagated only to the new MachineSet.