100.0%sy 디스크 성능이 좋지 않습니다.

100.0%sy 디스크 성능이 좋지 않습니다.

RHEL 5.4 커널 2.6.18-164.el5가 있고 Oracle을 사용하는 동안 디스크 성능이 매우 저하되는 현상이 무작위로 발생합니다.

로그에는 아무것도 표시되지 않습니다.

이런 일이 발생하면 CPU 코어가 100% 시스템 시간에서 멈추는 것을 볼 수 있습니다 top.

Cpu0  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu1  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  :  1.0%us,  0.0%sy,  0.0%ni, 99.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  :  1.0%us,  0.0%sy,  0.0%ni, 99.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu4  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu5  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu6  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu7  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu8  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu9  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu10 :  0.0%us,100.0%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu11 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu12 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu13 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu14 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu15 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   8097368k total,  5761028k used,  2336340k free,   602024k buffers
Swap:  2088440k total,        0k used,  2088440k free,  3070188k cached

디스크 쓰기를 확인하면 dd위와 동일한 결과를 얻었습니다.

time dd if=/dev/zero of=1000 bs=2M count=500 conv=fdatasync

79+0 records in
79+0 records out
165675008 bytes (166 MB) copied, 279.746 seconds, 592 kB/s

real    4m40.565s
user    0m0.000s
sys 4m40.521s 

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
8557 root      25   0 65212 2640 2548 R 99.8  0.0   3:02.99 dd

정상 작동 중에는 다음을 얻습니다.

500+0 records in
500+0 records out
1048576000 bytes (1.0 GB) copied, 9.24778 seconds, 113 MB/s

real    0m9.249s
user    0m0.001s
sys 0m1.772s

디스크는 MegaRAID SAS9261-8i 컨트롤러에 의해 관리되는 RAID1 구성의 15k RPM SAS 2개입니다.

컨트롤러의 드라이버와 펌웨어를 업그레이드했습니다.

이상한 문제는 시스템이 몇 주 동안 잘 작동하고 모든 디스크 벤치마크에서 좋은 결과가 나온다는 것입니다.

이 열악한 디스크 성능을 디버깅하는 방법은 무엇입니까?

Patrick의 요청에 대해 100%sy 동안의 출력입니다.

top - 14:12:57 up 13 days, 15:49,  3 users,  load average: 1.28, 1.48, 1.17
Tasks: 424 total,   2 running, 422 sleeping,   0 stopped,   0 zombie
Cpu0  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu1  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu4  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu5  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu6  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu7  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu8  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu9  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu10 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu11 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu12 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu13 :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu14 :  0.0%us,100.0%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu15 :  0.0%us,  1.0%sy,  0.0%ni, 99.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   8097368k total,  6167440k used,  1929928k free,   306644k buffers
Swap:  2088440k total,        4k used,  2088436k free,  3638216k cached

mpstat -P 모두 3 1

02:13:19 PM  CPU   %user   %nice    %sys %iowait    %irq   %soft  %steal   %idle    intr/s
02:13:22 PM  all    0.06    0.00    6.50    0.00    0.02    0.00    0.00   93.42   1077.00
02:13:22 PM    0    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00   1001.33
02:13:22 PM    1    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
02:13:22 PM    2    0.00    0.00    0.00    0.00    0.33    0.00    0.00   99.67     43.67
02:13:22 PM    3    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
02:13:22 PM    4    0.00    0.00    0.00    0.33    0.00    0.00    0.00   99.67     16.33
02:13:22 PM    5    0.33    0.00    2.99    0.00    0.00    0.00    0.00   96.68      0.00
02:13:22 PM    6    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.33
02:13:22 PM    7    0.33    0.00    0.00    0.00    0.00    0.00    0.00   99.67      0.00
02:13:22 PM    8    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
02:13:22 PM    9    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
02:13:22 PM   10    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
02:13:22 PM   11    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
02:13:22 PM   12    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
02:13:22 PM   13    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
02:13:22 PM   14    0.00    0.00  100.00    0.00    0.00    0.00    0.00    0.00     14.33
02:13:22 PM   15    0.66    0.00    1.00    0.00    0.00    0.00    0.00   98.34      0.00

Average:     CPU   %user   %nice    %sys %iowait    %irq   %soft  %steal   %idle    intr/s
Average:     all    0.06    0.00    6.50    0.00    0.02    0.00    0.00   93.42   1077.00
Average:       0    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00   1001.33
Average:       1    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
Average:       2    0.00    0.00    0.00    0.00    0.33    0.00    0.00   99.67     43.67
Average:       3    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
Average:       4    0.00    0.00    0.00    0.33    0.00    0.00    0.00   99.67     16.33
Average:       5    0.33    0.00    2.99    0.00    0.00    0.00    0.00   96.68      0.00
Average:       6    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.33
Average:       7    0.33    0.00    0.00    0.00    0.00    0.00    0.00   99.67      0.00
Average:       8    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
Average:       9    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
Average:      10    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
Average:      11    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
Average:      12    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
Average:      13    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00      0.00
Average:      14    0.00    0.00  100.00    0.00    0.00    0.00    0.00    0.00     14.33
Average:      15    0.66    0.00    1.00    0.00    0.00    0.00    0.00   98.34      0.00

sar -I XALL 3 1 0보다 큰 인터럽트

Average:         INTR    intr/s
Average:            0   1000.33
Average:           51      7.33
Average:           59      1.00
Average:           75     23.33
Average:          218     61.67
Average:          233      0.33

중단 문제는 없는 것 같습니다.

답변1

답변2

시간 dd if=/dev/zero of=1000 bs=2M count=500 전환=f​​datasync

...

실제 4미터 40.565초

사용자 0m0.000s

시스템 4분 40초 521초

글쎄, 이는 일반적으로 Oracle을 실행한다는 사실과는 아무런 관련이 없습니다. (/dev/zero는 빠르게 출력을 생성하지만 Unix 파일 시스템에 많은 널 바이트를 쓰는 것은 희소 파일 지원으로 인해 좋은 벤치마크가 아닙니다. - 이 경우에는 성능이 너무 나빠서 문제가 여전히 눈에 띕니다.)

"정상적인" 타이밍도 꽤 느리게 보입니다. 하지만 이러한 타이밍과 성능 저하 사이에는 여전히 큰 차이가 있습니다.

이전 2코어 단일 SATA 상자에서는 다음을 얻습니다.

real    0m6.961s
user    0m0.001s
sys     0m1.459s

디스크 구성을 쉽게 전환할 수 있습니까(예: megaRAID 컨트롤러를 우회하고 mdadm(소프트웨어) raid를 사용합니까? (참고: 이전에 md 장치에서 MySQL을 실행하는 데 몇 가지 심각한 문제가 있었습니다. 이는 저만의 문제일 수도 있습니다/이전 문제) 이제 버그가 수정되었으므로 테스트할 때 최악의 결과를 계획하는 것이 좋습니다.

가끔 성능이 저하되면 디스크가 오프라인 상태가 된 후 재구축될 수 있음을 의미합니다. 보고된 오류가 있습니까?

관련 정보