Munin 은 트래픽 분석 툴이며 RRDTool 를 이용하여 그래프를 그려 보여줍니다.

Munin 데모
http://munin.ping.uio.no/
http://munin.ping.uio.no/ping.uio.no/rossum.ping.uio.no.html
사용자 삽입 이미지
사용자 삽입 이미지

- Munin 설치
[root@yongbok ~]# pkg_add -r munin-main
You need a group "munin".
Would you like me to create it [y]? y
Done.
You need a user "munin".
Would you like me to create it [y]? y
Done.
[root@yongbok ~]# pkg_add -r munin-node

- Munin 설정

Munin-node 를 서비스에 등록 해줍니다.
[root@yongbok ~]# echo 'munin_node_enable="YES"' >> /etc/rc.conf

설정 파일을 생성 해줍니다.
[root@yongbok ~]# cd /usr/local/etc/munin
[root@yongbok ~]# cp munin.conf.sample munin.conf
[root@yongbok ~]# ee munin.conf
# 기록이 저장될 디렉토리 지정
dbdir   /usr/local/var/munin
htmldir    /usr/local/www/munin
logdir    /var/log/munin-main
rundir  /var/run/munin

# HTML 템플릿 디렉토리 지정
tmpldir   /usr/local/etc/munin/templates

# 사용할 노드를 추가 해줍니다.
[ruo91]
    address 127.0.0.1
    use_node_name yes
[root@yongbok ~]# cp munin-node.conf.sample munin-node.conf
[root@yongbok ~]# ee munin-node.conf
# 로그 설정
log_level 4
log_file /var/log/munin-node.log
pid_file /var/run/munin/munin-node.pid

background 1
setseid 1

user root
group wheel
setsid yes

# 정규식 파일 무시 (Regexps for files to ignore)
ignore_file ~$
ignore_file \.bak$
ignore_file %$
ignore_file \.dpkg-(tmp|new|old|dist)$
ignore_file \.rpm(save|new)$
ignore_file \.pod$

# A list of addresses that are allowed to connect.  This must be a
# regular expression, due to brain damage in Net::Server, which
# doesn't understand CIDR-style network notation.  You may repeat
# the allow line as many times as you'd like

allow ^127\.0\.0\.1$

# IP 주소 입력
host 127.0.0.1

# 포트 지정
port 4949
 
Munin 에 사용할 플러그인을 링크 또는 복사 해줍니다.
플러그인 디렉토리 : /usr/local/share/munin/plugins
사용할 플러그인 디렉토리 : /usr/local/etc/munin/plugins/
[root@yongbok ~]# ln -s /usr/local/share/munin/plugins/apache_* /usr/local/etc/munin/plugins/
[root@yongbok ~]# ln -s /usr/local/share/munin/plugins/mysql_* /usr/local/etc/munin/plugins/
[root@yongbok ~]# ln -s /usr/local/share/munin/plugins/cpu /usr/local/etc/munin/plugins/
[root@yongbok ~]# ln -s /usr/local/share/munin/plugins/load /usr/local/etc/munin/plugins/
[root@yongbok ~]# ln -s /usr/local/share/munin/plugins/memory /usr/local/etc/munin/plugins/
[root@yongbok ~]# ln -s /usr/local/share/munin/plugins/named /usr/local/etc/munin/plugins/
[root@yongbok ~]# ln -s /usr/local/share/munin/plugins/proccess /usr/local/etc/munin/plugins/
[root@yongbok ~]# ln -s /usr/local/share/munin/plugins/swap /usr/local/etc/munin/plugins/

아파치 플러그인을 사용시 httpd.conf 설정 파일에 server-status 을 추가 해줍니다.
[root@yongbok ~]# ee /usr/local/apache2/conf/httpd.conf
ExtendedStatus On
<Location /server-status>
    SetHandler server-status
    Order deny,allow
    Deny from all
    Allow from 127.0.0.1
    Allow from 192.168.0.2
</Location>
[root@yongbok ~]# /usr/local/apache2/bin/apachectl restart

MySQL 플러그인 사용시 루트로 접근 가능하도록 해줘야 하기 때문에 아래 설정 파일을 수정 해줍니다.
[root@yongbok ~]# cd /usr/local/etc/munin/plugin-conf.d
[root@yongbok ~]# cp plugins.conf.sample plugins.conf
[root@yongbok ~]# ee plugins.conf
[mysql*]
user root
group wheel
env.mysqladmin /usr/local/bin/mysqladmin
env.mysqlshow /usr/local/bin/mysqlshow
env.mysqlopts -u root -p123456

Munin 을 시작합니다.
[root@yongbok ~]# /usr/local/etc/rc.d/munin-node.sh restart
Starting munin_node.

Doc
http://munin.projects.linpro.no/wiki/Documentation
2010/02/20 03:47 2010/02/20 03:47

Trackback Address >> http://www.yongbok.net/blog/trackback/122