sysstat에서 가장 기본적인 명령어인 iostat명령은 CPU 및 디스크 입출력 통계에 대한 기본정보를 보여줍니다.
iostat의 기본명령어 실행 시 다음과 같이 출력됩니다.
맨 첫째줄에 시스템 커널 버전, 호스트명, 날짜가 나오고,
두번째줄에는 마지막 재부팅 후 시스템 평균 CPU 활용률을 보여줍니다.
%user : 사용자가 사용중인 프로세서가 사용한 시간(백분율)
%nice : nice(작업우선순위)정책에 의해 우선순위가 바뀐 프로세서가 사용한 시간
%system : 시스템이 사용한 시간
%iowait : 입출력 대기 시간
%steal : Stael CPU 사용 시간
%idle : 유휴상태 시간
마지막줄에는 각 디스크의 장치 활용량 리포트가 출력됩니다.
Device : 장치명
TPS : 초당 입출력 작업 갯수
Blk_read/s : 초당 읽어들인 512바이트 블록수
Blk_wrtn/s : 초당 쓰여진 512바이트 블록수
Blk_read : 지금까지 읽어들인 512바이트 블록수
Blk_wrtn : 지금까지 쓰여진 512바이트 블록수
iostat의 사용법은 다음과 같습니다.
iostat [ 옵션 ] [ 갱신주기<초> [ 리포트갯수<숫자> ] ]
옵션
-c : cpu 사용량 정보를 출력한다.
-d : 디바이스의 사용량 정보를 출력한다.
-k : 초당 블럭수 대신 초당 Kb를 사용한다. 단 이 옵션은 리눅스 커널 2.4 이상부터 가능하다.
-m : 초당 블럭수 대신 초당 Mb를 사용한다. 단 이 옵션은 리눅스 커널 2.4 이상부터 가능하다.
-t : 각 결과 앞에 시간을 포함해서 출력한다.
-V : 마지막에 버전 숫자를 출력한다.
-n : NFS(리눅스 공유 파일 시스템)의 사용량을 출력한다. 단 이 옵션은 리눅스 커널 2.6.17 이상부터 가능하다.
-h : -n 옵션과 동일한 결과를 보여주지만 -n 보다는 가독성이 더 좋게 출력된다.
-p [ device | ALL ] : 블록 디바이스와 시스템에서 사용되는 모든 파티션 정보를 출력한다. 디바이스 이름이 지정되면 해당 디바이스에서 사용하는 통계 정보를 제공한다. ALL을 붙여 사용하면 시스템에 정의된 모든 블록 디바이스와 파티션 정보를 한 번도 사용되지 않은 것도 포함하여 결과를 출력한다. 단 이 옵션은 리눅스 커널 2.5 이상부터 가능하다.
-x : 보다 확장 된 통계 정보를 출력한다. 단 이 옵션을 사용 할 땐 -n 과 -p 옵션을 같이 사용 할 수 없다.
-x를 사용 할 때 출력은 다음과 같습니다.
여기서 나오는 출력화면의 의미는 다음과 같습니다.
rrqm/s : 디바이스 큐에 대기중인 초당 읽기 요청의 건수
wrqm/s : 디바이스 큐에 대기중인 초당 쓰기 요청의 건수
r/s : 디바이스에 요청한 초당 읽기 요청의 건수
w/s : 디바이스에 요청한 초당 쓰기 요청의 건수
rsec/s : 디바이스에서 초당 읽어들인 섹터의 갯수
wsec/s : 디바이스에서 초당 기록한 섹터의 갯수
avgrq-sz : 디바이스에 요청한 초당 평균 데이터의 크기
avgqu-sz : 디바이스에 요청한 초당 평균 큐 길이
await : 디바이스에서 처리되기 위해서 요청된 I/O 평균 시간(밀리초, 1/1000초). 큐에서 소요된 시간과 처리된 시간이 합쳐져 출력됨.
svctm : 디바이스에서 처리한 I/O 평균 시간 (밀리초, 1/1000초)
-> http://blog.naver.com/idjung/150082332311
(r/s + w/s) * svctm = t
t / 1000 (1초) * 100(백분율) = %util
%util = io busy
%util : 디바이스에서 요청한 I/O 작업을 수행하기 위해 사용한 CPU 시간 비율. 이 값이 100%에 가까워지면 디바이스가 한계에 도달했다고 보면 됨.
갱신주기와 리포트 갯수는 다음 예시를 보면 이해가 빠릅니다.
1초의 갱신주기를 가지고 총 3번 출력 해주게 하려면
1초에 한번씩 총 3번의 결과가 출력됩니다.
watch 명령어와 조합해서 사용할 수 도 있습니다.
이상으로 iostat 명령을 마칩니다.
'연구개발 > Linux' 카테고리의 다른 글
export (0) | 2014.07.08 |
---|---|
ubuntu python mysqldb 설치 (0) | 2014.07.08 |
시스템 모니터링을 위한 도구들 (0) | 2014.07.08 |
vmstat 명령어 (0) | 2014.07.08 |
[ubuntu] system benchmarking tool (0) | 2014.07.07 |