linux – 了解RedHat推荐的调优配置文件

我们将在~1000台服务器上推出tuned(和numad),其中大部分是NetApp或3Par存储上的VMware服务器.

根据RedHats文档,我们应该选择virtual-guestprofile.
它在做什么可以在这里看到:tuned.conf

我们正在将IO调度程序更改为NOOP,因为VMware和NetApp / 3Par都应该为我们做足够的调度.

但是,在调查了一下后,我不确定他们为什么要增加vm.dirty_ratio和kernel.sched_min_granularity_ns.

据我所知,越来越多的vm.dirty_ratio增加到40%将意味着对于具有20GB内存的服务器,8GB在任何给定时间都可能是脏的,除非vm.dirty_writeback_centisecsis首先命中.在刷新这些8GB的应用程序的所有IO时,将被阻止,直到脏页被释放.

增加dirty_ratio可能意味着更高的写入性能,因为我们现在拥有更大的缓存,但是当缓存填充IO时,将被阻止相当长的时间(几秒).

一个是他们增加sched_min_granularity_ns的原因.
如果我理解正确增加此值将减少每个时期的时间片数(sched_latency_ns),这意味着正在运行的任务将有更多时间来完成他们的工作.我可以理解这对于线程非常少的应用程序来说是一件非常好的事情,但是对于例如. apache或其他具有大量线程的进程会不会适得其反?

解决方法

简短的回答是,任何调整都是猜测,只有在使用经验数据备份时才有价值:尝试一下.测量它.如果您不喜欢它,请调整它.

一个更长的答案:

Increasing the dirty_ratio would probably mean higher write performance …IO will be blocked for a considerably longer time

否.增加脏比率意味着您的系统不太可能进入需要开始阻止写入的状态.缺点是使用的内存越多,中断时数据丢失的风险就越大.

meaning that running tasks will get more time to finish their work

进程通常会在其时间片到期之前产生. VM的问题在于您的计算机可能正在与其他VM竞争cpu和L1 / L2缓存 – 高级别的任务切换(由于预占)会对吞吐量产生很大影响.通常部署到VM中的应用程序类型是cpu绑定的(Web服务器,应用程序服务器).

是的,吞吐量的增加(适用于所有类型的应用程序)将以延迟增加为代价 – 但是当大多数事务花费毫秒时,后者的数量级为微秒.如果您需要实时功能/非常低的延迟,那么您不应该使用VM.

相关文章

1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...
1 删除0字节文件 find -type f -size 0 -exec rm -rf {} ...
## 步骤 1:安装必要的软件包 首先,需要确保系统已安装 `dh...