Ubuntu 12.04 出现奇怪的 IO 问题

Ubuntu 12.04 出现奇怪的 IO 问题

我在使用 Ubuntu 12.04 和 MySQL 时遇到了一个非常奇怪的 IO 问题。

目前,该机器只是一个复制的从属机器,偶尔会有读取查询命中它。磁盘利用率随机飙升,似乎与 MySQL 使用情况无关。该机器仅运行 MySQL,没有其他服务。

最初,这台机器使用的是 ext4,它与 MySQL 之间存在 IO 问题,我将其清除并重新安装为 ext3。在恢复复制后,磁盘利用率再次随机飙升,在几个小时内保持高位,然后再次下降。

MySQL 的使用率每天都遵循相同的模式,但磁盘利用率却没有模式,它会随机出现峰值,并可能持续数小时或几分钟。 每晚凌晨 1 点会出现峰值,此时我们的 MySQL 备份 (mysqldump) 运行并且保持一致。

我的下一步是降级到 Ubuntu 10.04,这台机器之前运行 Debian 5 没有任何问题。我们有第二台相同的机器,也有同样的问题,在我看来,这排除了单个硬件问题。

磁盘利用率图表:

磁盘0

下午 5 点的初始峰值是重新安装后复制的追赶,凌晨 1 点的峰值是我们的备份。问题在凌晨 4 点出现,并且一直很高,直到 12 点之后才急剧下降。

MySQL 每周图表

MySQL

这是我们一周的平均 MySQL 使用情况。每天都是同样的模式,上午 9 点到晚上 11 点最繁忙,从上午 9 点到次日上午 9 点较为安静,最低点每天在凌晨 4 点左右。

问题发生时的 Iostat 输出:

http://pastebin.ca/2336462

/proc/挂载:

http://pastebin.ca/2336464

DF-H:

http://pastebin.ca/2336465

答案1

听起来你想知道的是哪个进程正在占用磁盘 IO。幸运的是,Ubuntu 有iotopapt-get install iotop可通过以下方式获取清晰/10.04。由于您的 IO 峰值可能会持续几分钟或几小时,因此检测下一个 IO 峰值、启动 iotop 并识别罪魁祸首进程应该相对容易。

相关内容