首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Linux在安装了大量RAM时进行交换。

Linux在安装了大量RAM时进行交换。
EN

Server Fault用户
提问于 2020-03-11 07:30:34
回答 1查看 5.2K关注 0票数 14

我有一个用作SAN存储的linux盒。它配备了14个SATA,它运行的唯一软件是iscsi target和zabbix代理。这是物理盒,不是VM。

内存容量为128 GB,内存大小为4GB,当内存很大时,没有人会注意到它的大小,但是随着内存的正常运行(正常运行时间为694天),交换设备的使用越来越多,现在已经使用了80%。

htop不会显示任何不好的东西,看起来操作系统使用RAM作为缓存等等。swappiness被设置为10,然后设置为1,没有任何帮助。当然,我可以完全禁用交换,但看起来这将是不好的举动。

所以我的问题很简单,我如何设置盒子使用RAM而不使用交换,为什么它使用交换,而RAM是足够的?

这是SAN,所以它提供块而不是文件,所以缓存可以在块的基础上完成,而且如果内存有限,它也不会影响iSCSI的逻辑。

Zabbix说,现在我有内存可用= 123.22 GB (嘿,几乎所有128 GB!),交换使用的是3.24GB的4GB。

EN

回答 1

Server Fault用户

发布于 2020-03-11 08:27:24

没有问题。即使仍然有可用的RAM,Linux内核也会将内存页移动到交换空间中。

在缓存中保存经常使用的数据,交换已经不活跃了一段时间的内存页是很好的;这是内核所希望的情况。

您可以通过使用vfs_cache_pressure (它控制内核回收用于缓存目录和inode对象的内存的倾向)和swappiness (控制内核如何主动地交换内存页:更高的值将增加侵略性,更低的值将减少交换的数量)来对此进行更多的控制。

您可以在/etc/sysctl.conf中找到这些设置。

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

https://serverfault.com/questions/1006461

复制
相关文章

相似问题

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