Reduce cgroups read frequency to avoid kernel kernfs clock pressure #3633
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.
Fixes ##3528
When
GetInfo
is called with false parameter, it now reads cgroups data once every 5 seconds and gets data from containerData cache at other times. This change reduces the frequency of reading cgroups to prevent potential Linuxmachine hangs caused by kernel kernfs clock pressure.
The change affects the
containerDataToContainerInfo
method in manager.go which is used to retrieve container information. By caching and reusing the cgroups data between reads, we reduce system load while still maintainingreasonably up-to-date container metrics.