检测 I/O 等待问题背后的文件

检测 I/O 等待问题背后的文件

我们正在运行 Asterisk 1.8.22.0,它使用 NFS 来存储声音文件(用于 IVR)、语音邮件等。负载平均值时常会变得非常高。每当这种情况发生时,我们都会看到顶部的 I/O 等待时间超过 7%。等待时间越长,负载就越高(有时会达到 120%)。这一切都是可以理解和预料到的(高 I/O == 低 CPU 空闲,这转化为高负载平均值)。高 I/O 的“发作”通常不会持续很长时间(最多 10-30 秒),但当它们确实发生时,通话质量就会受到影响。它似乎运行良好,直到盒子达到临界点,无法应对 I/O 等待。当问题持续存在时,iostat 显示磁盘运行良好,这让我们相信这是通过 NFS 访问文件的问题。这只是我们 CentOS7 盒子上的问题。我们在 CentOS6 盒子上安装了相同版本的 Asterisk,没有这样的问题。我猜想这与盒子如何安装 NFS 驱动器有关?在两个盒子的 /etc/fstab 中,我们都有

xx.xx.xx.xx:/var/lib/my_mount /var/lib/my_mount      nfs soft,bg,intr,noatime 0 0

在CentOS6上我们已经安装

nfs-utils-1.2.3-64.el6.x86_64

在 CentOS7 上我们安装了:

nfs-utils-1.3.0-0.33.el7.x86_64

有什么指点吗?

相关内容