디스크가 「얼마나 바쁜가」를 보는 도구들.
CPU·메모리는 흔히 보지만 디스크 IO가 진짜 병목인 경우 많습니다.
iostat.
apt install sysstat.
iostat -x 1 — 디스크별 상세, 1초마다.
주요 컬럼 — %util(디스크 사용률), await(평균 응답 시간 ms), r/s·w/s(초당 읽기·쓰기 횟수), rMB/s·wMB/s(처리량).
주목할 값.
%util 100%면 디스크가 「풀 가동」.
await가 100ms 넘으면 응답 느림(SSD는 1ms 이하 정상, HDD는 10~20ms).
r/s·w/s가 높으면 IOPS 한계, MB/s가 높으면 대역폭 한계.
iotop.
apt install iotop.
sudo iotop — 「프로세스별」 디스크 IO 실시간.
「누가 디스크를 많이 쓰나」 즉시 식별.
top과 비슷한 인터페이스.
DISK READ·DISK WRITE 컬럼.
각 프로세스의 초당 읽기·쓰기 양.
「예상 못 한 IO 폭증」 — 백업 작업·잘못된 로그 폭주·DB 인덱스 재구성 등 식별.
시스템 느릴 때 iotop으로 1분만 봐도 원인 자주 발견.
한 줄 요약
iostat -x 1로 디스크별 상세(%util·await·IOPS·MB/s).
iotop으로 프로세스별 IO 실시간.
%util 100%·await 큼이 병목 신호.
iotop으로 IO 폭증 원인 즉시 식별.
더 알아볼 것
- dstat — 통합 시스템 통계
- sar — 과거 통계 저장
- blktrace — 블록 디바이스 추적