首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >kubectl top node输出与Linux free命令不匹配

kubectl top node输出与Linux free命令不匹配
EN

Stack Overflow用户
提问于 2019-09-25 03:00:32
回答 2查看 282关注 0票数 1

我有一个单节点Kubernetes集群,metrics服务器报告的内存使用情况似乎与free命令显示的内存使用情况不同

代码语言:javascript
复制
# kubectl top nodes
NAME          CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%
<node_ip>   1631m        10%    13477Mi         43%

# free -m
              total        used        free      shared  buff/cache   available
Mem:          32010       10794         488          81       20727       19133
Swap:         16127        1735       14392

而且差异很大,约为3 GB。

我还在一个3节点集群上进行了测试,问题也存在:

代码语言:javascript
复制
# kubectl top nodes
NAME          CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%
<node_ip1>   1254m        8%     26211Mi         84%
<node_ip2>   221m         1%     5021Mi          16%
<node_ip3>   363m         2%     8731Mi          28%
<node_ip4>   1860m        11%    20399Mi         66%

# free -m (this is on node 1)
              total        used        free      shared  buff/cache   available
Mem:          32010        5787         369        1676       25853       24128
Swap:         16127           0       16127

为什么会有区别呢?

EN

回答 2

Stack Overflow用户

发布于 2019-09-27 15:48:34

你的问题的答案可以在here上找到。这是一个副本,所以你可以从StackOverflow上删除这篇文章。

票数 0
EN

Stack Overflow用户

发布于 2019-09-25 03:52:34

metrics Server公开的指标由每个节点上的cAdvisor实例收集。您在kubectl top node的输出中看到的是cAdvisor如何确定当前的资源使用情况。

因此,显然,cAdvisor和free以不同的方式决定资源使用情况。要找出原因,您需要深入了解cAdvisor和free的内部工作原理。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58086664

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档