赞
踩
在 NFS 网络中,服务器是调优的主要目标,当然也有一些是可以在客户机上调优的。
因为 biod 和 nfsd 守护进程一次处理一个请求,并且 NFS 响应时间占了总响应时间的最大一部分,所以如果线程由于缺少 biod 或 nfsd 守护进程而阻塞是让人无法接受的。
配置 NFS 守护进程一般需要注意的事项如下:
决定最佳的 nfsd 和 biod 守护进程数是反复的过程。指导方针能提供给您的仅仅是一个合理的出发点。
缺省值对于小型系统来说是一个很好的起点,但对于拥有两个以上客户的客户机系统或者拥有两个以上客户机的服务器来说就多半需要增加了。以下是一些指导方针:
在您获得初始的 biod 和 nfsd 守护进程数量后,或已经修改了其中的某一个,请照以下说的做:
要修改 nfsd 守护进程的数量,您可以使用 chnfs 命令,或者如前所述设置 nfso nfs_max_threads 参数。
要把在服务器上的 nfsd 守护程序的数量修改为 10,既要立刻生效又要在以后的系统启动时也生效,使用如下命令:
# chnfs -n 10
要把一个系统上的 nfsd 守护进程的数量改为 9,需要直到下一次系统启动才生效,使用如下命令:
# chnfs -I -n 9
要修改每次挂载(mount)的 biod 守护进程数,可使用 biod mount 选项。
增加客户机上的 biod 守护进程数使服务器性能变坏,因为这将允许客户机一次发送更多的请求,而进一步增加网络和服务器的负载。极端情况下,客户机的运行速度远远超过服务器,这时可能需要将客户机的 biod 守护进程数减少到一个,如下:
# stopsrc -s biod
这使得客户机仅仅留下一个 biod 内核进程仍然继续运行。
当您在配置 NFS 挂载目录时有一个可选项就是:挂载或是硬的(-o hard)或是软的(-o soft)。在成功的挂载后,当一个对软挂载(soft-mounted)目录的访问出错时(典型的是一个超时),这个错误被立即报告给原先请求远程访问的那个程序。当一个对硬挂载(hard-mounted)目录的访问出错时,NFS 重试原来的操作。
一个持久性错误引起的不断访问硬挂载目录可能会升级成为一种能察觉得到的性能问题,因为缺省的重试次数是 1000 次,缺省的超时值是 0.7 秒,再加上有一个算法使连续的重试间的超时值增加,这一切意味着 NFS 将试图去完成这个操作。
减少重试次数、增加超时值,或者前两者都做到,这在技术上是可能的,只要使用 mount 命令的选项。不幸的是,修改这些值虽然足以去除先前对性能的可察觉的影响,但是有可能会导致不必要的硬件错误报告。作为一种替代,可以使用 intr 选项来 mount 硬挂载目录,这时当有某个进程进入了重试循环则允许用户使用键盘将其中断。
虽然软挂载目录引起的错误可以被更快地探测到,但是它要冒严重的数据毁坏的风险。因此一般来说,读/写目录应该用硬装载。
:NONE.mount 命令提供了一些 NFS 调优的选项,但由于缺乏对它们的了解而经常被忽视或错误地使用。
在您开始调节 mount 选项前,请确认您应该达到对服务器或网络上的包传送(packet delivery)和包转向(packet turnaround)有一定的认识。如果您的目标是降低 NFS 服务器的负载或者是要解决与网络相关的问题,那么您将会使用绝大部分 NFS 所特有的 mount 选项。
用 mount 命令的 -o 选项可以列出与 NFS 性能相关的所有特定的 mount 选项。:NONE.-o 选项在命令行中只需用一个逗号与命令分隔,而不是用一个逗号加一个空格分隔。
最有用的是改变读和写操作大小值的选项。这些选项定义了每个 RPC 读和写的最大尺寸。:NONE.mount 命令的 rsize 和
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。