- 
                Notifications
    You must be signed in to change notification settings 
- Fork 1.4k
Closed
Labels
kind/featureCategorizes issue or PR as related to a new feature.Categorizes issue or PR as related to a new feature.lifecycle/activeIndicates that an issue or PR is actively being worked on by a contributor.Indicates that an issue or PR is actively being worked on by a contributor.priority/important-soonMust be staffed and worked on either currently, or very soon, ideally in time for the next release.Must be staffed and worked on either currently, or very soon, ideally in time for the next release.
Milestone
Description
Today, it's hard to understand that a Machine is fully healthy, and what determines a Machine not healthy.
For example, KCP performs kubeadm-specific health checks (inspect the etcd node, static pods, and so on). We should expose all of these internal checks by writing specific conditions on Machines from different controllers.
Let's brainstorm though on a design that could work across the board, given that kubeadm isn't the one and only bootstrapper used out there.
- Machine controller should try to verify as much as possible, and only manage conditions that are common across bootstrappers. For example, "NodeReady" is something that we can easily check.
- A new controller under KCP could check all control-plane nodes managed by KCP and start adding conditions that are very specific to how KCP deploys control plane nodes (stacked etcd, and so on).
- CABPK controller could be responsible for all generic kubeadm-specific machine information (TBD what that would look like though).
There is a clear overlap in these examples, in the final form they shouldn't have any. Each condition needs a clear owner/manager. The main goal of this issue is to provide a uniform and coherent in-depth view on a Machine's health.
/kind feature
Metadata
Metadata
Assignees
Labels
kind/featureCategorizes issue or PR as related to a new feature.Categorizes issue or PR as related to a new feature.lifecycle/activeIndicates that an issue or PR is actively being worked on by a contributor.Indicates that an issue or PR is actively being worked on by a contributor.priority/important-soonMust be staffed and worked on either currently, or very soon, ideally in time for the next release.Must be staffed and worked on either currently, or very soon, ideally in time for the next release.