<![CDATA[Latest posts for the topic "Nguyên nhân thông số CPU iowait tăng cao"]]> /hvaonline/posts/list/24.html JForum - http://www.jforum.net Nguyên nhân thông số CPU iowait tăng cao sar Code:
CPU     %user     %nice   %system   %iowait    %steal     %idle
  all      4.38      0.00      3.00     72.12      0.00     20.50
  all     15.11      0.00     13.23     64.54      0.00      7.12
  all      3.00      0.00      3.50     93.50      0.00      0.00
  all      2.50      0.00      4.24     87.02      0.00      6.24
  all      0.00      0.00      0.75     99.00      0.00      0.25
iotop Code:
Total DISK READ: 354.60 K/s | Total DISK WRITE: 77.40 M/s
  TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND
1022227 be/4 root        0.00 B/s    0.00 B/s  0.00 % 99.99 % [pdflush]
1022228 be/4 root        0.00 B/s    0.00 B/s  0.00 % 99.99 % [pdflush]
1022225 be/4 root        0.00 B/s    0.00 B/s  0.00 % 99.99 % [pdflush]
1021961 be/4 root        0.00 B/s    0.00 B/s  0.00 % 99.99 % [pdflush]
1020591 be/4 root        0.00 B/s    0.00 B/s  0.00 % 99.99 % [pdflush]
1020915 be/4 root        0.00 B/s    0.00 B/s  0.00 % 99.99 % [pdflush]
1020592 be/4 root        0.00 B/s    0.00 B/s  0.00 % 99.99 % [pdflush]
1022226 be/4 root        0.00 B/s    0.00 B/s  0.00 % 92.47 % [pdflush]
1020507 be/4 root        0.00 B/s    0.00 B/s  0.00 % 92.45 % [pdflush]
1022229 be/4 root        0.00 B/s    0.00 B/s  0.00 % 92.32 % [pdflush]
]]>
/hvaonline/posts/list/45130.html#278349 /hvaonline/posts/list/45130.html#278349 GMT
Nguyên nhân thông số CPU iowait tăng cao /hvaonline/posts/list/45130.html#278350 /hvaonline/posts/list/45130.html#278350 GMT Nguyên nhân thông số CPU iowait tăng cao iotop -o Code:
Total DISK READ: 117.94 K/s | Total DISK WRITE: 9.57 M/s
  TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND
1018731 be/4 mysql       0.00 B/s    0.00 B/s  0.00 % 99.99 % mysqld --basedir=/ --datadir=/var/lib/mysql --user=mysql ~it=50000 --pid-file=/var/lib/mysql/server.demo.com.pid
  888 be/4 root       11.06 K/s    0.00 B/s  0.00 % 99.99 % exim -q
53579 be/4 mysql       0.00 B/s    0.00 B/s  0.00 % 99.99 % mysqld --basedir=/ --datadir=/var/lib/mysql --user=mysql -~mit=50000 --pid-file=/var/lib/mysql/server.demo.com.pid
 5059 be/3 root        0.00 B/s    0.00 B/s  0.00 % 99.99 % [kjournald]
 2991 be/4 root        0.00 B/s    3.69 K/s  0.00 % 99.99 % [pdflush]
 2515 be/4 root        0.00 B/s    3.69 K/s  0.00 % 99.99 % [pdflush]
 2461 be/4 root        0.00 B/s    7.37 K/s  0.00 % 99.99 % [pdflush]
 2971 be/4 root        0.00 B/s    7.37 K/s  0.00 % 99.99 % [pdflush]
 2997 be/4 root        0.00 B/s    0.00 B/s  0.00 % 92.14 % [pdflush]
 2975 be/4 root        0.00 B/s    3.69 K/s  0.00 % 92.14 % [pdflush]
top Code:
top - 10:59:50 up 7 days, 12:07,  2 users,  load average: 10.32, 7.89, 6.30
Tasks: 256 total,   2 running, 229 sleeping,   0 stopped,  25 zombie
Cpu(s):  6.7%us,  4.8%sy,  0.0%ni,  8.2%id, 79.6%wa,  0.0%hi,  0.7%si,  0.0%st
Mem:  12276180k total, 10335344k used,  1940836k free,   930728k buffers
Swap: 16777208k total,      112k used, 16777096k free,  5411144k cached

    PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
  51847 mysql     15   0 1274m 1.0g 5296 S 16.6  8.7 427:48.47 mysqld
   4332 mailnull  15   0 71312 5384 3196 S  1.3  0.0   0:00.16 exim
