네트워크 트래픽 체크툴 Mrtg 설정
MRTG (Multi Router Traffic Grapher)
MRTG라는 Tool을 이용하면 자사의 네트웍 트랙픽 현황 뿐만 아니라 특정 서버의 Memory
현황이나 CPU 사용현황 등을 모니터링 할 수 있다. 이는 시스템 관리 측면에서 보면 보다
효율적으로 자사의 네트웍 및 시스템을 관리 할 수 있을 것이다.
1. MTRG의 특징
MRTG는 SNMP를 이용하여 트래픽 정보를 가져오는 가져오는 Perl script와 트래픽 정보를
우수한 그래픽으로 만들어주는 C 프로그램으로 이루어져 있다. 또한 MRTG는 일간, 주간,
월간 연간 트리팩 체크가 가능하며 Perl을 사용하기 때문에 보다 쉽게 사용자가 응용할 수
있는 장점이 있다.
2. MRTG 컴파일
[1] Source Download
1.1 Source를 다운로드한다. 최신 버전은 mrtg-2.5.4이며, 리눅스 동호회 자료실(47)번에서
받으실 수 있으며 mrtg 홈페이지인
http://ee-staff.ethz.ch/~oetiker/webtools/mrtg/mrtg.html에서 받을 수
있다.
1.2 시스템에 GD 라이브러리 및 Perl5.003이상의 버전이 설치되어 있지 않다면 다음의
사이트에서 GD라이브러리와 Perl5.003 이상의 버전을 다음로드 한다.
GD 라이브러리 : http://www.boutell.com/gd
Perl :http://www.perl.com/perl/info/software.html
[2] MRTG Compile
1.1 mrtg-2.5.4.a.tar.gz소스 파일을 압축을 풀면 mrtg-2.5.4a 디렉토리가 생성된다. 이
디렉토리안에 있는 Makefile을 자신의 시스템에 맞게 수정하여 준다. 대개 Perl의 위치와 GD
라이브러리가 설치되어 있는 디렉토리만 설정하여 주면 큰 무리가 없을 것이다.
다음은 Makefile 의 수정 될 부분이다.
#################################################################
# Makefile for mrtg …
#################################################################
# this is to fix IRIX who prefers csh
SHELL=/bin/sh
# GD_INCLUDE
GD_INCLUDE=/usr/local/lib/gd1.3
# GD_LIB
# The path to the gd graphics library: libgd.a
#GD_LIB=/usr/local/lib
GD_LIB=/usr/local/lib/gd1.3
# Where is perl 5 on this machine
# PERL=/usr/local/bin/perl
PERL=/usr/bin/perl
1.2 다음으로 rateup 실행 파일을 만들어 보자. 간단히 콘솔상에서 ‘make rateup’이라고
실행을 하면 된다.
1.3> 다음으로 make substitute를 실행하여 MRTG의 Perl Script에 시스템의 Perl실행
파일의
패쓰를 삽입한다.
1.4 MRTG의 웹 페이지를 생성할 디렉토리를 만든 후, 그 디렉토리에 mrtg*.gif화일들을 카피
한다.
# mkdir traffic
# cp mrtg*.gif traffic
1.5 MRTG관련 프로그램들을 MRTG의 실행 파일과 같은 디렉토리에 넣어 놓는다. 이
디렉토리는 어느 곳에 위치하여도 상관은 없지만 다음의 파일들은 반드시 존재하여야 한다.
BER.pm SNMP_Session.pm, mrtg, rateup.
1.6 mrtg.cfg-dist화일을 참조하여 자신의 mrtg-cfg화일을 만든다 mrtg.cfg-dist화일 내용을
이해하기 어렵다면 cfgmaker 를 이용하여 자신의 mrtg.cfg 화일을 만들 수 있다.
cfgmaker (community)@(router-host-name or IP Address)
예> cfgmake public@203.255.119.19
여기서 public은 라우터 snmp 지정 이름이며 203.255.119.19는 라우터 IP 주소이다.
1.7 이와 같은 작업을 아무런 에러 없이 수행하였다면 마지막으로 mrtg실행 파일을 이용하여
설정된 값의 내용들을 출력하여 보자.
#./mrtg /data/traffic/mrtg.cfg
mrtg의 실행이 정상적으로 완료하였다면 다음과 같은 파일들이 생성되었을 것이다.
203.255.119.19-day.gif
203.255.119.19-week.gif iserver
203.255..119.19-year.gif  iserver
203.255.119.19.html
이와 같은 파일들을 이용하여 Web 상으로 데이터를 출력하여 볼 수가 있다.
[3] conrtab 사용
이제 crontab이라는 Tool 을 이용하여 주기적으로 데이터를 업데이트 시켜보자.crontab에
항목을 등록시키는 방법은 각 유닉스마다 조금씩 틀리니 각 O/S의 man page를 이용하여
자신의 시스템에 맞게 corntab을 등록시켜 보자 . 참고로 다음은 linux에서 5분 단위로
데이터를 Up-date하는 내용이다.
# 0-59/5 * * * * /usr/bin/perl /usr/local/mrtg /data/traffic/network.cfg