티스토리 뷰

Application/Win32

Windows 에 MRTG 를 설치 해봅시다.

알 수 없는 사용자 2008. 3. 29. 15:14

출처 : http://www.apmsetup.com/tutorials.php?ct=15&tutid=29&uid=132#132

 

MRTG 다운로드 http://oss.oetiker.ch/mrtg/pub/?M=D

Array mrtg-2.17.3.zip

위 링크사이트에서 최신버전을 다운로드 하여도 되며 왼쪽에 파일을 받아도 됩니다


ActivePerl 다운로드 http://www.activestate.com/activeperl/downloads

MRTG Script 다운로드 http://www.apmsetup.com/files/mrtg_script.zip

Array mrtg_script.zip


준비물이 갖추어 졌으면 설치를 진행해 보도록 하겠습니다.

Array

일단 ActivePerl 을 기본적으로 C:Perl 디렉토리에 설치 합니다.
이제 MRTG를 설치 하기 위해서는 SNMP 서비스가 설치되어 있어야 합니다.
설치되어 있지 않다면

Array

Array

시작 -> 제어판 -> 프로그램 추가/제거 -> 구성 요소 추가/제거
를 실행하여
관리 및 모니터링 도구 -> 자세히 -> SNMP(단순 네트워크 관리 프로토콜)
을 체크 하고 확인을 클릭하여 SNMP 서비스를 설치 합니다.
설치가 완료 되면

Array

시작 -> 제어판 -> 관리도구 -> 서비스
를 클릭하여 SNMP Service 의 속성을 살펴 봅니다.

Array

SNMP Service 속성 -> 보안
에서 받아들인 커뮤니티 이름에 public 로 권한은 읽기 전용으로 추가 되어 있는지 확인해 주시고
만약 추가되어 있지 않다면 추가해 주시기 바랍니다.
이제 본격적으로 MRTG 를 설치해 보도록 하겠습니다.

Array

다운로드 받은 MRTG압축 파일을 C:MRTG 디렉토리로 압축을 해제해 주시기 바랍니다.

Array

그런다음 MRTG 에서 생성된 htm 파일들을 저장하는 디렉토리를 C:MRTGoutput 으로 만들어 줍니다.

Array

다운로드 받은 mrtg_script.zip 압축 파일을 해제 하여 모든 파일을 C:MRTGbin 디렉토리로 복사해 줍니다.

Array

이제 스크립트 중에 cfgmaker.cmd 를 실행 시킵니다.
만약 위의 이미지 처럼 나타나지 않고 서버를 찾을 수 없다던지 관련 메세지가 나타나면
SNMP 서비스가 설치되어있지 않거나 커뮤니티를 잘못 설정한 경우이니
다시 한번 확인해 주시기 바랍니다.
위의 명령이 정상적으로 잘 되었다면 C:MRTGbinmrtg.cfg 파일이 생성 되어 있을 것 입니다.
편집기로 열어 보면

# Created by
# C:MRTGbincfgmaker --ifref=descr --ifdesc=descr public@localhost

### Global Config Options

#  for UNIX
# WorkDir: /home/http/mrtg

#  or for NT
# WorkDir: c:mrtgdata

### Global Defaults

#  to get bits instead of bytes and graphs growing to the right
# Options[_]: growright, bits

EnableIPv6: no

######################################################################
# System: OKSTART2005
# Description: Hardware: x86 Family 15 Model 3 Stepping 4 AT/AT COMPATIBLE - Software: Windows 2000 Version 5.1 (Build 2600 Multiprocessor Free)
# Contact:
# Location:
######################################################################

