티스토리 뷰

운영체제/리눅스

iostat

메모하는습관 2010. 6. 16. 13:13

장치, 파티션, NFS에 대한  CPU 및 I/O 상태

 

Linux의 경우 yum을 이용하여 설치가 가능하다.

iostat는 sysstat에 포함되있기 때문에 아래와 같이 yum으로 검색하여 설치를 하자

 

sysstat 찾기

  1. $yum list | grep sysstat
  2. sysstat.x86_64                           7.0.4-3.fc8            installed

 

sysstat 설치 (fedora8 64bit를 사용하므로 64bit용으로 설치)

  1. $yum install sysstat.x86_64

사용법

사용예1)

  1.  # iostat
    Linux 2.6.23.1-42.fc8 (gorda-repl)      2008년 04월 16일
  2. avg-cpu:  %user   %nice %system %iowait  %steal   %idle
               1.79    0.00    0.13    0.61    0.00   97.47
  3. Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
    sda               1.12        19.49        25.78   31888615   42197232
    sdb              11.23       659.95       161.70 1080035856  264630060

 

  • %user : CPU자원이 사용자 모드에서 사용된 백분율을 의미
    프로세스는 사용자 혹은 시스템 모드로 실행된다.
    사용자 모드에서는 자신의 코드내에서만 운영되며 커널 자원을 필요하지 않는다.
  • %system : CPU자원이 시스템 모드에서 사용된 백분율

    %user와 %system 합계가 80%(복수사용자 가정) 이상이면 CPU는 거의 작업을 하지 못한다고 할 수 있다.

  • %iowait : 지연된 자신의 디스크 입출력을 갖고 CPU가 놀고 있는 시간의 백분율
    idle상태와는 디스크 입출력 대기라는 측면에서 다르다.
    입출력이 완료되면 프로세스 실행 큐에 놓인다.
    일반적으로 높은 iowait은 메모리 부족이나, 비효율적인 I/O부시스템이 구성되있다는 것을 나타낸다.
    iowait가 높을 경우 가능한 솔루션

    • 특정한 디스크상에 놓인 활동적인 논리적 볼륨들과 파일의 수 제한 (파일 입출력 부하 균등 분산)
    • 하나의 논리적 볼륨을 여러 디스크에 분산 (여러 개의 서로 다른 파일들이 사용되는 경우 매우 적절한 조치)
    • 한 볼륨그룹에 대해 여러 개의 JFS(저널링 파일시스템) 로그들을 만들고, 이들을 특정한 파일 시스템들에게 할당
  • tps : 초당 I/O
  • Blk_read/s: 초당 읽은 블록
  • Blk_wrtn/s : 초당 쓴 블록
  • Blk_read : 읽은 블록
  • Blk_wrtn : 쓴 블록

 

사용예2) 1초단위로 3번 출력

  1. # iostat 1 3
    Linux 2.6.23.1-42.fc8 (gorda-repl)      2008년 04월 16일
  2. avg-cpu:  %user   %nice %system %iowait  %steal   %idle
               1.79    0.00    0.13    0.61    0.00   97.47
  3. Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
    sda               1.12        19.47        25.77   31888615   42209488
    sdb              11.22       659.43       161.57 1080035856  264630060
  4. avg-cpu:  %user   %nice %system %iowait  %steal   %idle
               0.00    0.00    0.00    0.00    0.00  100.00
  5. Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
    sda               0.00         0.00         0.00          0          0
    sdb               0.00         0.00         0.00          0          0
  6. avg-cpu:  %user   %nice %system %iowait  %steal   %idle
               0.00    0.00    0.00    0.00    0.00  100.00
  7. Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
    sda               0.00         0.00         0.00          0          0
    sdb               0.00         0.00         0.00          0          0

 

 

설명

프로세스별 I/O 상태는 알 수 없는 문제가 있다.
Linux Trace Toolkit (http://opersys.com/LTT) 프로그램으로 알 수 있다. (GPL)


출처 :mulder3062님의 노트

'운영체제 > 리눅스' 카테고리의 다른 글

[CentOS] yum을 이용해 tomcat 6.0.35 설치  (0) 2012.05.08
CVS, SVN 폴더 삭제  (0) 2012.05.04
sudo 설정 (sudoers)  (0) 2012.05.04
[CentOS] HDD 속도 측정  (0) 2011.03.29
[CentOS 5.5] yum을 이용한 samba 설치  (0) 2011.03.29
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday