故障處理記錄---網卡驅動引發的血案

    今天上班在對線上服務器備份系統做對照測試驗證時,發現線上正在使用的響應似乎慢了備份系統一些,而且有些頁面強制刷新,都基本上顯示不完全。估計是服務器出問題了,就到去查看,發送一臺服務器負載較高, 三個 都過 4 了,但沒有發現佔用資源很大的進程,估計是系統的問題了,df 了一下,顯示到 nfs掛載分區時卡住了,接着查看message 日誌,發現有以下提示:

  1. Jul 25 09:25:27 dowload_server2 kernel: INFO: task php-fpm:2914 blocked for more than 120 seconds. 
  2. Jul 25 09:25:27 dowload_server2 kernel: "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. 
  3. Jul 25 09:25:27 dowload_server2 kernel: klogd 1.4.1, ---------- state change ----------  
  4. Jul 25 09:25:27 dowload_server2 kernel: php-fpm       D ffffffff80151248     0  2914  19432          2922  2801 (NOTLB) 
  5. Jul 25 09:25:27 dowload_server2 kernel:  ffff81015963bc78 0000000000000082 ffff81015963be2c ffff81015963be18 
  6. Jul 25 09:25:27 dowload_server2 kernel:  ffffffff8001eafa 000000000000000a ffff8102e8209860 ffff81042fada860 
  7. Jul 25 09:25:27 dowload_server2 kernel:  001338af01c9940d 0000000000002a06 ffff8102e8209a48 00000005884b5ae2 
  8. Jul 25 09:25:27 dowload_server2 kernel: Call Trace: 
  9. Jul 25 09:25:27 dowload_server2 kernel:  [<ffffffff8001eafa>] __pollwait+0x0/0xe2 
  10. Jul 25 09:25:27 dowload_server2 kernel:  [<ffffffff80065b29>] _spin_lock_bh+0x9/0x14 
  11. Jul 25 09:25:27 dowload_server2 kernel:  [<ffffffff80064c6f>] __mutex_lock_slowpath+0x60/0x9b 
  12. Jul 25 09:25:27 dowload_server2 kernel:  [<ffffffff800097ec>] __d_lookup+0xb0/0xff 
  13. Jul 25 09:25:27 dowload_server2 kernel:  [<ffffffff80064cb9>] .text.lock.mutex+0xf/0x14 
  14. Jul 25 09:25:27 dowload_server2 kernel:  [<ffffffff8000cef1>] do_lookup+0x90/0x1e6 
  15. Jul 25 09:25:27 dowload_server2 kernel:  [<ffffffff8000a23c>] __link_path_walk+0xa01/0xf42 
  16. Jul 25 09:25:27 dowload_server2 kernel:  [<ffffffff8000ea11>] link_path_walk+0x42/0xb2 
  17. Jul 25 09:25:27 dowload_server2 kernel:  [<ffffffff8000cce1>] do_path_lookup+0x275/0x2f1 
  18. Jul 25 09:25:27 dowload_server2 kernel:  [<ffffffff8001283d>] getname+0x15b/0x1c2 
  19. Jul 25 09:25:27 dowload_server2 kernel:  [<ffffffff800238c3>] __user_walk_fd+0x37/0x4c 
  20. Jul 25 09:25:27 dowload_server2 kernel:  [<ffffffff8003f539>] vfs_lstat_fd+0x18/0x47 
  21. Jul 25 09:25:27 dowload_server2 kernel:  [<ffffffff8002ab63>] sys_newlstat+0x19/0x31 
  22. Jul 25 09:25:27 dowload_server2 kernel:  [<ffffffff8005e116>] system_call+0x7e/0x83 

還有:

  1. Jul 25 09:25:50 dowload_server2 kernel: nfs: server 10.1.10.100 not responding, still trying 
  2. Jul 25 09:26:24 dowload_server2 last message repeated 5 times  
  3. Jul 25 09:26:32 dowload_server2 last message repeated 7 times 

(對於:nfs: server 10.1.10.100 not responding, still trying ,網上有其他說法,是傳輸的數據較大,需要用tcp方式,可以參考:http://www.cnblogs.com/elect-fans/archive/2011/12/25/2408598.html )

檢查了php-fpm ,nginx 都正常,從日誌看,是nfs掛載出故障了,檢查一下nfs看看

  1. sudo /usr/sbin/showmount –e 10.1.10.100

出現如下提示:

  1. mount clntudp_create: RPC: Port mapper failure - RPC: Unable to receive 

難道是服務器內網不通,ping測試了一下,還真是不通耶。這就是故障點了。

修改配置,暫停http請求發到這臺服務器,停止 nginx ,php-fpm,umount  nfs 。

重啓本機的網絡服務,ping測試正常,重新 mount,ok,啓動 php-fpm,nginx,把http請求再覆蓋到這臺服務器上,搞定。

從其他同事那裏獲知,硬件設備 R710, 系統安裝的網卡驅動有問題(是由於DEL網卡驅動的一個bug引起,這個bug在Redhat 5.3 5.4 5.5和Centos系統中存在),需要重新安裝驅動。網卡驅動安裝可參看: http://blog.chinaunix.net/uid-20639775-id-3187093.html

另加上內網 ping 監控。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章