我的物理服务器随机挂起,在这段时间里我没有得到任何日志条目。所以我让一个脚本运行:
while true; do date >>/tmp/dates; sleep 1; done & disown几分钟后,文件/tmp/date出现了“漏洞”。有时日期被中断30秒,有时连续3分钟:
Thu Feb 13 14:54:39 CET 2014
Thu Feb 13 14:54:40 CET 2014
Thu Feb 13 14:57:45 CET 2014
Thu Feb 13 14:57:46 CET 2014服务器不显示高负载或内存利用率。/var/log/消息在服务器挂起时不会显示任何内容。然而,它确实有一些关于IO问题的消息,比如fibrechannel链接在午睡。我正在从SAN启动,所以/在一个多功能设备上。如果我打电话
while true; do date >>/tmp/dates; sleep 1; done & disown
while true; do date >>/dev/shm/dates; sleep 1; done & disown/dev/shm/date中不会有漏洞,但是/tmp/date中会有漏洞,因此我认为这不是内核挂起情况,而是IO挂起情况。
我看不出任何进程处于不间断的睡眠状态。硬件或存储日志中没有似乎相关的条目。
然而,iostat在等待方面显示出很高的延迟峰值:
03/28/14 12:32:00
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %util
dm-4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 214.00 0.00 0.00 100.00
03/28/14 12:32:01
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %util
dm-4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 214.00 0.00 0.00 100.00
03/28/14 12:32:02
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %util
dm-4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 214.00 0.00 0.00 100.00
03/28/14 12:32:03
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %util
dm-4 0.00 0.00 0.00 1219.00 0.00 4.76 8.00 45.61 5251.48 0.82 100.40
03/28/14 12:32:04
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %util
dm-4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 2.99 0.00 0.00 99.60
03/28/14 12:32:05
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %util
dm-4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 3.01 0.00 0.00 100.40
03/28/14 12:32:06
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %util
dm-4 0.00 0.00 0.00 0.00 0.00 0.00 0.00 3.00 0.00 0.00 100.00会不会是内核在等待来自存储的IO,并且在块到达之前什么都不做呢?还能是什么?我怎么知道呢?
发布于 2014-03-31 09:33:42
查看FC-开关的错误日志,我们发现一个端口有一个巨大的错误日志。我们禁用了这个端口,整个周末都没有看到这个错误。因此,我认为这个错误是由一个破坏的光纤通道造成的。通常,根据我的信息,这样的错误应该被检测(例如,多路径)、记录和自动更正。所以我假设这里有一个未被检测到的fibrechannel路径故障。
https://serverfault.com/questions/575447
复制相似问题