You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
cAdvisor seems to report incorrect metrics for container_memory_cache with nested cgroups. container_memory_rss is rolled up from child cgroups, whereas container_memory_cache is not. This succinctly illustrates the problem:
I would have expected consistent behavior here, with either cache/rss or total_cache/total_rss reported from /sys/fs/cgroup/memory/podruntime.slice/memory.stat.
The cgroup layout used is as follows:
/sys/fs/cgroup/memory/podruntime.slice $ systemd-cgls | grep -e slice -e service
Working directory /sys/fs/cgroup/memory/podruntime.slice:
├─podruntime-kubelet.slice
│ └─kubelet.service
└─podruntime-runtime.slice
├─containerd.service
└─docker.service
The text was updated successfully, but these errors were encountered:
We made this change here: #1728, but runc still has the old behavior. Can you open an issue with opencontainers/runc, and see if they are willing to change the behavior to match?
It's not clear to me why the runc changes are necessary, since cadvisor uses MemoryStats.Stats["cache"] directly rather than MemoryStats.Cache. Wouldn't something like this address the discrepancy?
Environment
OS: CoreOS 1745.7.0
Kernel: 4.14.48-coreos-r2
systemd: 238
cAdvisor:
google/cadvisor:latest
Summary
cAdvisor seems to report incorrect metrics for
container_memory_cache
with nested cgroups.container_memory_rss
is rolled up from child cgroups, whereascontainer_memory_cache
is not. This succinctly illustrates the problem:I would have expected consistent behavior here, with either
cache
/rss
ortotal_cache
/total_rss
reported from/sys/fs/cgroup/memory/podruntime.slice/memory.stat
.The cgroup layout used is as follows:
The text was updated successfully, but these errors were encountered: