강좌
클라우드/리눅스에 관한 강좌입니다.
네트워크 분류

트래픽관리를 위한 MRTG서버구축을 실무연구 2편

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

mrtg
1



트래픽관리를 위한 MRTG서버구축을 실무연구 2



작성자 : 리눅스포털 수퍼유저코리아(www.superuser.co.kr) 박성수



------- 전 체 목 차 ------
1. MRTG
?

2. MRTG의 다양한 용도

2-1. 네트웍모니터링

2-1-1. 일간그래프

2-1-2. 주간그래프

2-1-3. 월간그래프

2-1-4. 년간그래프

2-2. CPU 모니터링예

2-2-1. 일간 CPU사용량

2-2-2. 주간 CPU사용량

2-2-3. 월간그래프

2-2-4. 년간그래프

2-3. DISK모니터링예

2-3-1. 일간 DISK사용량

2-3-2. 주간 DISK사용량

2-3-3. 월간 DISK사용량

2-3-4. 년간 DISK사용량

2-4. MEMORY 모니터링예

2-4-1. 일간 MEMORY 사용량

2-4-2. 주간 MEMORY 사용량

2-4-3. 월간 MEMORY 사용량

2-4-4. 년간 MEMORY사용량

2-5. 스위치의 포트별 사용량 분석

3. MRTG운용을 위해서 필요한 것은?

3-1. 트래픽분석서버

3-2. 분석대상자원

3-3. 필요한 프로그램 및 툴들

3-4. 네트웍이 갖춰진 환경

4. SNMP?

5. MIB이란?

6. 리눅스로 구축하는 MRTG서버

7. MRTG트래픽서버 디렉토리구성도

7-1. MRTG 홈디렉토리 : /home/mrtg

7-2. MRTG 실행파일들 저장위치 : /home/mrtg/bin

7-3. MRTG Configuration 파일들의 저장위치 : /home/mrtg/conf

7-4. MRTG 실행결과 생성되는 HTML파일, LOG파일들의

8. MRTG를 이용한 트래픽사용량 분석

8-1. 서버트래픽분석 개론

8-2. Configuration file 만들기

8-3. cfg파일 분석

8-4. mrtg 초기실행하기

8-5. 결과확인 및 분석하기

8-6. 결과페이지 로딩시 암호인증걸기

8-7.cron 등록하기

9. MRTG를 이용한 다양한자원(CPU, DISK, MEMORY) 사용량 분석

9-1. 다양한 자원분석 사용량분석 개론

9-2. 관련 MIB 확인하기

9-3. Configuration file 만들기

9-4. cfg파일 분석

9-5. mrtg 초기실행과 웹페이지 생성확인

9-6. 웹브라우즈로 결과확인

9-7. 마무리 작업








7. MRTG트래픽서버 디렉토리구성도

 

MRTG와 그외 필요한 프로그램 유틸리티, 라이브러리등의 설치가 모두 되었으므로 이제 MRTG의 디렉토리구성도를 살펴보도록 하자.

MRTG의 디렉토리구성도란 MRTG에 관련된 다음의 파일들이 어디에 위치하게 되는가에 대한 디렉토리맵이라고 이해하기 바란다.

 

  • MRTG 홈디렉토리

  • MRTG 실행파일들 저장위치

  • MRTG Configuration 파일들의 저장위치

  • MRTG 실행결과 생성되는 HTML파일, LOG파일들의 저장위치

  • MRTG의 주기적인 실행시에 각 cfg파일들을 담고 있는 mrtg.sh파일의 위치

위의 디렉토리구성을 해보자.

 

필자의 경험으로 미루어 가장 적당하다고 생각되는 디렉토리구성이지만 똑같이 구성할 필요는 없다.

 

7-1. MRTG 홈디렉토리

 

MRTG 홈디렉토리란 mrtg에 관련된 모든 파일들이 존재하는 위치를 의미한다.

MRTG에 관한 모든 작업읍 mrtg라는 계정을 만들어서 작업하게하는 것이 가장 현명하다는 판단하에 필자는 mrtg라는 계정을 만들고 이 계정의 홈디렉토리를 생성하였다.  

이 위치가 /home/mrtg라는 위치이며 mrtg에 관련된 모든 파일들은 이 디렉토리이하에 존재하게 된다.

m46d4cfc3.png

