Prometheus 容器级缓冲内存指标缺失

Prometheus container level buffered memory metric is missing

当我检查 prometheus 自定义指标时,我看到 container_memory_cache 但容器级内存缓冲区数据不可用。当我 运行 vmstat -S M 命令时..我可以获得缓冲内存如下。但是在 kubernetes 架构中,运行在每个 pods 上执行此命令会浪费资源。是否有其他方法可以为每个 pods 获取这些数据?除此之外,vmstat 指标也没有缓冲内存数据......知道吗?谢谢

vmstat -S M
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 3  0      0    456      2  19594    0    0     6    39    4    3  7  5 87  0  0

您可以在 cgroups 中找到很多关于容器内存使用情况的信息,例如

/sys/fs/cgroup/memory/docker/{id}/memory.stat

可以从节点 OS 访问此类文件,并将为您提供有关容器内存使用情况的所有可用信息。

但是,据我所知,缓冲内存在容器内不可用,以避免节点 OS 和容器本身进行双重缓存。