Vik*_*rud 3 python-3.x kubernetes
我的 python 程序在 k8s pod 上运行。该程序从数据库读取 pandas dataframe 中的数据并执行一些数据转换操作。在其中一项操作中,数据大小呈指数增长,导致 pod 内存不足错误。由于它是pandas,所以所有数据都保存在内存中。
为了避免这种情况,如果内存消耗超过阈值,我需要将数据写入磁盘。为此,我需要知道 python 程序中当前的 pod 内存利用率,以便一旦阈值达到(例如 90%),我就开始将数据转储到磁盘并释放内存。
基本上我需要知道 python 程序中的 pod 内存利用率。
有什么建议么?提前致谢。
在容器中,需要获取cgroup的内存。
ls /sys/fs/cgroup/memory/
Run Code Online (Sandbox Code Playgroud)
在容器中:cat /sys/fs/cgroup/memory/memory.usage_in_bytes获取内存使用情况。
或者在主机中:/sys/fs/cgroup/memory/docker/[containerId]/memory.usage_in_bytes
https://www.kernel.org/doc/Documentation/cgroup-v1/memory.txt
| 归档时间: |
|
| 查看次数: |
4744 次 |
| 最近记录: |