Linux

[Linux] 디스크 모니터링 : iostat

nayoungs 2024. 11. 16. 22:48
728x90

iostat

iostat는 Input/Output Statistics의 약자로, 시스템의 CPU 및 I/O 장치 활동을 모니터링하고 보고하는 명령어이다. 주로 디스크의 성능을 분석하고, 시스템의 I/O 병목 문제를 진단하는 데 사용된다. iostat는 각 디스크 장치의 사용량, 전송 속도, 대기 시간 등의 정보를 제공하여 시스템 관리자나 개발자가 성능 문제를 파악하는 데 도움을 준다.

 

iostat 명령어를 사용하면 디스크 디바이스에 대한 입출력 정보를 확인할 수 있다.

$ iostat [옵션] [인터벌] [횟수]

iostat 옵션 뒤에는 인터벌과 횟수를 의미하는 숫자가 온다.

인터벌은 몇 모바다 디스크 디바이스의 정보를 출력할 것인지, 횟수는 몇 번 수집할 것인지를 의미한다.

$ iostat
Linux 5.4.0-42-generic (hostname)	11/16/2024	_x86_64_	(4 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           10.50    0.00    5.00    2.50    0.00   82.00

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda               12.00      200.00      400.00     10000      20000
sdb               15.00      300.00      500.00     15000      25000

기본적으로 iostat 명령어를 실행하면 시스템의 CPU 사용량과 각 블록 장치의 I/O 통계를 출력한다. 여기서 각 필드는 다음과 같은 의미를 가진다.

 

avg-cpu

CPU의 평균 사용량을 보여준다.

  • %user: 사용자 프로세스가 사용한 CPU 시간 비율
  • %system: 커널 프로세스가 사용한 CPU 시간 비율
  • %iowait: I/O 작업을 기다리는 동안의 CPU 시간 비율
  • %idle: CPU가 유휴 상태인 시간 비율

Device

각 블록 장치를 나타낸다.

  • tps: 초당 전송 수(Transactions Per Second).
  • Blk_read/s: 초당 읽기 블록 수
  • Blk_wrtn/s: 초당 쓰기 블록 수
  • Blk_read: 총 읽기 블록 수
  • Blk_wrtn: 총 쓰기 블록 수

추가적인 정보가 필요하면, -x 옵션을 사용하여 더 자세한 통계를 확인할 수 있다.

$ iostat -x
Device:         rrqm/s   wrqm/s     r/s     w/s   rsec/s   wsec/s  avgrq-sz   avgqu-sz   await  svctm  %util
sda               0.50     1.00     2.00    10.00      50.00     100.00      12.50      0.25   25.00   10.00   20.00
sdb               0.00     2.00     3.00    12.00      80.00     200.00      14.00      0.30   25.00    9.00   25.00

CPU 통계만 출력하고 싶다면 -c 옵션을 사용할 수 있다.

$ iostat -c
avg-cpu:  %user   %nice %system %iowait  %steal   %idle

          18.85    0.00    2.42    0.00    0.00   78.73

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          35.56    0.00    6.00    0.00    0.00   58.44

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          31.52    0.00    4.20    0.00    0.00   64.28

Disk 디바이스 정보만 출력하고 싶으면 -d 옵션을 사용하면 된다.

다음은 1초마다 디스크 정보를 총 3번 출력하라는 명령이다.

$ iostat -d 1 3

 

728x90