Tom*_*che 4 linux nfs performance-monitoring io rhel5
如果我没有使用正确的术语(虽然我是 linux 的长期用户,我不是管理员)或者这是一个常见问题(虽然搜索 SE 有很多点击,但我没有看到任何类似的东西),我深表歉意这个问题):
我是一个科学集群的用户(工作由 PBS/Torque、RHEL5、FWIW 管理)。我即将开始我的第一个非常重要的工作,所以我向管理员询问了一些配置问题,以避免出现愚蠢的错误。我大部分是对的,但他补充说“确保你没有用过多的 I/O 敲打磁盘服务器”,随后是“使用 top [来] 看看 nfs 是否会发疯”。
怎么做?这是一个集群,所以很多“幕后”对我来说是透明的。另外,我几乎没有特权。我也仅限于通过 SSH 使用 CLI,但这是我遇到的最少的问题。从好的方面来说,我似乎确实能够进入任何计算节点,包括那些带有附加磁盘的节点。
所以我想知道,如何最好地从用户空间监控 NFS?我对topNFS有一点了解,所以我知道我可以做到
top -p$(pgrep nfsd -d ',')
Run Code Online (Sandbox Code Playgroud)
获取 NFS 进程列表(不是?)。但我真的很想知道——再次,作为sudoRHEL5 上的用户(我既没有也没有 root)(是的,我们仍在运行)——是
top或其他工具中获得的东西,而无需抓取输出并进行自己的数学运算?我应该监控除nfsd?注意: top似乎不是用于此任务的工具,但至少它对我可用。不可用的工具列表包括
查看顶部输出是完全错误的。这是关于 IOPS。要查看 NFS 统计信息,请使用nfsstat:
Server rpc stats:
calls badcalls badauth badclnt xdrcall
40833255 0 0 0 0
Server nfs v3:
null getattr setattr lookup access readlink
0 0% 1411374 3% 107 0% 43169 0% 747514 1% 790 0%
read write create mkdir symlink mknod
38138706 93% 0 0% 0 0% 0 0% 0 0% 0 0%
remove rmdir rename link readdir readdirplus
0 0% 0 0% 0 0% 0 0% 0 0% 491559 1%
fsstat fsinfo pathconf commit
6 0% 12 0% 6 0% 0 0%
Run Code Online (Sandbox Code Playgroud)
如果你有一个监控程序(fer 实例,Zabbix),你可以添加一个 UserParameter 来监视它们:
# NFS stats
UserParameter=nfs.v3.server[*],nfsstat -s -l | awk 'BEGIN {FS=": *"}/v3 server.*$1:/ {print $$2}'
Run Code Online (Sandbox Code Playgroud)
并制作漂亮的图表:

多高是太高?这完全取决于您的工作量:

您需要观察文件系统和磁盘延迟以查看是否使磁盘过载。
| 归档时间: |
|
| 查看次数: |
7526 次 |
| 最近记录: |