如何诊断非常糟糕且缓慢的 ext3 行为?

如何诊断非常糟糕且缓慢的 ext3 行为?

我正在管理一个运行 Redhat WS4 update 3 的旧管理服务器,我们有一个 ext3 卷,其中我在 /opt 上挂载了一个大型(30GB)sqlite 数据库。

每次我对这个数据库进行大型查询/插入时,它都会使 IO 等待时间过长,以至于我们无法再登录到服务器,也无法使用 sudo 登录到其他用户,也无法编辑 crontab 文件(vi 永不退出)。

我正在用 mysql 替换 sqlite,在备份 19GB 或 mysql 目录时遇到了同样的问题。

请注意,这些操作都是以普通用户身份进行的。服务器是 PROLIANT DL385 G1,内核为 2.6.9-34.ELsmp,64 位。

我现在正在考虑将卷重新安装为 ext2,以查看日志记录是否是导致我的问题的根源,但老实说,我真的不知道下一步该检查什么。

每次严重的文件复制最终都会阻止其他用户尝试登录的服务器,并且复制结束后服务器就会恢复正常。

我需要指向下一步该看哪里来解释这种行为(旧磁盘变慢?有已知错误的坏内核?损坏的日志记录触发数千次多余的读/写?等等...)

提前致谢。

答案1

回答我自己的问题,因为我终于找到了问题的真正根源。

1_ syslog.conf 配置为登录文件并立即刷新 2_ 我们的代理最近配置为使用此服务器 syslog 记录 LDAP 身份验证尝试。由于愚蠢(或配置错误)的更新程序(例如 Adob​​e 更新程序),这些操作每秒发生几次。

总之,服务器不断地将缓冲区刷新到磁盘,并且每次我们尝试写入大文件时都会显示这一点。

相关内容