SCHED-1741: Make sure we have Active or Passive check to drain nodes where there are empty libnvidia.so files (amended)#2684
Open
IronhandedLayman wants to merge 1 commit into
Open
Conversation
asteny
approved these changes
Jul 2, 2026
rdjjke
reviewed
Jul 3, 2026
| "node_states": ["any"], | ||
| "on_fail": "drain", | ||
| "on_ok": "undrain", | ||
| "reason_base": "[node_problem] $name", |
Collaborator
There was a problem hiding this comment.
All nodes drained with [node_problem] prefix are being automatically replaced by Soperator automation.
But these drains show issues with hardware, not software.
This check doesn't show hardware issues, so automatic node replacement isn't needed. I suggest to change the prefix to something else, e.g. [software_problem]
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Intermittently, Nvidia libraries on worker nodes can be mounted incorrectly, leading to an error state where the library exists but is either not loadable or has a size of 0. This causes problems work ML workloads running on said workers.
Solution
This patch creates an active check that confirms the existence of Nvidia libraries and their ability to load. If those libraries cannot be loaded, then the worker node drains, thus preventing future workloads from running on that node until the issue is resolved.
Testing
This patch was tested on an existing 2-node Soperator cluster running 3.0.2, both in positive (libraries existing, passed check) and negative tests (library did not exist, check failed, node drained). All cases worked as expected. Even though this is tested against a 3.0.2 soperator cluster, it is expected to work with all versions, including latest.
Release Notes
Adding a new health check to existing clusters may cause worker nodes to drain, because libraries were missing that were unexpected, or maybe not used by previous workloads (but given the list of libraries, that is a vanishingly small probability). While this is intended behavior, it may be surprising.