1034286 nobody    15   0  510m  86m 6768 S  1.3  0.7   0:30.29 httpd
1034551 nobody    15   0  510m  74m 6784 S  1.3  0.6   0:31.65 httpd
   4178 mailnull  15   0 71312 5384 3196 S  1.0  0.0   0:00.68 exim
1034347 nobody    15   0  503m  73m 6764 S  1.0  0.6   0:28.92 httpd
1033186 nobody    15   0  515m  81m 2524 S  0.7  0.7   0:28.25 httpd
1034423 nobody    18   0  493m  66m 6772 S  0.7  0.6   0:27.35 httpd
1036585 nobody    15   0  490m  61m 6764 S  0.7  0.5   0:22.84 httpd
   2152 root      -1  -5     0    0    0 D  0.3  0.0  58:32.66 kjournald
   4273 root      15   0     0    0    0 D  0.3  0.0   0:00.01 pdflush
   4281 root      16   0 12896 1252  828 R  0.3  0.0   0:00.11 top
 997505 nobody    16   0  115m  19m  996 S  0.3  0.2   0:02.22 httpd
      1 root      15   0 10372  708  600 S  0.0  0.0   0:33.06 init
      3 root      39  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0
      5 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/1
      7 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/2
p/S: Em đã thử tag [code] nhưng thấy output lằng nhằng, không theo thứ tự lắm anh:D.]]>
/hvaonline/posts/list/45130.html#278351 /hvaonline/posts/list/45130.html#278351 GMT
Nguyên nhân thông số CPU iowait tăng cao /hvaonline/posts/list/45130.html#278365 /hvaonline/posts/list/45130.html#278365 GMT Nguyên nhân thông số CPU iowait tăng cao

__ikaZuchi wrote:
Ram 12G mà gần max rồi.  
Ram gần hết là chuyện... bình thường mà.

__ikaZuchi wrote:
Mysql cũng treo rất lâu rồi.  
Dựa vào đâu bạn cho rằng MySQL bị treo vậy? Hơn nữa, "treo" theo ý bạn nghĩa là thế nào?

__ikaZuchi wrote:
Bạn thử khởi động lại chưa? 
/hvaonline/posts/list/42715.html]]>
/hvaonline/posts/list/45130.html#278366 /hvaonline/posts/list/45130.html#278366 GMT
Nguyên nhân thông số CPU iowait tăng cao /hvaonline/posts/list/37695.html 2. Mysql bị treo thì do em thấy ở cột TIME+ = 427:48.47 khi chạy lệnh top. Code:
man top
l: TIME -- CPU Time Total CPU time the task has used since it started. When âCumulative modeâ is On, each process is listed with the cpu time that it and its dead children has used. You toggle âCumulative modeâ with âSâ, which is a command-line option and an interactive command. See the âSâ interactive com- mand for additional information regarding this mode. m: TIME+ -- CPU Time, hundredths The same as âTIMEâ, but reflecting more granularity through hundredths of a second. 
]]>
/hvaonline/posts/list/45130.html#278367 /hvaonline/posts/list/45130.html#278367 GMT
Nguyên nhân thông số CPU iowait tăng cao

emdinoiay wrote:
Cám ơn anh quanta đã quan tâm topic, đây là các thông số anh yêu cầu. iotop -o Code:
Total DISK READ: 117.94 K/s | Total DISK WRITE: 9.57 M/s
  TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND
1018731 be/4 mysql       0.00 B/s    0.00 B/s  0.00 % 99.99 % mysqld --basedir=/ --datadir=/var/lib/mysql --user=mysql ~it=50000 --pid-file=/var/lib/mysql/server.demo.com.pid
  888 be/4 root       11.06 K/s    0.00 B/s  0.00 % 99.99 % exim -q
53579 be/4 mysql       0.00 B/s    0.00 B/s  0.00 % 99.99 % mysqld --basedir=/ --datadir=/var/lib/mysql --user=mysql -~mit=50000 --pid-file=/var/lib/mysql/server.demo.com.pid
 5059 be/3 root        0.00 B/s    0.00 B/s  0.00 % 99.99 % [kjournald]
 2991 be/4 root        0.00 B/s    3.69 K/s  0.00 % 99.99 % [pdflush]
 2515 be/4 root        0.00 B/s    3.69 K/s  0.00 % 99.99 % [pdflush]
 2461 be/4 root        0.00 B/s    7.37 K/s  0.00 % 99.99 % [pdflush]
 2971 be/4 root        0.00 B/s    7.37 K/s  0.00 % 99.99 % [pdflush]
 2997 be/4 root        0.00 B/s    0.00 B/s  0.00 % 92.14 % [pdflush]
 2975 be/4 root        0.00 B/s    3.69 K/s  0.00 % 92.14 % [pdflush]
 
1 loạt tiến trình [pdflush] được gọi và thực thi việc ghi dữ liệu lên đĩa. Total DISK WRITE: 9.57 M/s theo mình đoán là toàn của pdflush. Bạn thử gõ lệnh này hộ mình xem có bao nhiêu thread của pdflush Code:
cat /proc/sys/vm/nr_pdflush_threads
Có thể các thread pdflush này chiếm dụng cpu nên các process sau đó không có khả năng xử lý: kjournald,mysqld. Tại thời điểm treo, bạn post tiếp cho mình các thông số sau: /proc/meminfo /proc/sys/vm/dirty_background_ratio /proc/sys/vm/dirty_ratio /proc/sys/vm/dirty_expire_centisecs /proc/sys/vm/dirty_writeback_centisecs ]]>
/hvaonline/posts/list/45130.html#278369 /hvaonline/posts/list/45130.html#278369 GMT
Nguyên nhân thông số CPU iowait tăng cao /hvaonline/posts/list/45130.html#278370 /hvaonline/posts/list/45130.html#278370 GMT Nguyên nhân thông số CPU iowait tăng cao CPU %user %nice %system %iowait %steal %idle all 5.76 0.00 3.26 60.90 0.00 30.08 all 20.95 0.00 29.18 39.15 0.00 10.72 all 26.25 0.00 30.50 42.50 0.00 0.75 all 4.49 0.00 3.99 60.85 0.00 30.67 all 2.00 0.00 2.00 71.07 0.00 24.94 all 7.02 0.00 3.01 74.94 0.00 15.04 - Thông số /proc/sys/vm/nr_pdflush_threads tại thời điểm đó là : 8. cat /proc/sys/vm/nr_pdflush_threads 8 cat /proc/sys/vm/dirty_background_ratio 10 cat /proc/sys/vm/dirty_ratio 40 cat /proc/sys/vm/dirty_expire_centisecs 3000 cat /proc/sys/vm/dirty_writeback_centisecs 500 Mong tiếp tục nhận được góp ý từ mọi người :D.]]> /hvaonline/posts/list/45130.html#278374 /hvaonline/posts/list/45130.html#278374 GMT Nguyên nhân thông số CPU iowait tăng cao

emdinoiay wrote:
Hì trước hết cám ơn mọi người đã quan tâm topic. - Nguyên nhân em xác định không phải do MYSQL. Vì đã tắt nhưng thông số vẫn nhảy thất thường (iowait và idle) và trong khi status service MYSQL vẫn ở trạng thái S, không bị treo như anh ikaZuchi nói:D CPU %user %nice %system %iowait %steal %idle all 5.76 0.00 3.26 60.90 0.00 30.08 all 20.95 0.00 29.18 39.15 0.00 10.72 all 26.25 0.00 30.50 42.50 0.00 0.75 all 4.49 0.00 3.99 60.85 0.00 30.67 all 2.00 0.00 2.00 71.07 0.00 24.94 all 7.02 0.00 3.01 74.94 0.00 15.04 Mong tiếp tục nhận được góp ý từ mọi người :D. 
Màu mè quá nhỉ?:D Nhưng mà mình thích thế;;) Mà mình có nói nguyên nhân do MySQL đâu nhỉ, chắc bạn hiểu nhầm ý mình.
Có thể các thread pdflush này chiếm dụng cpu nên các process sau đó không có khả năng xử lý: kjournald,mysqld. 

