-
Notifications
You must be signed in to change notification settings - Fork 136
[multus] Remove memory limit #1834
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
Conversation
📝 WalkthroughWalkthroughConfiguration updates to Multus networking manifests migrate namespace from Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~5 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary of ChangesHello @nbykov0, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request implements a temporary solution to mitigate transient high memory usage observed in the Multus CNI plugin, especially during node startup sequences. By removing the configured memory limit, the system gains flexibility to accommodate these occasional memory spikes, thereby preventing potential stability issues. A more permanent fix addressing the root cause of this memory behavior is planned for future releases. Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request modifies a patch file to remove the memory limit for the Multus CNI daemonset. The goal is to prevent OOMKills caused by temporary high memory usage, especially during node startup. While I understand this is a temporary workaround, my review includes a comment highlighting the potential risks of running without any memory limit and suggests an alternative approach of setting a significantly higher limit to mitigate risks to node stability.
Signed-off-by: nbykov0 <166552198+nbykov0@users.noreply.github.com>
d04d70d to
407e2f2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (1)
packages/system/multus/patches/customize-deployment.patch (1)
37-48: LGTM! Memory limit removal aligns with PR objective.The changes correctly implement the stated objective:
- Memory limit removed to prevent OOMKill during unpredictable memory spikes (up to 3 Gi as noted)
- Memory request increased from 50Mi to 100Mi, which is prudent and improves scheduling accuracy
The removal of memory limits does mean the pod can consume unbounded memory on the node, but this trade-off is appropriate given the temporary mitigation strategy described in the PR.
Optional consideration: Since memory limits are removed, consider adding monitoring/alerting for Multus memory usage to detect anomalies and gather data for the permanent fix.
📜 Review details
Configuration used: defaults
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
packages/system/multus/patches/customize-deployment.patchpackages/system/multus/templates/multus-daemonset-thick.yml
💤 Files with no reviewable changes (1)
- packages/system/multus/templates/multus-daemonset-thick.yml
🧰 Additional context used
📓 Path-based instructions (1)
packages/system/**
📄 CodeRabbit inference engine (AGENTS.md)
Use Helm Chart umbrella pattern with vendored upstream charts in
charts/directory
Files:
packages/system/multus/patches/customize-deployment.patch
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: Prepare environment
|
/retest |
|
Backport failed for Please cherry-pick the changes locally and resolve any conflicts. git fetch origin release-0.38
git worktree add -d .worktree/backport-1834-to-release-0.38 origin/release-0.38
cd .worktree/backport-1834-to-release-0.38
git switch --create backport-1834-to-release-0.38
git cherry-pick -x 407e2f2930a75e7ab32ca299d99d5fd8a230ce61 |
|
Backport failed for Please cherry-pick the changes locally and resolve any conflicts. git fetch origin release-0.39
git worktree add -d .worktree/backport-1834-to-release-0.39 origin/release-0.39
cd .worktree/backport-1834-to-release-0.39
git switch --create backport-1834-to-release-0.39
git cherry-pick -x 407e2f2930a75e7ab32ca299d99d5fd8a230ce61 |
## What this PR does Removes multus memory limit due to short but unpredictable and large memory consumption in some cases, such as starting up after a node reboot (reported up to 3Gi). The root cause will be fixed in future releases. ### Release note ```release-note Multus memory limit removed. ``` <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Release Notes * **Chores** * Updated Multus system namespace configuration and DaemonSet naming for improved environment organization. * Adjusted container resource allocation: increased memory requests and refined memory limits for optimized performance. * Updated deployment template specifications to reflect infrastructure changes. <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai -->
Removes multus memory limit due to short but unpredictable and large memory consumption in some cases, such as starting up after a node reboot (reported up to 3Gi). The root cause will be fixed in future releases. ```release-note Multus memory limit removed. ``` <!-- This is an auto-generated comment: release notes by coderabbit.ai --> * **Chores** * Updated Multus system namespace configuration and DaemonSet naming for improved environment organization. * Adjusted container resource allocation: increased memory requests and refined memory limits for optimized performance. * Updated deployment template specifications to reflect infrastructure changes. <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai -->
Removes multus memory limit due to short but unpredictable and large memory consumption in some cases, such as starting up after a node reboot (reported up to 3Gi). The root cause will be fixed in future releases. ```release-note Multus memory limit removed. ``` <!-- This is an auto-generated comment: release notes by coderabbit.ai --> * **Chores** * Updated Multus system namespace configuration and DaemonSet naming for improved environment organization. * Adjusted container resource allocation: increased memory requests and refined memory limits for optimized performance. * Updated deployment template specifications to reflect infrastructure changes. <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai -->
What this PR does
Removes multus memory limit due to short but unpredictable and large memory consumption in some cases, such as starting up after a node reboot (reported up to 3Gi).
The root cause will be fixed in future releases.
Release note
Summary by CodeRabbit
Release Notes
✏️ Tip: You can customize this high-level summary in your review settings.