### Interface 1 >> Descr: 'MS-TCP-Loopback-interface' | Name: ' | Ip: '127.0.0.1' | Eth: ' ###
### The following interface is commented out because:
### * it is a Software Loopback interface
#
# Target[localhost_MS_TCP_Loopback_interface]: MS TCP Loopback interface:public@localhost:
# SetEnv[localhost_MS_TCP_Loopback_interface]: MRTG_INT_IP="127.0.0.1" MRTG_INT_DESCR="MS-TCP-Loopback-interface"
# MaxBytes[localhost_MS_TCP_Loopback_interface]: 1250000
# Title[localhost_MS_TCP_Loopback_interface]: MS TCP Loopback interface -- OKSTART2005
# PageTop[localhost_MS_TCP_Loopback_interface]: <h1>MS TCP Loopback interface -- OKSTART2005</h1>
#         <div id="sysdetails">
#             <table>
#                 <tr>
#                     <td>System:</td>
#                     <td>OKSTART2005 in </td>
#                 </tr>
#                 <tr>
#                     <td>Maintainer:</td>
#                     <td></td>
#                 </tr>
#                 <tr>
#                     <td>Description:</td>
#                     <td>MS-TCP-Loopback-interface  </td>
#                 </tr>
#                 <tr>
#                     <td>ifType:</td>
#                     <td>softwareLoopback (24)</td>
#                 </tr>
#                 <tr>
#                     <td>ifName:</td>
#                     <td></td>
#                 </tr>
#                 <tr>
#                     <td>Max Speed:</td>
#                     <td>1250.0 kBytes/s</td>
#                 </tr>
#
#                 <tr>
#                     <td>Ip:</td>
#                     <td>127.0.0.1 (localhost)</td>
#                 </tr>
#
#             </table>
#         </div>

### Interface 65539 >> Descr: 'Marvell-Yukon-88E8001/8003/8010-PCI-Gigabit-Ethernet-Controller' | Name: ' | Ip: '219.252.174.66' | Eth: '00-0f-ea-63-62-e4' ###

Target[localhost_Marvell_Yukon_88E8001_8003_8010_PCI_Gigabit_Ethernet_Controller]: Marvell Yukon 88E8001/8003/8010 PCI Gigabit Ethernet Controller:public@localhost:
SetEnv[localhost_Marvell_Yukon_88E8001_8003_8010_PCI_Gigabit_Ethernet_Controller]: MRTG_INT_IP="219.252.174.66" MRTG_INT_DESCR="Marvell-Yukon-88E8001/8003/8010-PCI-Gigabit-Ethernet-Controller"
MaxBytes[localhost_Marvell_Yukon_88E8001_8003_8010_PCI_Gigabit_Ethernet_Controller]: 12500000
Title[localhost_Marvell_Yukon_88E8001_8003_8010_PCI_Gigabit_Ethernet_Controller]: Marvell Yukon 88E8001/8003/8010 PCI Gigabit Ethernet Controller -- OKSTART2005
PageTop[localhost_Marvell_Yukon_88E8001_8003_8010_PCI_Gigabit_Ethernet_Controller]: <h1>Marvell Yukon 88E8001/8003/8010 PCI Gigabit Ethernet Controller -- OKSTART2005</h1>
        <div id="sysdetails">
            <table>
                <tr>
                    <td>System:</td>
                    <td>OKSTART2005 in </td>
                </tr>
                <tr>
                    <td>Maintainer:</td>
                    <td></td>
                </tr>
                <tr>
                    <td>Description:</td>
                    <td>Marvell-Yukon-88E8001/8003/8010-PCI-Gigabit-Ethernet-Controller  </td>
                </tr>
                <tr>
                    <td>ifType:</td>
                    <td>ethernetCsmacd (6)</td>
                </tr>
                <tr>
                    <td>ifName:</td>
                    <td></td>
                </tr>
                <tr>
                    <td>Max Speed:</td>
                    <td>12.5 MBytes/s</td>
                </tr>

                <tr>
                    <td>Ip:</td>
                    <td>219.252.174.66 (okstart2005)</td>
                </tr>

            </table>
        </div>


 

위와 같은 설정을 보실 수 있습니다.

