[덤] 리눅스용 MRTG

   조회 24814   추천 0    

일단 윈도우에 비하면 좀 복잡합니다.
일전엔 이게 간단한줄만 알았단......^^;;

올 봄쯤에 만들어 놓은 자료여서 아마도 센트 6 정도까진 적용 될듯합니다...


일단 윈도우에 비하면 좀 복잡합니다.
일전엔 이게 간단한줄만 알았단......^^;;

올 봄쯤에 만들어 놓은 자료여서 아마도 센트 6 정도까진 적용 될듯합니다...


1. 설치
# yum -y install net-snmp* mrtg*


2.사용자 디렉토리 설치
# useradd mrtg
# mkdir /home/mrtg/public_html
# mkdir /home/mrtg/conf


3. 설정
아파치 웹서버에 virtualhost 설정을 추가합니다.

<VirtualHost *:80>
 DocumentRoot "/home/mrtg/public_html"
 ServerName mrtg.도메인명
 ErrorLog "logs/mrtg.도메인명-error_log"
 CustomLog "logs/mrtg.도메인명-access_log" common
</VirtualHost>


아파치 데몬을 restart 하여 virtualhost 설정을 적용합니다.
# service httpd restart


그다음 아래 파일을 열고 내용을 입력합니다.
# vi /etc/snmp/snmpd.conf

com2sec local ip명 g_snmp
group ManagedGroup v1 local
group ManagedGroup v2c local
group ManagedGroup usm local
view all included .1 80
access ManagedGroup "" any noauth exact all all none

disk /
disk /data1


* 디스크는 2개로, 각각의 파티션은 /, /data1 으로 구성되었을때의 예입니다.
# vi /home/mrtg/conf/mrtg.cfg

EnableIPv6: no
WorkDir: /home/mrtg/public_html
Language: korean
Options[_]: bits,growright

LoadMIBs: /usr/share/snmp/mibs/UCD-SNMP-MIB.txt

Target[ip명_cpu]: ssCpuUser.0&ssCpuIdle.0:g_snmp@ip명
Optionsip명_cpu]: gauge,nopercent,growright
MaxBytes[ip명_cpu]: 100
Title[ip명_cpu]: dev1 - User vs Idle CPU Usage
Unscaled[ip명_cpu]: ywmd
ShortLegend[ip명_cpu]: %
YLegend[ip명_cpu]: CPU Utilization
Legend1[ip명_cpu]: User CPU in % (Load)
Legend2[ip명_cpu]: Idle CPU in % (Load)
Legend3[ip명_cpu]:
Legend4[ip명_cpu]:
LegendI[ip명_cpu]: User
LegendO[ip명_cpu]: Idle
PageTop[ip명_cpu]: <h1>CPU 사용량</h1><TABLE><TR><TD>호스트명:</TD> <TD>NEULWON</TD></TR><TR><TD>IP:</TD> <TD>ip명</TD></TR></TABLE>

Target[ip명_load]: laLoad.1&laLoad.2:g_snmp@ip명 * 100
Options[ip명_load]: gauge,integer,nopercent,growright
WithPeak[ip명_load]: dev1
MaxBytes[ip명_load]: 10000
Title[ip명_load]: dev1 - Load Average
YLegend[ip명_load]: Load Average
ShortLegend[ip명_load]:
Legend1[ip명_load]: Load average for 1 Min
Legend2[ip명_load]: Load average for 5 Min
Legend3[ip명_load]: Max load average for 1 Min
Legend4[ip명_load]: Max Load average for 5 Min
LegendI[ip명_load]: 1min:
LegendO[ip명_load]: 5min:
YTicsFactor[ip명_load]: 0.01
PageTop[ip명_load]: <h1>CPU 부하율</h1><TABLE><TR><TD>호스트명:</TD> <TD>NEULWON</TD></TR><TR><TD>IP</TD> <TD>ip명</TD></TR></TABLE>

