본문으로 건너뛰기

iostat 명령어 활용 방법은 무엇인가요?

💡 요약 정리

  • iostat는 디스크 입출력 상태를 확인하는 시스템 모니터링 명령어입니다.
  • CentOS 5.x (64bit) 기준, 기본 설치되어 있어 별도 설치 과정이 필요 없습니다.
  • 입력 형식: iostat [옵션] [주기] [반복횟수]
  • 기본 정보 이외에도 -x 옵션을 활용하면 더욱 상세한 내용을 확인할 수 있습니다.

1. 설치 환경

  • CentOS 5.x (64bit)

2. iostat 명령어란?

  • 시스템 모니터링 툴로서 주로 디스크 I/O 체크에 사용합니다.
  • 보통 리눅스에는 기본 패키지로 설치되어 있어 별도의 설치가 필요 없습니다.

3. iostat 명령어 활용

3.1 사용 형식

  • 입력 형식: iostat [옵션] [주기] [반복횟수]

3.2 기본 출력

아래는 iostat 1 3 명령어 실행 시 텍스트 예시입니다. 1초 간격으로 디스크 상태가 3회 출력됩니다.

[root@cafe24 ~]# iostat 1 3

Linux 2.6.18-238.19.1.el5xen (cafe24)   01/24/2013

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
             0.03    0.00    0.03    0.04    0.02   99.88

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
xvda              1.09         6.80        12.17     344353     616468
xvda1             0.00         0.03         0.00       1588          4
xvda2             0.00         0.02         0.00       1123          0
xvda3             1.08         6.74        12.17     341362     616464
xvde              0.00         0.01         0.00        632          0

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
             0.00    0.00    0.00    0.00    0.00  100.00

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
xvda              0.00         0.00         0.00          0          0
xvda1             0.00         0.00         0.00          0          0
xvda2             0.00         0.00         0.00          0          0
xvda3             0.00         0.00         0.00          0          0
xvde              0.00         0.00         0.00          0          0

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
             0.00    0.00    0.00    0.00    0.00  100.00

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
xvda              0.00         0.00         0.00          0          0
xvda1             0.00         0.00         0.00          0          0
xvda2             0.00         0.00         0.00          0          0
xvda3             0.00         0.00         0.00          0          0
xvde              0.00         0.00         0.00          0          0

[root@cafe24 ~]#

기본 출력 항목 설명

  • tps: 디바이스에 초당 전송 요청 건수
  • Blk_read/s: 디바이스에서 초당 읽은 데이터 블록 단위
  • Blk_wrtn/s: 디바이스에서 초당 쓴 데이터 블록 단위
  • Blk_read: 디바이스에서 지정한 간격 동안 읽은 블록 수
  • Blk_wrtn: 디바이스에서 지정한 간격 동안 쓴 전체 블록 수

3.3 상세 출력 (-x 옵션 사용)

-x 옵션을 사용하면 보다 정밀한 측정 지표를 확인할 수 있습니다.

[root@cafe24 ~]# iostat -x 1 3

Linux 2.6.18-238.19.1.el5xen (cafe24)   01/24/2013

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
             0.03    0.00    0.03    0.04    0.02   99.88

Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util
xvda               0.10     0.74    0.30    0.78     6.78    12.17     17.47     0.00    1.78   0.72   0.08
xvda1              0.01     0.00    0.00    0.00     0.03     0.00     13.05     0.00    1.77   0.89   0.00
xvda2              0.02     0.00    0.00    0.00     0.02     0.00      8.44     0.00    0.09   0.03   0.00
xvda3              0.07     0.74    0.30    0.78     6.72    12.17     17.50     0.00    1.78   0.72   0.08
xvde               0.00     0.00    0.00    0.00     0.01     0.00     28.73     0.00    0.18   0.18   0.00

...
[root@cafe24 ~]#

상세 항목 설명

  • rrqm/s: 초당 병합된 읽기 요청 횟수 (리드 큐)
  • wrqm/s: 초당 병합된 쓰기 요청 횟수 (라이트 큐)
  • r/s: 디바이스에 요청한 초당 읽기 요청 건수
  • w/s: 디바이스에 요청한 초당 쓰기 요청 건수
  • rsec/s: 디바이스에서 초당 읽은 섹터 수
  • wsec/s: 디바이스에서 초당 쓴 섹터 수
  • avgrq-sz: 요청된 I/O 작업의 평균 섹터 크기
  • avgqu-sz: 요청 대기 큐의 평균 길이
  • await: I/O 요청이 처리되기까지 소요된 평균 시간 (단위: ms)
  • svctm: I/O 요청 처리에 걸린 평균 시간 (단위: ms)
  • %util: 디바이스가 작업 수행에 사용한 시간 비율. 이 수치가 100%에 가까우면 디바이스가 과중한 작업 상태임을 의미합니다.

4. 참고자료

원문 블로그 참고자료 바로가기