위의 설정중에서 주석들을 모두 삭제해 주시고 아래 처럼 작성해 주시기 바랍니다.

내용은 각각의 컴퓨터마다 다르므로 예를 동일하게 사용하시면 동작 되지 않습니다.

꼭 cfgmaker.cmd 로 생성된 파일을 수정해 주셔야 합니다.

<div align="left">WorkDir: C:MRTGoutput
    Options[_]: bits, growright
    Language: korean

    #RunAsDaemon: yes
    #Interval: 5

    EnableIPv6: no
    Target[eth0]: Marvell Yukon 88E8001/8003/8010 PCI Gigabit Ethernet Controller:public@localhost:
    SetEnv[eth0]: MRTG_INT_IP="219.252.174.66" MRTG_INT_DESCR="Marvell-Yukon-88E8001/8003/8010-PCI-Gigabit-Ethernet-Controller"
    MaxBytes[eth0]: 12500000
    Title[eth0]: eth0
    PageTop[eth0]: </div>
<h1 align="left">eth0</h1>
<div align="left">Extension[eth0]: htm
</div>

위와 같이 수정해 줍니다.

테스트를 하기 위해서 C:MRTGbin 디렉토리에 있는 mrtg.cmd 를 실행 합니다.

Array

Array

Array

위처럼 에러 메세지가 나타난것 처럼 보이지만 여러번 mrtg.cmd 를 실행하면 메세지가 없어 지는것을 보실 수 있습니다.

위 처럼 나타난다면 정상적으로 동작 하는 것 입니다.

에러 메세지가 나타난다면 mrtg.cfg 설정이 잘못된 경우이므로 다시 한번 확인해 주시거나

cfgmaker.cmd 부터 다시 실시해 주시기 바랍니다.

Array

Array

C:MRTGoutput 디렉토리에 eth0.htm 이 생성되었는지 다시 확인 합니다.

이제 index.htm 을 작성해 보도록 하겠습니다.

Array

C:MRTGbin 디렉토리에 있는 indexmaker.cmd 를 실행 합니다.

실행 한 다음 C:MRTGoutput 디렉토리에 index.htm 이 생성되었는지 다시 확인 합니다.

이제 모든 설치 설정이 마무리 되었습니다.

하지만 일일이 수동으로 실행할 수 없기 때문에

NT 서비스로 동작 될 수 있도록 설정해 보겠습니다.

일단 mrtg.cfg 를 편집기로 열으셔서

#RunAsDaemon: yes

#Interval: 5

위 처럼 주석처리 해놓은 부분의 주석을 해제해 주시기 바랍니다.

RunAsDaemon: yes

Interval: 5

이렇게 주석을 해제 하신 후 저장하여 주시고

C:MRTGbin 디렉토리에 있는 set_service.cmd 를 실행 합니다.

C:MRTGbin 디렉토리에 있는 mrtg_service.reg 파일을 더블 클릭하여 레지스트리에 저장합니다.

Array

Array

Array

시작 -> 제어판 -> 관리도구 -> 서비스

에서 MRTG 가 있는지 또

시작 -> 실행 -> regedit

를 실행시켜서

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMRTG

가 있는지도 확인하여 주시기 바랍니다.

이제 모두 마쳤습니다.

시작 -> 제어판 -> 관리도구 -> 서비스

에서 MRTG 를 실행해 주시기 바랍니다.

Array

Array

작업관리자 -> 프로세스

에 wperl.exe 가 있는지 확인 합니다.

만약 서비스가 시작 되었는데 wperl.exe 프로세스가 없다면 mrtg.cfg 에서 위의 두가지 설정에 주석을 제거 하지 안은경우 입니다.

다시 한번 확인해 주시기 바랍니다.

Array

이제 컴퓨터를 사용할때 MRTG 가 5분에 한번씩 갱신될 것 입니다.

감사 합니다.