sar(System Activity Reporter)은 리눅스에서 시스템 성능을 모니터링하는 강력한 명령어입니다. CPU, 메모리, 네트워크, 디스크 I/O 등 시스템 자원에 대한 다양한 통계를 주기적으로 수집하고, 기록된 데이터를 나중에 분석할 수 있게 해줍니다. sar 명령어는 sysstat 패키지에 포함되어 있으며, 서버 성능을 모니터링하고 이슈를 분석할 때 매우 유용합니다.
sar 설치하기
일부 리눅스 배포판에서는 sar 명령어가 기본적으로 설치되어 있지 않기 때문에 sysstat 패키지를 설치해야 합니다.
Debian/Ubuntu 계열:
user@linux:~$ sudo apt install sysstat
RHEL/CentOS 계열:
user@linux:~$ sudo yum install sysstat
sar 기본 사용법
sar 명령어의 기본 문법은 다음과 같습니다:
sar [옵션] [간격] [반복 횟수]
- 간격: 통계를 수집하는 시간 간격(초 단위)
- 반복 횟수: 통계를 출력할 횟수
예를 들어, 5초 간격으로 3번 데이터를 출력하려면 다음과 같이 사용할 수 있습니다:
user@linux:~$ sar 5 3
출력 예시는 다음과 같습니다:
Linux 5.4.0-89-generic (linux) 10/18/2024 _x86_64_ (4 CPU)
11:32:15 AM CPU %user %nice %system %iowait %steal %idle
11:32:20 AM all 1.22 0.00 0.65 0.01 0.00 98.12
11:32:25 AM all 1.30 0.00 0.70 0.02 0.00 98.00
11:32:30 AM all 1.18 0.00 0.60 0.01 0.00 98.21
sar 명령어의 주요 옵션
sar 명령어는 다양한 옵션을 제공하여 각 시스템 자원에 대해 구체적인 통계를 확인할 수 있습니다. 여기서 자주 사용되는 몇 가지 주요 옵션을 소개합니다:
- CPU 사용량 확인: sar -u
user@linux:~$ sar -u 5 3
출력 :
Linux 5.4.0-89-generic (linux) 10/18/2024 _x86_64_ (4 CPU)
11:33:10 AM CPU %user %nice %system %iowait %steal %idle
11:33:15 AM all 1.10 0.00 0.50 0.01 0.00 98.39
11:33:20 AM all 1.15 0.00 0.55 0.02 0.00 98.28
%user는 사용자 모드에서의 CPU 사용률을 나타내며, %system은 시스템 모드에서의 CPU 사용률을 나타냅니다.
- 메모리 사용량 확인: sar -r
user@linux:~$ sar -r 5 3
출력:
11:34:10 AM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit
11:34:15 AM 402576 609500 60.22 11044 259472 320900
11:34:20 AM 401348 610800 60.35 11200 260000 321000
이 결과는 kbmemfree와 kbmemused 값을 통해 시스템의 메모리 사용 상태를 보여줍니다.
- 네트워크 통계 확인: sar -n DEV
user@linux:~$ sar -n DEV 5 3
출력:
11:35:10 AM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
11:35:15 AM ens33 12.00 10.00 0.80 0.60 0.00 0.00 0.00
11:35:20 AM ens33 15.00 12.00 1.00 0.90 0.00 0.00 0.00
네트워크 인터페이스(ens33)의 패킷 전송 및 수신 상태를 모니터링할 수 있습니다.
sar 로그 파일 분석
sar는 실시간 모니터링뿐만 아니라 기록된 데이터를 기반으로 이전 시간의 시스템 성능도 분석할 수 있습니다. 기본적으로 /var/log/sysstat 디렉터리에 로그 파일이 저장되며, 특정 시간의 데이터를 확인할 수 있습니다:
user@linux:~$ sar -f /var/log/sysstat/sa10
이 명령은 10일 전의 성능 데이터를 출력합니다. 특정 날짜에 성능 문제가 발생했을 때 해당 로그 파일을 통해 원인을 분석할 수 있습니다.
sar의 장점
- 시스템 자원 사용량을 전반적으로 모니터링하고, 실시간 또는 기록된 데이터를 통해 성능 분석을 수행할 수 있습니다.
- CPU, 메모리, 네트워크, I/O 등 다양한 자원에 대해 세부적인 통계를 제공하여 서버 관리 및 문제 해결에 유용합니다.
- 기록된 데이터 분석을 통해 장기적인 시스템 성능 변화를 추적할 수 있습니다.
참고사이트
'Linux' 카테고리의 다른 글
[리눅스] resize2fs 명령어 완벽 가이드 사용법(파일 시스템 크기 변경) (0) | 2024.10.21 |
---|---|
[리눅스] badblocks 명령어 완벽 가이드 사용법(디스크 불량 섹터 검사) (0) | 2024.10.21 |
[리눅스] tune2fs 명령어 완벽 가이드 사용법(파일 시스템 튜닝) (0) | 2024.10.20 |
[리눅스] uptime 명령어 완벽 가이드 사용법(시스템 부하 확인) (0) | 2024.10.20 |
[리눅스] vmstat 명령어 완벽 가이드 사용법(시스템 성능 통계 확인) (0) | 2024.10.19 |
[리눅스] iptables 명령어 완벽 가이드 사용법(방화벽 설정) (0) | 2024.10.19 |
[리눅스] netcat 명령어 완벽 가이드 사용법(네트워크 디버깅) (0) | 2024.10.19 |
[리눅스] strace 명령어 완벽 가이드 사용법(프로세스 추적) (0) | 2024.10.19 |