sar는 오래된 시스템 퍼포먼스 모니터링(이라기보다 리포팅) 툴로써 대부분의 리눅스 배포판과 상용 유닉스에서 사용이 가능합니다. 그런데 고전적인 툴이라 리포트의 모양새가 영 보기 편하지 않습니다.
이런 문제를 보완하기 위해 ksar라는 프로그램이 있습니다. 이 프로그램은 자바 기반으로 만들어진 sar의 GUI 프론트 엔드입니다. GUI이므로 그래픽 기반의 리포팅을 볼 수 있어 편리합니다. 또한 덤으로 pdf 같은 형식으로도 추출이 가능합니다.
이 글은 ksar를 소개하는 글로 sar에 대한 자세한 사용법은 다루지 않습니다. ksar는 sar의 프론트 엔드이므로 먼저 대상 서버에 sar를 (없다면)설치해야 합니다. sar는 대부분의 리눅스 배포판에서 sysstat이라는 이름의 패키지에 포함되어 있습니다.
sar는 일반적으로 cron을 통해 정기적으로 실행되어 시스템의 데이터를 수집합니다. sar를 설치하면 일반적으로 /etc/cron.d/sysstat이나 그와 유사한 이름의 파일이 생깁니다. 이 파일의 내용은 대략 아래와 같거나 비슷합니다.(아래는 CentOS 기준)
# run system activity accounting tool every 10 minutes위에 따르면 sar는 매 10분마다 실행되어 시스템의 상태를 바이너리 스넵샷으로 생성하며 매일 23:53에 일일 요약 보고서를 작성합니다. 생성된 일일 보고서와 바이너리 데이터베이스는 /var/log/sa(CentOS)나 /var/log/sysstat(데비안, 우분투)에 저장됩니다. 디폴트로 최대 한 달 분량의 데이터를 보관합니다.
*/10 * * * * root /usr/lib/sa/sa1 1 1
# generate a daily summary of process accounting at 23:53
53 23 * * * root /usr/lib/sa/sa2 -A
대충 sar에 대한 내용은 여기까지입니다. 이렇게 sar가 돌고 있는 상태에서 ksar를 이용하면 GUI를 통해 보기 좋은 형태로 sar의 리포트를 볼 수 있습니다. 중요한 점은 ksar를 서버에서 실행할 필요가 없다는 겁니다. 이게 아니었으면 소개도 안 했을 겁니다. 어차피 서버에 GUI 환경을 돌리는 일이 많지 않으니까요.
먼저 여기서 ksar를 받습니다. 이 프로그램은 자바 기반이므로 당연히 자바도 필요합니다. 없다면 자바 사이트에서 JRE를 다운받아 설치합시다. 이제 실행하면 아래처럼 썰렁한 창이 하나 뜹니다.

생긴 거 참 썰렁합니다.

아래는 ksar의 일부 모습들입니다.

하루 동안의 CPU 로드

하루 동안의 메모리 사용률

하루 동안의 페이징 활동 정보