예를 보면 /home/mrtg라는 디렉토리가 존재하며 bin, conf, www라는 디렉토리가 별도로 존재한다.

물론 이들 디렉토리는 직접 만들어 준 것이며 이들디렉토리의 용도와 저장내용은 다음과 같다.

  • bin 디렉토리 : mrtg관련 실행파일들 저장

  • conf 디렉토리 : cfg파일들 저장

  • www 디렉토리 : mrtg결과 생성되는 웹페이지 파일 저장

이들 디렉토리에 대한 설명은 다음 절에서 자세히 설명된다.

 

7-2. MRTG 실행파일들 저장위치

 

MRTG 에 관련된 실행파일들이 존재할 위치를 의미한다.

MRTG 실행파일들은 어떤 것들이 있을까?

MRTG실행파일이란 MRTG설치후의 bin 디렉토리이하에 생성되는 모든 실행파일들과 각 cfg파일들의 실행명령을 저장하는 mrtg.sh라는 파일이 존재할 위치를 의미하는 것이다.

102f9b8.png

/home/mrtg/bin 디렉토리는 mrtg와 관련한 디렉토리들이 존재하는 위치이며 mrtg.sh 파일은 직접 만든 파일이며, cfgmaker, indexmaker, mrtg, rateup 파일은 MRTG설치시에 생성된 실행파일들을 이 위치로 옮겨온 것이다.

  • cfgmaker : MRTG configuration파일(cfg파일)을 자동으로 생성해 주는 유틸리티

  • indexmaker : index파일을 자동으로 생성하기위한 유틸리티

  • mrtg : MRTG 실행파일, cron에 의해서 주기적으로 실행이 될 때 이 실행파일이 계속 실행되며 MRTG의 메인프로그램.

  • mrtg.sh : 필자가 만들어준 MRTG cfg파일들을 주기적으로 실행시켜주는 스크립트파일

  • rateup :

 

 

7-3. MRTG Configuration 파일들의 저장위치

MRTG를 이용하여 트래픽이나 다양한 자원들을 분석하여 모니터링할 경우에 여러개의 cfg파일을 만들 게 된다.

이들 cfg파일들을 보관한 디렉토리로서 /home/mrtg/conf를 사용하면 편리한 점이 많다.

, 이 디렉토리에는 MRTG에서 사용하는 모든 cfg파일들이 저장되며 간단히 그 예를 보면 다음과 같다.

7f830883.png

 

 

7-4. MRTG 실행결과 생성되는 HTML파일, LOG파일들의 저장위치

 

앞서도 설명드린 바와 같이 mrtg가 실행이 되고 나면 cfgWorkdir에서 지정한 위치에 결과파일들(html, png, log파일들)이 생성되게 된다.

이 위치로 /home/mrtg/www로 지정한 것이다.

물론 현재는 하나의 cfg파일만을 만들어서 실행한 결과를 보여준 것이라서 이 디렉토리의 서브디렉토리가 존재하질 않지만 만약 이 네트웍장비의 다른 자원(CPU, DISK, MEMORY)을 모니터링하여 분석한다면 이 디렉토리이하에 각 장비의 자원별로 디렉토리를 생성하는 것이 현명하다.

4df7522a.png

 

지금까지 설명한 디렉토리 구성도안은 필자의 견해이며 정해진 규칙이 없으므로 각자 나름대로 구성해보면 보다더 나은 구성안이 나올 수도 있다.

MRTG를 처음 설치했던 위치 즉, /usr/local/mrtg 이하의 디렉토리로 위와 같이 구성하는 것도 좋은 방법이다.

하지만, 이렇게 구성할 경우에는 mrtg라는 별도의 계정을 만들어서 이 계정에 모든 것을 관리하게하는 것이 힘들 게 된다.

어쨌든 디렉토리구성의 정답은 없으므로 여러분들 나름대로 구성해 보기 바란다.








8. MRTG를 이용한 트래픽사용량 분석

 

8-1. 서버트래픽분석 개론

MRTG에서 서버트래픽을 모니터링하기위해서는 cfg파일을 만들어야한다.

cfg파일을 만드는 방법은 두가기가 있다.

  • 첫째, cfgmaker로 만드는 방법

  • 둘째, 가장유사한 cfg파일 복사후 수정하는 방법

 

위의 두가지 방법모두 실무에서 사용되고 있는 방법이다.

