A fast introduction to the Machine Controller Manager aka MCM, which is a group of cooperative controllers that manage the lifecycle of the worker machines that abstract cloud provider instances. It is inspired by the design of Kube Controller Manager in which various sub controllers manage their respective Kubernetes resources. MCM gives you the following benefits:
- Seamlessly manage machines/nodes with a declarative API (across different cloud providers)
- Integrate generically with the k8s cluster autoscaler.
- Plugin with tools such as the node-problem-detector
- Support rolling upgrades of machines/nodes