-
-
Notifications
You must be signed in to change notification settings - Fork 714
Open
Description
Trigger
- Monitor memory PSI information via cgroups
- We can tune which PSI is more important:
- global cgroup
- or high-priority cgroups:
init
/podruntime
/runtime
(?)
- Threshold: which value of PSI triggers OOM
Pick target
- First, sort by high-level group:
kubepods
(workloads)podruntime
(CRI, kubelet, etcd)runtime
(core containerd, system services)init
- Second, inside
kubepods
we have QoS groups:- first priority: BestEffort
- second: Burstable
- last: Guaranteed
- Third, look into other attributes, e.g. OOM score.
- Fourth, look into memory max - memory current (if memory max is set).
Pick a target(s) to kill
Kill
Kill the whole cgroup.
Cooldown
Wait some time before, next kill, go to the beginning monitoring PSI.