Skip to content

Conversation

@nbykov0
Copy link
Collaborator

@nbykov0 nbykov0 commented Jan 8, 2026

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

Multus memory limit removed.

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.

✏️ Tip: You can customize this high-level summary in your review settings.

@nbykov0 nbykov0 self-assigned this Jan 8, 2026
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 8, 2026

📝 Walkthrough

Walkthrough

Configuration updates to Multus networking manifests migrate namespace from kube-system to cozy-multus, rename the DaemonSet to cozy-multus, and adjust memory resource specifications including increased request allocation and removal of memory limits.

Changes

Cohort / File(s) Summary
Multus Configuration Migration
packages/system/multus/patches/customize-deployment.patch, packages/system/multus/templates/multus-daemonset-thick.yml
Namespace updated to cozy-multus across Kubernetes objects; DaemonSet renamed from kube-multus-ds to cozy-multus; memory request increased from 50Mi to 100Mi; memory limits removed or modified (900Mi limit removed)

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Poem

🐰 Hops through the patch with glee,
Namespaces now cozy, can't you see?
Memory blooms from fifty to one-hundred springs,
And limits fade—oh what freedom brings!
Multus dances in its new home so bright, 🌟

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title '[multus] Remove memory limit' directly and clearly summarizes the main change in the PR, which is the removal of memory limits from Multus containers across patch and template files.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ 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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @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

  • Multus Memory Limit Removal: The explicit memory limit for the Multus CNI plugin, which was previously configured, has been entirely removed from its deployment configuration. This change is intended to address issues arising from temporary high memory consumption, particularly during node reboots.

🧠 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 Assist

The 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 /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

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 .gemini/ folder in the base of the repository. Detailed instructions can be found here.

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

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a 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>
@nbykov0 nbykov0 added backport Should change be backported on previus release backport-previous labels Jan 8, 2026
@nbykov0 nbykov0 marked this pull request as ready for review January 8, 2026 18:31
@nbykov0 nbykov0 requested review from kvaps and lllamnyp as code owners January 8, 2026 18:31
@dosubot dosubot bot added the size:XS This PR changes 0-9 lines, ignoring generated files. label Jan 8, 2026
Copy link
Contributor

@coderabbitai coderabbitai bot left a 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

📥 Commits

Reviewing files that changed from the base of the PR and between 15883d4 and 407e2f2.

📒 Files selected for processing (2)
  • packages/system/multus/patches/customize-deployment.patch
  • packages/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

@kvaps
Copy link
Member

kvaps commented Jan 8, 2026

/retest

@dosubot dosubot bot added the lgtm This PR has been approved by a maintainer label Jan 8, 2026
@kvaps kvaps merged commit 93f0dc3 into main Jan 8, 2026
46 of 47 checks passed
@kvaps kvaps deleted the rm-multus-limit branch January 8, 2026 22:14
@github-actions
Copy link

github-actions bot commented Jan 8, 2026

Backport failed for release-0.38, because it was unable to cherry-pick the commit(s).

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

@github-actions
Copy link

github-actions bot commented Jan 8, 2026

Backport failed for release-0.39, because it was unable to cherry-pick the commit(s).

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

kvaps added a commit that referenced this pull request Jan 8, 2026
## 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 -->
kvaps added a commit that referenced this pull request Jan 8, 2026
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 -->
kvaps added a commit that referenced this pull request Jan 8, 2026
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 -->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport Should change be backported on previus release backport-previous lgtm This PR has been approved by a maintainer size:XS This PR changes 0-9 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants