Nginx / php-fpm进程属于不间断睡眠

我得到了关于服务器的nagios严重警告,当我检查ps -aux发现所有的nginx(php-fpm)都在不间断的睡眠中

 www-data 1330 0.4 0.3 299992 108560?  D 16:06 0:16 php-fpm:pool www
 www-data 1338 0.4 0.2 254728 92728?  D 16:06 0:16 php-fpm:pool www
 www-data 1346 0.4 0.3 293544 100272?  D 16:06 0:17 php-fpm:pool www
 www-data 1356 0.7 0.3 302504 101532?  D 16:06 0:29 php-fpm:pool www
 www-data 1357 0.3 0.2 270672 85952?  D 16:06 0:13 php-fpm:pool www
 ....

我被卡住了,甚至无法重新启动nginx。 最后我重新启动服务器来解决问题!
虽然我在/etc/php5/fpm/php.ini中有这个

 emergency_restart_threshold = 10
 emergency_restart_interval =1米
 process_control_timeout = 10S

这意味着php5-fpm应该在这种情况下重新启动,但它没有!
什么可能导致这些进程进入不间断睡眠状态,以及将来如何避免这种情况?
谢谢你的帮助

虽然D在top意味着不间断的睡眠,但我觉得只是想到D为磁盘更容易。 这个进程正在等待内核回来,有95%的时间是从磁盘读取的。

不间断睡眠这个事实是为什么php-fpm无法重新启动。

因此,在这种情况下,您需要检查磁盘,首先在单用户模式下使用fsck -f /dev/mapper/VG-LV (如果是远程专用服务器或VPS,则必须使用远程KVM控制台为此),然后用smartctl -a /dev/sd?读取SMART数据smartctl -a /dev/sd? (如果它们不在硬件RAIDarrays中;如果它是硬件RAID,请使用供应商提供的工具)查看您的某个磁盘是否可能坏了。