hotamul의 개발 이야기

sysstat, sar을 이용한 resource 모니터링 본문

etc.

sysstat, sar을 이용한 resource 모니터링

hotamul 2023. 3. 12. 00:45

sar(Sysstat)을 이용한 리소스 모니터링

sar이란?

  • 시스템 모니터링 도구 중 하나인 sar(Sysstat)은 일정 간격으로 시스템 리소스 사용량 정보를 수집하고 이를 로그 파일에 기록한다.
  • 이렇게 기록된 정보를 이용하여 시스템의 상태를 분석하고 성능 향상을 위한 조치를 취할 수 있다.
  • sar은 대부분의 리눅스 시스템에서 기본적으로 설치되어 있으므로 별도의 설정 없이 sar을 사용하여 시스템 리소스 사용량 정보를 수집할 수 있다.

sar 설치하기

sar은 sysstat 패키지에 포함되어 있습니다. 따라서 sar을 사용하려면 sysstat 패키지를 설치해야 한다.

CentOS/RHEL

$ yum install sysstat

Ubuntu/Debian

$ apt-get install sysstat

sar을 이용한 리소스 모니터링 방법

CPU 사용량 모니터링

sar -u [시간 간격(초)] [수집 횟수]
  • 출력 결과에는 %user, %nice, %system, %iowait, %steal, %idle 등이 포함된다.
  • %user: 사용자 프로세스가 CPU를 사용한 시간의 비율
  • %nice: nice 옵션으로 실행된 사용자 프로세스가 CPU를 사용한 시간의 비율
  • %system: 시스템 프로세스가 CPU를 사용한 시간의 비율
  • %iowait: CPU가 I/O 작업을 대기하는 시간의 비율
  • %steal: 가상 머신에서 다른 가상 머신의 CPU를 사용할 때 발생하는 시간의 비율
  • %idle: CPU가 아무런 작업을 하지 않는 시간의 비율

메모리 사용량 모니터링

sar -r [시간 간격(초)] [수집 횟수]
  • 출력 결과에는 kbmemfree, kbmemused, %memused, kbbuffers, kbcached, kbcommit 등이 포함된다.

디스크 사용량 모니터링

sar -b [시간 간격(초)] [수집 횟수]
  • 출력 결과에는 tps, rtps, wtps, bread/s, bwrtn/s 등이 포함된다.

sar의 출력 결과 예시

  • CPU 사용량 모니터링
    12:00:01 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle
    12:10:01 AM     all      0.01      0.00      0.01      0.00      0.00     99.98
    12:20:01 AM     all      0.02      0.00      0.02      0.00      0.00     99.96
    12:30:01 AM     all      0.02      0.00      0.02      0.00      0.00     99.96
    12:40:01 AM     all      0.02      0.00      0.02      0.00      0.00     99.96
    12:50:01 AM     all      0.02      0.00      0.02      0.00      0.00     99.96
    01:00:01 AM     all      0.01      0.00      0.01      0.00      0.00     99.99

참고

Comments