bottlerocket-os / bottlerocket-os/bottlerocket

Allow customizing the parameters in the kube_reserve_memory() function

Open
#4,187 3 comments 2 reactions 0 assignees View on GitHub
status/needs-triage type/enhancement
Dominant language
Rust
Stars
9.7k
Forks
586
Avg merge
1d 11h
Merged PRs (30d)
11

Description

**What I'd like:**

We have a tendency to over-subscribe our nodes ... allowing pods to have higher `limits.memory` settings than their `requests.memory`. We expect/hope that processes inside containers will be OOMKilled before critical system processes (like `kubelet`) are ... but our experience is showing that `kubelet` often gets OOMKill events first.

I know that we can _hard code_ a new memory reservation for the kubelet process.. but what I really want is to be able to alter the parameters that go into the https://github.com/bottlerocket-os/bottlerocket/blob/a63007cfbd44beea85596fe7f8eac98643cd3d7d/sources/api/schnauzer/src/helpers.rs#L1079-L1081 function.

I would like parameters that allow us to change the `11` and `255` numbers, while retaining the general dynamic calculation. That would allow us to tweak these numbers to fit our environment, without losing the dynamic nature of the configuration.

**Any alternatives you've considered:**

I have considered trying to do this in a bootstrap container... I just hate to do all that work when I think a few parameters could be added in here and this could then be easy.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.