Target[ip명_mem]: (memTotalReal.0&memTotalSwap.0:g_snmp@ip명 - memBuffer.0&memAvailSwap.0:g_snmp@ip명 - memCached.0&memIndex.0:g_snmp@ip명 - memAvailReal.0&memIndex.0:g_snmp@ip명) / memTotalReal.0&memTotalSwap.0:g_snmp@ip명 * 100
Options[ip명_mem]: nopercent,growright,gauge,noinfo
Title[ip명_mem]: Free Memory
MaxBytes[ip명_mem]: 100
kilo[ip명_mem]: 1024
YLegend[ip명_mem]: bytes
ShortLegend[ip명_mem]: %
Unscaled[ip명_mem] : ymwd
LegendI[ip명_mem]: Real Memory:
LegendO[ip명_mem]: Swap Memory:
Legend1[ip명_mem]: Free memory, not including swap, in bytes
PageTop[ip명_mem]: <h1>Memory 사용량</h1><TABLE><TR><TD>호스트명:</TD> <TD>NEULWON</TD></TR><TR><TD>IP</TD> <TD>ip명</TD></TR></TABLE>

Target[ip명_hdd1]: dskPercent.1&dskPercent.2:g_snmp@ip명

Title[ip명_hdd1]: Disk Partition Usage
MaxBytes[ip명_hdd1]: 100
ShortLegend[ip명_hdd1]: %
YLegend[ip명_hdd1]: Disk usage
LegendI[ip명_hdd1]: /
LegendO[ip명_hdd1]: /data1
Options[ip명_hdd1]: gauge,growright,nopercent
Unscaled[ip명_hdd1]: ymwd
PageTop[ip명_hdd1]: <H1>디스크 사용량</H1><TABLE><TR><TD>호스트명:</TD> <TD>NEULWON</TD></TR><TR><TD>IP:</TD> <TD>ip명</TD></TR><TR><TD>/</TD><TD> </TD></TR><TR><TD>/backup</TD><TD> </TD></TR></TABLE>


4. index 페이지 만들기
# indexmaker --title "NEULWON MRTG" --output /home/mrtg/public_html/index.html /home/mrtg/conf/mrtg.cfg

 
5. 스케쥴러 등록
아래 명령을 통해 mrtg 데이타를 생성합니다.
처음 명령을 내릴경우 경고메세지가 뜨지만, 이는 처음이라 데이타 파일이 없다는 뜻입니다.
몇번 더 실행하면 나타나지 않는것을 볼수 있습니다.
# /usr/bin/mrtg /home/mrtg/conf/mrtg.cfg

다음 index파일 생성시 

ERROR: Mrtg will most likely not work properly when the environment
       variable LANG is set to UTF-8. Please run mrtg in an environment
       where this is not the case. Try the following command to start

이문제는 아파치 언어셋 설정이 UTF-8로 되어있는 서버에서 나타는데 해결방법은 
서버를 EUC-KR 로 셋팅하던지 아니면 

/usr/bin/mrtg 를 열어서 

LANG 로 검색해 보면 언어셋을 체크해서 위의 오류를 뿜는 부분이 있다
이부분 주석처리해버리자 그럼 해결됨


지속적으로 5분마다 데이타 갱신이 되도록 crontab 에 등록합니다.
# crontab -e

mailto=""
*/5 * * * * /usr/bin/mrtg /home/mrtg/conf/mrtg.cfg --logging /var/log/mrtg.log
- by inoree.com -
짧은글 일수록 신중하게.
김상일 2014-07
쓰기 좋게 정리해주셔서 감사합니다.
정현태 2014-07
좋은 정보 감사드립니다.


PDS
제목Page 54/78
2014-05   5256073   정은준1
2015-12   1781020   백메가
2014-07   26975   김황중
2014-07   24791   맙소사
2014-07   52992   AKA지니
2014-07   59699   주영진영아빠
2014-07   60393   주영진영아빠
2014-06   109832   Nobeullang
2014-06   112166   박정길infoeyes
2014-06   98839   뮤노
2014-06   96599   정상백
2014-06   79751   가정선생
2014-06   81315   가정선생
2014-05   22048   회원K
2014-05   21950   뮤노
2014-05   30131   inoree
2014-05   36398   황진우
2014-05   40323   2CPU최주희
2014-05   42209   Qsup
2014-05   49234   서울l강한모
2014-05   43386   으뜨거
2014-04   16484   황진우