서버모니터링툴 sysstat의 설치부터 사용까지 (ubuntu 기준)

서버모니터링툴 sysstat의 설치와 기본설정 (ubuntu)

서버를 운영하다 보면 시스템의 성능과 자원 사용량을 모니터링할 필요가 있습니다.
이때 유용한 도구 중 하나가 sysstat입니다.
sysstat은 리눅스 시스템에서 disk I/O, CPU, memory, networking 등 다양한 통계 정보를 수집하고 보고하는 도구 모음으로 sysstat에는 iostat, sar, mpstat, pidstat 등의 유틸리티들이 포함되어 있습니다.
이번 포스팅에서는 ubuntu 시스템에 sysstat을 설치하고 기본적인 설정 방법에 대해 알아보겠습니다.

sysstat 설치하기

ubuntu 시스템에 sysstat을 설치하는 방법은 간단합니다.
터미널을 열고 다음 명령어를 입력하면 됩니다.

1
2
sudo apt update
sudo apt install sysstat
cs

설치가 완료되면 sysstat이 자동으로 시작되도록 설정되어 있습니다.
만약 확인하고 싶다면 다음 명령어로 확인할 수 있습니다.

1
systemctl status sysstat
cs

sysstat 설정하기

sysstat은 cron 또는 systemd를 통해 주기적으로 데이터를 수집하고 파일로 저장합니다.
이때 데이터가 저장되는 위치와 보관 기간 등을 설정할 수 있습니다.
sysstat의 설정 파일은 /etc/sysconfig/sysstat 또는 /etc/default/sysstat에 있습니다.
이 파일을 열어보면 다음과 같은 내용이 있습니다.

1
2
3
4
5
6
7
8
9
10
11
# How long to keep log files (in days).
# If value is greater than 28, then log files are kept in
# multiple directories, one for each month.
HISTORY=28
# Compress (using gzip or bzip2) sa and sar files older than (in days):
COMPRESSAFTER=31
# Parameters for the system activity data collector (see sadc manual page)
# which are used for the generation of log files.
SADC_OPTIONS="-S DISK"
# Compression program to use.
ZIP="bzip2"
cs

여기서 HISTORY는 데이터 파일이 보관되는 기간을 일 단위로 설정하는 옵션입니다.
기본값은 28일이며, 이보다 큰 값으로 설정하면 월별로 디렉토리를 생성하여 파일을 저장합니다.

COMPRESSAFTER는 데이터 파일이 압축되는 기간을 일 단위로 설정하는 옵션입니다.
기본값은 31일이며, 이보다 오래된 파일은 ZIP 옵션에 지정된 프로그램으로 압축됩니다.

SADC_OPTIONS는 데이터 수집기인 sadc가 사용하는 옵션입니다.
여기서 -S DISK는 disk I/O 통계를 수집하도록 지정하는 옵션입니다.
다른 옵션들은 man sadc로 확인할 수 있습니다.

ZIP은 데이터 파일을 압축할 때 사용할 프로그램을 지정하는 옵션입니다.
기본값은 bzip2이며, gzip 등 다른 프로그램으로 변경할 수 있습니다.

설정 파일을 수정한 후에는 sysstat 서비스를 재시작해야 적용됩니다.

1
sudo systemctl restart sysstat
cs

sysstat 사용하기

sysstat에 포함된 유틸리티들은 각각 다른 종류의 통계 정보를 보여줍니다.
예를 들어 iostat은 디스크 드라이브의 I/O 통계를 보여주고, sar은 시스템의 리소스에 대한 정보를 보여주고, mpstat은 CPU 사용량에 대한 정보를 보여주고, pidstat은 프로세스 별 CPU 사용량에 대한 정보를 보여줍니다.
각 유틸리티의 사용법은 man 페이지나 --help 옵션으로 확인할 수 있습니다.
여기서는 간단한 예시만 보여드리겠습니다.

1
2
iostat 예시:
iostat --1 3
cs

이 명령어는 -x 옵션으로 확장된 통계 정보를, -d 옵션으로 디스크 드라이브만 표시하도록 하고, 1초 간격으로 3번 반복하여 출력합니다.

1
2
sar 예시:
sar -u -r -b 1 3
cs

이 명령어는 -u 옵션으로 CPU 사용량을, -r 옵션으로 메모리 사용량을, -b 옵션으로 버퍼 캐시 사용량을 표시하도록 하고, 1초 간격으로 3번 반복하여 출력합니다.

1
2
mpstat 예시:
mpstat -P ALL 1 3
cs

이 명령어는 -P ALL 옵션으로 모든 CPU 코어의 사용량을 표시하도록 하고, 1초 간격으로 3번 반복하여 출력합니다.

1
2
pidstat 예시:
pidstat -u -p 1234 1 3
cs

이 명령어는 -u 옵션으로 CPU 사용량을, -p 1234 옵션으로 프로세스 ID가 1234인 프로세스만 표시하도록 하고, 1초 간격으로 3번 반복하여 출력합니다.

결론

이상으로 ubuntu 시스템에 sysstat을 설치하고 기본적인 설정과 사용 방법에 대해 알아보았습니다.
sysstat은 리눅스 시스템의 성능과 자원 사용량을 모니터링하는 데 매우 유용한 도구 모음입니다.
더 자세한 정보와 예제는 링크를 참고하시기 바랍니다.
이상으로 포스팅을 마치겠습니다.
감사합니다.

글 쓰는 Jiniwar


댓글

이 블로그의 인기 게시물

crontab 설정방법과 로그 확인하는 법

Microsoft Defender 방화벽 설정 또는 해제하는 방법

한국 군비지출 세계 9위