emdinoiay wrote:
- Thông số /proc/sys/vm/nr_pdflush_threads tại thời điểm đó là : 8. cat /proc/sys/vm/nr_pdflush_threads 8 cat /proc/sys/vm/dirty_background_ratio 10 cat /proc/sys/vm/dirty_ratio 40 cat /proc/sys/vm/dirty_expire_centisecs 3000 cat /proc/sys/vm/dirty_writeback_centisecs 500 
Bạn post thiếu phần quan trọng nhất Code:
/proc/meminfo
pdflush thread có 8 là thế quái nào nhỉ? Trong lệnh iotop -o của bạn thì Total DISK WRITE: 9.57 M/s mà mỗi 1 process pdflush write có 3.69 K/s Các thông số bạn đưa ra, mình sẽ giúp bạn chỉnh sửa sau khi có nhiều thông tin hơn. Ngoài ra, bạn bổ sung thêm cho mình các thông tin sau Code:
iostat -m -x 2 5 | awk '{print $12}'
Code:
for x in `seq 1 1 3`; do ps -eo state,pid,cmd | grep "^D"; echo "---";sleep 3; done
Code:
cat /proc/<pid>/io
Trong đó <pid> là id của process có IO >99% ở câu lệnh iotop -o Code:
lsof -p <pid>
Code:
free
Code:
iostat -kd 1 1
P/S: Bạn thực hiện lại toàn bộ các câu lệnh: top, iotop -o và các câu lệnh mới thêm ở cùng 1 thời điểm để dễ chẩn đoán hơn]]>
/hvaonline/posts/list/45130.html#278382 /hvaonline/posts/list/45130.html#278382 GMT
Nguyên nhân thông số CPU iowait tăng cao cat /proc/meminfo MemTotal: 12276152 kB MemFree: 1335936 kB Buffers: 651664 kB Cached: 7831208 kB SwapCached: 0 kB Active: 8059352 kB Inactive: 2110416 kB HighTotal: 0 kB HighFree: 0 kB LowTotal: 12276152 kB LowFree: 1335936 kB SwapTotal: 16777208 kB SwapFree: 16777096 kB Dirty: 1545084 kB Writeback: 376 kB AnonPages: 1686680 kB Mapped: 38476 kB Slab: 655600 kB PageTables: 22416 kB NFS_Unstable: 0 kB Bounce: 0 kB CommitLimit: 22915284 kB Committed_AS: 4119172 kB VmallocTotal: 34359738364 kB VmallocUsed: 323064 kB VmallocChunk: 34359413900 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 Hugepagesize: 2048 kB iostat -m -x 2 5 | awk '{print $12}' %util 96.44 0.01 96.44 96.45 0.00 %util 100.05 0.00 100.05 100.10 0.00 %util 99.65 0.00 99.65 99.60 0.00 %util 100.05 0.00 100.05 100.05 0.00 -- for x in `seq 1 1 3`; do ps -eo state,pid,cmd | grep "^D"; echo "---";sleep 3; done D 2154 [kjournald] D 5082 [loop0] D 7116 syslogd -m 0 D 10330 /usr/bin/python -tt /usr/sbin/lvestats-server D 989305 [pdflush] D 989361 /usr/sbin/sendmail -f root -t D 989420 [pdflush] --- D 2154 [kjournald] D 7116 syslogd -m 0 D 10330 /usr/bin/python -tt /usr/sbin/lvestats-server D 989305 [pdflush] D 989361 /usr/sbin/sendmail -f root -t D 989420 [pdflush] --- D 2154 [kjournald] D 7116 syslogd -m 0 D 10330 /usr/bin/python -tt /usr/sbin/lvestats-server D 989305 [pdflush] D 989361 /usr/sbin/sendmail -f root -t D 989420 [pdflush] --- cat /proc/989483/io rchar: 0 wchar: 0 syscr: 0 syscw: 0 read_bytes: 0 write_bytes: 26509312 cancelled_write_bytes: 0 lsof -p 989483 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME pdflush 989483 root cwd DIR 253,0 4096 2 / pdflush 989483 root rtd DIR 253,0 4096 2 / pdflush 989483 root txt unknown /proc/989483/exe free total used free shared buffers cached Mem: 12276152 12211308 64844 0 565560 7210292 -/+ buffers/cache: 4435456 7840696 Swap: 16777208 112 16777096 iostat -kd 1 1 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 223.45 420.07 13846.98 86628600 2855610956 sda1 0.00 0.01 0.00 1211 12 sda2 223.45 420.06 13846.98 86627249 2855610944 dm-0 3498.06 420.06 13847.07 86626633 2855629204 dm-1 0.00 0.00 0.00 624 116 p/S: Hơi đau mắt, mong mọi người bỏ tí thời gian xem qua. Biết đâu sau này rơi vào trường hợp này;).]]> /hvaonline/posts/list/45130.html#278383 /hvaonline/posts/list/45130.html#278383 GMT Nguyên nhân thông số CPU iowait tăng cao

