问题描述
我们有一个在 Kubernetes 上的 Docker 容器内运行的 Java 应用程序。我们以两种不同的方式衡量 RAM 使用情况,一种是根据 JVM 报告的指标,一种是根据 Container Advisor (cadvisor)。我们在 Prometheus 中导入所有指标,我在这里发布了一些图表,所有这些图表都指向同一个 Pod 和容器。前五个图是 JVM 报告的使用情况,最后一个是 cAdvisor 报告的使用情况。
我的问题是:
- 为什么 cAdvisor 和 JVM 报告的图表形式如此不同?
- cAdvisor 报告的 RAM 使用量总是比 JVM 多,特别是在 container_memory_working_set_bytes 和 sum_jvm_memory_committed 之间,差异稳定在 300Mb 左右。可能的解释是什么?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)