mirror of
https://github.com/kubernetes/kubernetes.git
synced 2026-07-08 09:21:31 -04:00
The kubelet used cadvisor's lib/utils/oomparser to watch the kernel log for OOM kills and to produce the container_oom_events_total metric. That made the kubelet depend on the cadvisor lib module for OOM handling. This moves OOM handling in-tree: - The OOM kill parser is forked from cadvisor into third_party/forked/cadvisor/oomparser. It reads /dev/kmsg and extracts OOM events, adapted to take a context.Context and log through klog. - The kmsg reader is forked from github.com/euank/go-kmsg-parser into third_party/forked/go-kmsg-parser/kmsgparser. - The kubelet OOM watcher reads OOM events through the forked parser and records the container_oom_events_total metric in-tree. - cadvisor/lib is bumped to v0.60.3, which no longer ships the OOM parser. This removes the transitive github.com/euank/go-kmsg-parser v2.0.0+incompatible dependency and the vendored cadvisor lib/utils/oomparser package. Behavior is unchanged. OOM events are still emitted and the metric still reports the same counts. |
||
|---|---|---|
| .. | ||
| forked | ||
| gimme | ||
| multiarch/qemu-user-static | ||
| protobuf/google/protobuf | ||
| OWNERS | ||