ncallout
任意时间内核可以调度的最大超时数。进程数越高,每个进程多个超时的可能性越高,这个值的配置就应当越高。缺省值
是公式 (16+NPROC)。
netmemmax
IP 数据包重新分段组合内存。值-1 表示除了物理内存没有限制,而0则限制为10%,大于0的值指定可能接近最近页面边界
的物理内存量,这个内存不保留,只根据需要进行分配。对这个变量的调整就是在用户内存和内核网络内存之间进行平
衡,可能需要做一些实验才能找到最优值。
nfile
系统上运行的所有进程打开的文件数。尽管每个登录项相对都比较小,在对这个表进行管理时仍会有一些内核开销。此
外,每次打开文件时,在nfile中都会消耗一个登录项,即使该文件已被另外一个进程打开。当nfile登录项用光时,就会
出现一个控制台和/或syslog错误信息,明确说明“File table full”。
nflocks
系统内文件锁的数量。与nfile类似,每个锁都会得到一个登录项,内存的花费也非常小,每个nflock登录项使用的内存很
少。
ninode
这个臭名昭著的变量过于庞大,可以对处理器产生过重的负担(特别是采用多CPU的机器)。对这个表没有有效的统计,因
此实际的消耗很难监视,最好的方法就是不增加它的值,除非收到控制台/syslog信息,明确规定“Inode table is
full”,否则启动一段时间后,看起来该表就几乎或完全充满。
与 nfile不同,每次打开文件时,ninode中只消耗一个登录项。通常nfile和ninode之间没有直接的关联。此外,过高的
值实际可能导致高可用集群出现网络超时的情况,经常是在备份例程启动时。很少有系统真正需要5,000 个以上的登录
项。如果这个变量很大,散列一个登录项的初始等待时间就非常大,以便能够首先快速打开文件。
由于没有有效的统计,确定这个表中有哪些内容的唯一方法就是顺序搜索,这对处理时间的消耗非常大。当处理器“走
过”这个表时,很少执行其它的活动。建议此表稍微小一些,只有在收到inode表已满的信息时才增加它的值,此时我们建
议增加 10-20%。
DNLC
这个参数不是直接可调,但操作与 ninode类似。它是目录名查找缓冲,用于目录名而不是文件,是maxusers影响的参数之
一。如果内核方案失败,这个变量一般就采用ninode的值。该值设置得很大时,其结果与ninode相似。检查这个变量的最
简单的方法是用glance -t命令,然后检查第二页,它包含ninode和DNLC。sar不能检查这个值。同样,此表中不保留长文
件名(大于14个字符) ,每次引用该表时,都必须全部解释。
no_lvm_disks
这个变量通知内核检查 LVM 磁盘。当该变量被设为1时,不进行任何检查。
nproc
这是maxusers/maxuprc的杂乱设置所影响的另外一个变量,它与系统内的进程数有关,经常在运行ps -ef时,或者使用Glance/GPM
和类似的命令时引用。该值通常应当比为非预期的进程增加预留的最大进程数大10-20%。
shmmax
这是每个共享内存段的最大字节值。在大部分情况下这个最大值是1 GB。PHKL_8327或其之后的换代产品将允许系统内所有
共享段的累积总和,最大值达到2.75 GB,而每个段仍保持1GB的限制。
swapmem_on
这个值允许为进程释放/还原分配内存,通常在swapinfo命令下可以观察到,显示为内存,尽管伪交换的缺省优先级是12,
但内存开始时用于无效的进程,主要结果是I/O减少,因为无效的进程不必迁移到磁盘交换区域或文件系统上。
如果内存压力增加,需要更多的内存页,那么无效的进程就会被移到交换区域。用swapinfo -atm观察正在使用的交换区域
没有什么害处。内存压力可以用vmstat命令进行观察,如果swapinfo显示设备保留行减少、而设备PCT USED栏相应增加,
也可以验证这一点。
timeslice
的时间分段信号数有关。一般地,改变这个参数利害此消彼
长,在大部分情况下不建议进行修改,也没有必要修改。
