Khắc phục lỗi hung_task_timeout_secs and blocked for more than 120 seconds problem

  • Sunday 15/03/2020

VPS thường xuyên bị treo, khi kiểm tra log của hệ thống thường nhận được thông báo

Mar 15 15:22:10 mx23603 kernel: “echo 0 > /proc/sys/kernel/hung_task_timeout_secs” disables this message.

Để khắc phục

Cách 1 (tạm thời): thực hiện lệnh

sysctl -w vm.dirty_ratio=10
sysctl -w vm.dirty_background_ratio=5
 sysctl -p
 

Cách 2:

Thêm 2 vào file /etc/sysctl.conf  dòng dưới đây

vm.dirty_background_ratio = 5
vm.dirty_ratio = 10

Sau đó dùng lệnh  sysctl -p để apply cấu hình


Ngoài ra bạn cần kiểm tra log sử dụng RAM (memory)

 sar -r

04:20:01 PM kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit
04:30:01 PM     88480   1833780     95,40     17048    108564   1417416     35,70
04:40:01 PM     70668   1851592     96,32     26460    160952   1440164     36,27
04:50:01 PM     98876   1823384     94,86     29312     83128   1468276     36,98
Average:        86008   1836252     95,53     24273    117548   1441952     36,32

 

Kiểm tra mức độ sử dụng CPU bằng lệnh

sar -u

04:20:01 PM CPU %user %nice %system %iowait %steal %idle
04:30:01 PM all 7,73 0,00 1,13 4,15 0,00 86,99
04:40:01 PM all 4,54 0,00 1,19 25,14 0,00 69,12
04:50:01 PM all 1,73 0,00 0,61 3,72 0,00 93,94
Average: all 4,67 0,00 0,98 11,01 0,00 83,35

Như kiểm tra trên thì server thường xuyên sử dụng Memory trên 90%

kiểm tra thêm trong log

Mar 15 15:19:49 mx23603 kernel: [<ffffffff81122ff0>] ? out_of_memory+0x220/0x3c0
Mar 15 15:19:49 mx23603 kernel: [<ffffffff81122ff0>] ? out_of_memory+0x220/0x3c0

Như vậy bạn kiểm tra và theo dõi thường xuyên server để biết chính xác tiến trình nào chiếm RAM và có biện pháp nâng cấp server , cụ thể nâng RAM để hạn chế vấn đề trên