emdinoiay wrote:
cat /proc/meminfo MemTotal: 12276152 kB MemFree: 1335936 kB Buffers: 651664 kB Cached: 7831208 kB SwapCached: 0 kB Active: 8059352 kB Inactive: 2110416 kB HighTotal: 0 kB HighFree: 0 kB LowTotal: 12276152 kB LowFree: 1335936 kB SwapTotal: 16777208 kB SwapFree: 16777096 kB Dirty: 1545084 kB Writeback: 376 kB AnonPages: 1686680 kB Mapped: 38476 kB Slab: 655600 kB PageTables: 22416 kB NFS_Unstable: 0 kB Bounce: 0 kB CommitLimit: 22915284 kB Committed_AS: 4119172 kB VmallocTotal: 34359738364 kB VmallocUsed: 323064 kB VmallocChunk: 34359413900 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 Hugepagesize: 2048 kB  

emdinoiay wrote:
cat /proc/sys/vm/dirty_background_ratio 10  
Đây là điều kiện thứ 2 để gọi thread pdflush, với server của bạn thì hàm sẽ được gọi ra khi dung lượng của Dirty "xấp xỉ" 910MB, nhưng ở đây Dirty đã lên đến hơn 1500MB. Cộng với thông tin này:

emdinoiay wrote:
- Thông số /proc/sys/vm/nr_pdflush_threads tại thời điểm đó là : 8. cat /proc/sys/vm/nr_pdflush_threads 8  
8 là giá trị mặc định lớn nhất cho phép số lượng thread gọi ra. Có thể chỉnh sửa số lượng thread cho phép này nhưng không nên. Vậy nên điều này cho thấy pdflush đã làm việc hết công suất nhưng cũng không xử lí được hết các dirty pages.

emdinoiay wrote:
iostat -kd 1 1 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 223.45 420.07 13846.98 86628600 2855610956 sda1 0.00 0.01 0.00 1211 12 sda2 223.45 420.06 13846.98 86627249 2855610944 dm-0 3498.06 420.06 13847.07 86626633 2855629204 dm-1 0.00 0.00 0.00 624 116  
Tốc độ ghi đĩa của bạn khoảng 15MB/s Độ ưu tiên của các thông số, từ trên xuống dưới: Code:
/proc/sys/vm/dirty_expire_centisecs 
/proc/sys/vm/dirty_background_ratio 
/proc/sys/vm/dirty_ratio
Bây giờ bạn thử chỉnh sửa lại cho mình như này: Ghi thông số của Dirty trong /proc/meminfo ở thời điểm hiện tại gọi là: $dirty_current (MB) Ghi thông số của Dirty trong /proc/meminfo 5s sau đó gọi là: $dirty_later (MB) Chỉnh sửa /proc/sys/vm/dirty_expire_centisecs theo công thức như sau: Code:
/proc/sys/vm/dirty_expire_centisecs = 3000*15*5/($dirty_later - $dirty_current)
Sau đó khởi động lại. Nếu trên 500 thì tiếp tục theo dõi, còn nếu nhỏ hơn thì báo mình.]]>
/hvaonline/posts/list/45130.html#278409 /hvaonline/posts/list/45130.html#278409 GMT
Nguyên nhân thông số CPU iowait tăng cao /hvaonline/posts/list/45130.html#278427 /hvaonline/posts/list/45130.html#278427 GMT