-
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
Consider dropping MachineHealthCheck conditions validations #9762
Comments
We already support the missing node scenario cluster-api/internal/controllers/machinehealthcheck/machinehealthcheck_targets.go Line 108 in 806b10f
Are you suggesting something different? |
The issue is not the missing node scenario :) Is that validation webhook forces me to set conditions on MHC, even if I just want to check the missing node scenario and nothing else. So today I need to set some random condition in https://doc.crds.dev/github.com/kubernetes-sigs/cluster-api/cluster.x-k8s.io/MachineHealthCheck/[email protected]#spec-unhealthyConditions just because I don't care about unhealthy Conditions, but just with node deleted scenario |
I'm +1 to drop the validation:
I don't see a reason why it should be mandatory, but maybe I'm missing something. @fabriziopandini Opinions? Note: We should also check for validations in other places, like e.g. this one for ClusterClass / Cluster.spec.topology...: cluster-api/internal/webhooks/machinehealthcheck.go Lines 200 to 205 in 8193dec
|
Ah, understood. I'm +1 as well for specific conditions not being a requirement, I have seen the use case a few times where the api consumer needs to set a "fake" condition just to satisfy the req. |
I'm generally ok, but it would be great if we find some way to surface that MHC remediates if the node goes away |
/triage accepted |
What would you like to be added (User Story)?
As an operator, I want to use Machine Health Check to detect when my node was deleted, but without relying on any other additional conditions.
Detailed Description
As today cloud providers can detect if a node was deleted from the underlying infrastructure (eg. vsphere-cloud-provider) and delete the node from Kubernetes cluster (kubectl delete node), and as Machine Health Check today also checks if the node is present, otherwise it reconciles, this is enough for a basic cloud health check and no further condition should be required
This way, the request is to consider dropping the "existence" of conditions on a MachineHealthCheck and make MHC controller be able to reconcile NodeNotFound errors only
Anything else you would like to add?
No response
Label(s) to be applied
/kind feature
The text was updated successfully, but these errors were encountered: