본문 바로가기
Q&A2025년 1월 24일1분 읽기

Linux에서 디스크 I/O 병목 진단하기

한
한동욱
조회 494댓글 3

서버가 느린데 CPU도 메모리도 괜찮습니다. 디스크 I/O가 문제인지 어떻게 확인하나요?

댓글 3

김김영삼1년 전

디스크 I/O 진단:

# 1. iostat
iostat -x 1 5
# %util이 90% 이상이면 디스크 포화
# await가 높으면 대기 시간 긺

# 2. iotop (프로세스별 I/O)
sudo iotop -o # I/O 사용 중인 프로세스만

# 3. vmstat
vmstat 1 5
# wa(wait) 값이 높으면 I/O 대기

DB 서버에서 흔한 문제입니다. SSD 교체, 쿼리 최적화, 또는 캐시(Redis) 도입을 고려하세요.

한한동욱(guest)1년 전
%util이 계속 95% 이상인데 어떤 프로세스가 원인인지 어떻게 특정하나요?
김김영삼1년 전

iotop -o로 프로세스별 I/O 사용량을 확인하세요. 보통 PostgreSQL이나 MySQL 같은 DB 프로세스가 원인입니다. DB라면 slow query를 찾아서 최적화하거나, 인덱스를 추가하세요. 로그 파일이 원인이면 logrotate 설정을 확인하세요.

Ctrl+Enter로 등록