환경 :
모니터링 서버 : Windows 2000/2003 server
모니터링 대상 서버 : Windows XP / Windows 2000 Pro / Windows 2000/2003 Server
MRTG 를 설치하고 PHP 를 이용해서
트래픽 , CPU , 메모리 , 하드디스크 사용량을 표시하는 데까지 모든것을 적어볼까 합니다
저도 처음에 알아낼려고 이래저래 여러문서를 봐가면서 잘 안되어서 질문도 하여봤지만
답변이 재대로 이루어지는곳도 없고 해서 안타까웠던적이 있습니다
제가 아는데까지 전부 적어볼까 합니다 제가 이것저것 해보면서 맞춰본것이라 CID 값은
좀 틀릴 수 도 있습니다 그래도 적어도 참고는 될듯해서 써봅니다
일단 제가 MRTG 를 활용한 사이트페이지 입니다
[위에 그림은 클릭하시면 크게 보입니다]
위에 그래프를 보시면 일단 [정상],[비정상] 의 상태가 나타나고 타이틀이 나타납니다
그리고 5/100% 를 보면 CPU 사용량이 나타나고 차례대로 메모리사용량 C / D / E 하드디스크 사용량도
퍼센트로 나타나게 됩니다 그리고 일정치 이상 수치가 높아졌을때 노란색 음영으로 경고를 한뒤
수치가 너무 높을때는 붉은색 음영으로 위험을 알리도록 해봤습니다
그리고 아래부분은 조금 아시는분들은 많이 보셨을 트래픽 그래프입니다
보통은 cfgmaker 로 cfg 파일을 생성하면 아래쪽에 트래픽그래프만 나타나게 됩니다 근데 저는
CPU 사용량과 그리고 네트워크상태 , 메모리사용량(%), 하드디스크사용량(%) 를
넣어본것이지요 좀더 꾸민다면 하드디스크용량을 일일이 기입을 해줘야하겠지만 정확히 몇 Mb 를 사용중인지도
나타낼 수 는 있습니다
그리고 CPU 가 2개이상일때도 다나타낼 수 도 있구요 그래프 색도 다르게 나타낼 수 있습니다
제경우도 더 꾸며야하고 몇가지 손봐야하는데 손을 못보고 있네요 요즘은 실시간으로 서버상태를
보는 프로그램도 꾀 많으니까요
WorkDir: D:\Webservice\mrtg\192.168.0.3 WorkDir 은 cfg 파일을 실행하면 아래쪽에 설정한 이름으로 jpg 파일이 생성되게 되는데 그것이 만들어질 폴더를 지정합니다 각 서버마다 따로 지정해둬야 나중에 편집이나 응용할때도 편하게 됩니다 (뭐 소스에서 커버되지만요)
EnableIPv6: no IPv6 을 활성화할건지 묻는겁니다 보통은 no 이죠
language:korean 언어설정입니다 korean 으로 두면됩니다
Refresh:300 리플래쉬 타이밍인데요 300은 5분을 말합니다 단위 (초/sec)
Options[traffic]:bits,growright Option 은 옵션부분을 말하며 [] 대괄호 안에 있는것은 목록이름을 뜻 합니다 traffic 목록이름에 대한 옵션이라고 보면 되겠네요 bits 는 비트단위로 growright 는 오른쪽에서 그래프가 생성되도록 한다는 뜻입니다 자세한 옵션은 맨위에 참조주소에[mrtg] 가보시면 자세히 더 나옵니다
XSize[_]: 500 XSize 는 jpg 파일생성시 Width 를 설정하는 부분 이며 [] 대괄호안의 _ 는 모든 목록을 뜻합니다 즉 모든 목록의 그림생성파일의 Width 를 500 으로 하겠다는 뜻이지요
YSize[_]: 100 모든 항목의 height 를 100 으로 하겠다는 뜻입니다
# Traffic 에 대한 항목 설명
Target[traffic]: 16777219:snmpid@192.168.0.3: Target 은 말그대로 대상을지정하는부분입니다 Target[traffic] 라고 하면 traffic 라는 항목이 생성되며 그림파일도 위에 설정한 WorkDir: 에 traffic.jpg 라고 생성이 되게 됩니다 16777219는 getif 를 통해서 얻은 모니터링 대상 서버의 랜카드 CID 값이며 snmpid 는 모니터링 대상 서버의 SNMP 서비스의 커뮤니티 ID 를 말합니다 192.168.0.3 은 모니터링 대상 서버의 IP 를 뜻하죠 형식을 적어보자면 Target[항목]: CID:SNMPID@Server IP: 가 되지요 SetEnv[traffic]: MRTG_INT_IP="192.168.0.3" MRTG_INT_DESCR="" 이부분은 traffic 항목에 대한 페이지가 나타날때 뿌려지는부분을 적는곳입니다 설명을 더 추가해도 됩니다 모니터링 대상 서버 IP 는 192.168.0.3 이라고 뿌려지게 해놨고 설명부분은 비어있군요 MRTG_INT_DESCR="" 의 "" 부분안에 설명글을 적어넣으면 설명글이 나타나게 됩니다
MaxBytes[traffic]: 104857600 MaxBytes 는 항목에 대한 최대 수치를 적는 곳입니다 제가 100메가 회선이 꽂혔다고 했으니 100 * 1024 * 1024 = 104857600 byte 를 적어줍니다 10 메가 회선이라면 10 * 1024 * 1024 = 10485760 을 적어주면되겠지요
Title[traffic]: Traffic Analysis for 16777219 -- hati 이부분은 타이틀을 적는부분입니다 저는 귀찮아서 재대로 적지를 않앗네요 ㅡㅡ;; Traffic Analysis for 16777219 -- hati 이부분을 지우고 타이틀을 멋지게 적어주시면 나중에 MRTG 그래프가 나타나고 그 그림을 클릭할때 세부페이지에 이부분이 멋지게 나타날겁니다 귀찮으시면 대충 적으셔도 되구요 ;
YLegend[traffic]: Traffic 이부분은 그래프의 Y 항목에 대한 이름입니다 일단 네트워크 트래픽 관련된부분이니 Traffic 라고 적어놓죠
XSize[traffic]: 500 traffic 항목에 대한 그림 width 사이즈를 500으로 하겠다는 뜻입니다 다만 위에서 XSize[_] : 500 으로 해서 모든 항목의 그림 width 를 500으로 고정시켰는데요 사실 이부분은 주석해도 상관은 없지만 만약에 모든 항목은 500으로 하고 Traffic 는 600 으로 하고싶다면 따로 설정해주면 따로 설정이 됩니다
YSize[traffic]: 100 traffic 항목에 대한 그림 height 사이즈 설정
PageTop[traffic]:
Traffic Analysis for
페이지 상단에 나타날 부분에 대해서 적는부분입니다 쭉 길게 적어도 테그가 다 먹힙니다 다만 저는 이부분 별로 필요없기에 지워버렸습니다 딱한줄만 대충 적어놨네요 Traffic Analysis for 트래픽분석 해놧는데 뒤에 뭔가 더 적어야할거같은데 귀찮아서 안적었습니다
사실 서버마다 cfg 파일을 만들어야하니 서버대수가 많아지면 이부분 일일이 적기는 좀 그렇습니다 뭐 능력되시는분은 기입을 하셔도 ....
이부분 한줄입니다 너무 길어서 짤리네요 이단 OID&OID@SNMPID@서버IP 순으로 적어줘야합니다 OID 는 2개를 적어서 꼭 쌍으로 만들어야 합니다 한개만 적으면 안되네요 1개만 체크할거라면 같은걸 두번 적어주면 됩니다
숫자 길게 적힌것이 이 서버의 CPU 에 대한 OID 값입니다 5분안쪽에 CPU 로드된 양을 나타내지요 항목이름은 제가 cpu.1 로 해놧습니다 다음에 cpu.2 가 생길지도 몰라서 저렇게 만들어 둔거랍니다 이름은 사람이 짓기 나름입니다
MaxBytes[cpu.1]: 100 cpu 항목에 대한 최대수치를 적는곳인데요 cpu 의 퍼센트를 적어야하니 최대치는 100 이겠죠 100% 를 뜻합니다
Title[cpu.1]: CPU used 타이틀 지정하는부분인데여 CPU used 라고 적어보겠습니다
PageTop[cpu.1]:
CPU used %
페이지 탑부분에 나타날 부분입니다
Unscaled[cpu.1]: ymwd 이부분은 자세히는 기억안나지만 y는 년단위 m은 월단위 w 는 뭐시기 d는 일단위로 그래프를 나타내겠 다는 뜻입니다 년단위 그래프가 필요없다면 y 를 지우면 되지요 근데 다적어두는게 나중에 1년지나서 트래픽 분석할때도 용의 합니다
ShortLegend[cpu.1]: % 단위를 적는곳인데요 %로 나타내야하니 % 라고 적습니다
XSize[cpu.1]: 500
YSize[cpu.1]: 100 이부분은 아시겠죠 cpu.1 에 대한 width height 설정부분입니다
YLegend[cpu.1]: CPU used 그래프 Y 항목에 항목이름입니다
Legend1[cpu.1]: CPU used
Legend2[cpu.1]:
Legend3[cpu.1]:
Legend4[cpu.1]:
LegendI[cpu.1]: CPU used1
LegendO[cpu.1]:
Colours[cpu.1]: VIOLET#4682b4,GREEN#ffffff,BLUE#0000ff,GRAY#AAAAAA 이부분은 그래프의 실선이나 색칠한 그래프에 색을 변경하는부분입니다 그래프가 많아지면 서로 색이 섞여서 안보일수도 있으니 적절하게 색을 배치하면 됩니다
Options[cpu.1]: growright,gauge 그래프를 나타낼 옵션인데요 growright 는 오른쪽에서 나타나게 하는것이고 gauge 는 까먹었네요 나중에 적겠습니다 ;
#kilo[cpu.1]: 1024