이 옵션들은 필자가 쓰는 FreeBSD 서버에서 쉘 스크립트와 smartmontools 를 작성과 설치를 하였으므로 사용자가 알아서 수정하여 사용해야한다. (FreeBSD 서버라면 걍 복사 & 붙여넣기하면 다될꺼임)

– MySQL 스크립트

[root@yongbok ~]# vi /usr/local/etc/mrtg/mysql_count.sh
#!/bin/sh
a=`ps auxw | grep mysqld | grep -v grep | wc -l`
b=`netstat -an | grep mysql.sock | wc -l`

echo $a
echo $b

– HTTPD 스크립트

[root@yongbok ~]# vi /usr/local/etc/mrtg/mysql_count.sh
#!/bin/sh
a=`ps auxw | grep http | grep -v grep | wc -l`
b=`netstat -an | grep :80 | grep -v “0.0.0.0” | wc -l`

echo $a
echo $b

– HDD 스크립트

[root@yongbok ~]# vi /usr/local/etc/mrtg/hdd_temp.sh
#!/bin/sh
/usr/local/sbin/smartctl -A /dev/ad0|grep Temperature_Celsius|awk ‘{print $10}{print $10}’

위에서 생성한 스크립트들을 실행 권한을 준다.

[root@yongbok ~]# chmod 755 /usr/local/etc/mrtg/*.sh

– HDD 온도 측정을 위한 smartmontools 설치
하드디스크의 온도 설정하기 위해선 smartmontools 이라는 것을 설치해야함

[root@yongbok ~]# cd /usr/ports/sysutils/smartmontools && make install clean && rehash

MRTG 설정 파일에 아래 내용을 추가 해준다.

[root@yongbok ~]# vi /usr/local/etc/mrtg/ruo91.cfg

###  MySQL  ###
Target[mysql]: `/usr/local/etc/mrtg/mysql_count.sh`
WithPeak[mysql]: my
MaxBytes[mysql]: 100
Title[mysql]: mysql daemon & mysql session
Options[mysql]: gauge,integer,nopercent,growright
PNGTitle[mysql]: Number?
LegendI[mysql]: mysql daemon:
LegendO[mysql]: mysql session:
Legend1[mysql]: Number of mysql
Legend2[mysql]: Number of session
Legend3[mysql]: 5 Min Max Number of mysql
Legend4[mysql]: 5 Min Max Number of mysql session
ShortLegend[mysql]: 개
PageTop[mysql]: <H1>mysql daemon & session</H1>

###  httpd daemon & httpd session  ###
Target[http]: `/usr/local/etc/mrtg/http_count.sh`
WithPeak[http]: my
MaxBytes[http]: 100
Title[http]: httpd daemon & httpd session
Options[http]: gauge,integer,nopercent,growright
PNGTitle[http]: Number?
LegendI[http]: httpd daemon:
LegendO[http]: httpd session:
Legend1[http]: Number of httpd
Legend2[http]: Number of session
Legend3[http]: 5 Min Max Number of httpd
Legend4[http]: 5 Min Max Number of httpd session
ShortLegend[http]: 개
PageTop[http]: <H1>httpd daemon & session</H1>

### 하드디스크 온도(smartctl 사용) ###
Target[htemp]: `/usr/local/etc/mrtg/hdd_temp.sh`
MaxBytes[htemp]: 80
Options[htemp]: gauge, growright, absolute, integer, nopercent, noinfo
Unscaled[htemp]: dwmy
PNGTitle[htemp]: Temperature
ShortLegend[htemp]: deg.
LegendI[htemp]: TEMP&nbsp;
LegendO[htemp]: TEMP&nbsp;
Legend1[htemp]: HDD 온도
Legend2[htemp]: HDD 온도
Title[htemp]: HDD 온도
PageTop[htemp]: <H1>HDD 온도</H1>

MRTG 재시작

[root@yongbok ~]# ps -aux | grep mrtg
root   85838  0.0  1.0 12596 10848  ??  Is   12:24AM   0:25.29 /usr/local/bin/perl -w /usr/local/bin/mrtg /usr/local/etc/mrtg/ruo91.cfg
[root@yongbok ~]# kill -9 85838
[root@yongbok ~]# mrtg /usr/local/etc/mrtg/ruo91.cfg
Daemonizing MRTG …

index 페이지 생성

[root@yongbok ~]# indexmaker /usr/local/etc/mrtg/ruo91.cfg \
–output=/home/www/traffic/index.html –title=”Yongbok Traffic”

사용자 삽입 이미지