我正在尝试详细了解在 Kubernetes 上运行的 Pod 的内存使用情况。我可以通过 kubectl top pod 查看 pod 的内存使用情况,但我需要的是内存使用位置的全面分割。
我的容器可能会下载新文件或将新文件写入磁盘,因此我想查看在某个时刻每个文件使用了多少已用内存以及运行的软件使用了多少内存。 目前,没有真正的磁盘,只有 TempFS,所以这意味着每个文件都在消耗分配的内存资源,只要我可以检查并知道有多少内存在哪里,就可以了。
找不到类似的东西,似乎cAdvisor
有助于获取内存静态信息,但它只使用docker/cgroups
,它没有给出详细信息,因为我已描述。
最佳答案
更好的解决方案是安装指标服务器和 Prometheus和 Grafana 在您的集群中。 Prometheus 将抓取 Grafana 可以用来显示为图表的指标。这可能有用。
如果你想要容器内的进程消耗,你可以进入容器并监控进程。
$ docker exec -it <container-name> watch ps -aux
此外,您还可以查看docker stats .
以下 Linux 命令将总结目录的大小:
$ du -h
关于memory - Kubernetes Pod 内存使用情况分割,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58219740/