굳이 구분해 본다면 첫 번째의 경우에는 MRTG서버를 처음구축한후에 이미 사용중인 cfg파일이 존재하지 않으므로 환경파일생성툴인 cfgmaker를 이용하여 생성하는 방법이다.

, MRTG 서버구축초기에 많이 사용되는 방법이며 이방법으로 생성된 cfg파일을 살펴보면 불필요한 내용이 많이 추가되어 있음을 알 수 있다.

 

 

두 번째 방법은 MRTG서버를 어느정도 사용하다 보면 생성된 cfg파일이 여러개 존재하게 된다.

새로운 서버의 트래픽사용량이나 자원들(CPU, DISK, MEMORY)의 사용량을 모니터링하기위해서는 새로운 cfg파일이 필요하게 된다.

이때에 이미 사용중인 cfg파일중 가장 유사한 파일을 복사한 후 그 내용을 조금만 수정해 주면 사용이 가능하다.

 

필자의 경험에 의한다면 MRTG를 처음 사용하는 분이라면 첫 번째 방법을 사용하고, MRTG를 사용중인 분이라면 두 번째 방법으로 cfg파일을 생성하는 것이 일반적이지 않나 생각한다.

다만 여기에서는 앞서 cfgmaker로 환경파일(cfg)을 생성하는 방법에 대해서 배웠으므로 그 사용법을 다시 언급한다는 것은 무의미하므로 두 번째의 방법으로 이미 cfg파일을 생성했다는 가정하에게 설명을 계속진행해 나갈 것이다.

뒤에 나오는 DISK, CPU, MEMORY의 사용량분석의 경우에도 모두 동일하게 적용이 된다.

 

8-2. Configuration file 만들기

현재 실습중인 대상장비는 리눅스 서버이다.

이 리눅스서버의 트래픽을 분석하기 위한 cfg파일을 직접 만들어서 보여주고 있다.

물론, 필자가 제시한 cfg파일 포맷을 그대로 사용할 경우에는 수정할 사항들이 있다.

그럼, cfg파일내의 각 항목들에 사용하는 옵션들에 대한 자세한 설명과 함께 수정사항들도 알아보도록 하자.

m297b7eaf.png

 

8-3. cfg파일 분석

WorkDir

m55801795.png

MRTG실행 결과후에 생성되는 웹페이지구성파일들(*.html, *.png, *.log, *.old)이 생성될 위치이다.

이 위치의 디렉토리가 존재하지 않는다면 MRTG실행시 에러가 발생하게된다.

WorkDir에서 지정한 디렉토리가 존재하지 않는다며 반드시 생성을 한후에 실행을 해야한다.

또한 이 디렉토리의 퍼미션(permission)은 반드시 웹서버 프로세스(대부분 nobody)가 읽을 수 있는 퍼미션이어야한다.

실행이 정상적으로 되었다면 후에 결과페이지를 볼 경우에 이 페이지를 로딩하여 보게된다.

, 현재 서버의 IP Address192.168.0.5라면 이 개인별 홈페이지를 로딩되도록 아파치의 httpd.conf파일에서 아래와 같은 설정이 되어 있어야한다.

123d7692.png

기본셋팅은 www가 아니라 public_html이지만 필자는 www로 변경하여사용을 하였다.

이렇게 설정을 하였다면 웹브라우즈의 주소창에서 확인이 가능하게된다.

http://192.168.0.5/~mrtg

혹은 이 서버에 개별적인 도메인이 www.superuser.co.kr 이라고 가정한다면 웹브라우즈에서 다음과 같이 결과를 확인할 수도 있다.

http://www.superuser.co.kr/~mrtg

만약 아파치의 httpd.conf에서 가상호스트 설정을 하여 여러개의 독립도메인이 가능하도록 다음과 같은 설정이 되어있다면 독립적인 도메인의 호출또한 가능하게된다.

m450d843d.png

이렇게 설정이 되어 있다면 다음과 같은 URL로도 결과를 확인할 수 있다.

http://traffic.superuser.co.kr

물론 얼마든지 다른 URL을 이용하여 다양한 로딩방법이 가능하지만 대부분 필자가 소개한 이런 방법등을 통해서 로딩을 하게된다<

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,034 명
  • 현재 강좌수 :  35,791 개
  • 현재 접속자 :  110 명