728x90
반응형

설치

 epel로부터 인스톨.

# yum install --enablerepo=epel munin munin-cgi

설정

여기에서는 OS표준 httpd를 사양한 디렉토리 구성을 전제로 하고 있습니다.DocumentRoot등 각 디렉토리 구성이 다른 경우는 필요에 따라서 변경합니다.

- # cgitmpdir @@CGITMPDIR@@
+ cgitmpdir /var/lib/munin/cgi-tmp
 
- graph_strategy cron
+ graph_strategy cgi
 
- #cgiurl_graph /munin-cgi/munin-cgi-graph
+ cgiurl_graph /munin-cgi/munin-cgi-graph
 
- #max_processes 16
+ max_processes 64

 

graph_strategy cron이라고 cron수행 시(디폴트 5분 간격)를 그래프의 생성까지 하지만 node수가 많아지면 시간이 걸리고 다음 실행에 맞지 않다. 락이 걸려서 문제는 없지만, 10분 이상 전의 데이터가 표시된다.
cgi로 하면 데이터 엑세스가 있었을 때 동적으로 생성된다.단, 그래프의 표시시에 생성되므로 완료까지 약간 기다려야 한다.노드 수가 많을 때는 이쪽이 된다.
max_processes munin-update실행 시 병렬 수의 지정.CPU의 코어 개수에 여유가 있다면 높게 설정하면 좋다.munin-html의 실행 수에는 영향을 주지 않는다.
728x90
  • max_graph_jobs, munin_cgi_graph_jobs의 값은 변경해도 병렬 수에 변화가 없어서 의미가 있는지 불명(ver2.0.8).
  • html_strategy는 CGI을 지정하면 그래프의 zoom기능의 표시에 대한 링크가 잘 갱신되지 않아서 cron상태로 있다.
    수정되고 정상 동작하고 있었으므로 cgi로 설정.

FastCGI의 설정

apache가상 호스트의 설정으로서 이하를 추가.
기본적으로 설치되는 munin.conf와 munin-cgi.conf는 .bak등에 rename하고 읽지 않도록 한다

  • /etc/httpd/conf.d/munin-0.conf
<VirtualHost *:80>
    ServerAdmin  infra@naver.com
    ServerName   munin-0.naver.com
    DocumentRoot /var/www/munin-0
 
    # 액세스는 기록하지 않는다.
    #ErrorLog  "|logger -p local1.info -t error_munin-0"
    ErrorLog  logs/munin-0/error.log
    CustomLog logs/munin-0/access.log combined_plus env=!no_log
    CustomLog logs/munin-0/fcgi_access.log combined_plus env=!no_log
 
    # Rewrites
    RewriteEngine On
 
    # Static content in /static
    RewriteRule ^/favicon.ico /var/www/html/munin/static/favicon.ico [L]
    RewriteRule ^/static/(.*) /var/www/html/munin/static/$1          [L]
 
    # workaround for some static content
    RewriteRule /favicon.ico /var/www/html/munin/static/favicon.ico [L]
    RewriteRule /static/(.*) /var/www/html/munin/static/$1          [L]
 
    # HTML
    RewriteCond %{REQUEST_URI} .html$ [or]
    RewriteCond %{REQUEST_URI} =/
    RewriteRule ^/(.*)          /var/www/cgi-bin/munin-cgi-html/$1 [L]
 
    # Images
    # - remove path to munin-cgi-graph, if present
    RewriteRule ^/munin-cgi/munin-cgi-graph/(.*) /$1
 
    RewriteCond %{REQUEST_URI} .png$
    RewriteRule ^/(.*) /var/www/cgi-bin/munin-cgi-graph/$1 [L]
 
    ScriptAlias /munin-cgi/munin-cgi-graph /var/www/cgi-bin/munin-cgi-graph
 
    # DocumentRoot 설정
    <Directory /var/htdocs/munin-0>
        # 접근 제어
        Order allow,deny
        Allow from env=IP_COCONE
        Allow from env=IP_LOCAL
        Allow from env=IP_SERVER
    </Directory>
 
    <Directory /var/www/cgi-bin>
        Options +ExecCGI
        <IfModule mod_fcgid.c>
            SetHandler fcgid-script
        </IfModule>
        <IfModule !mod_fcgid.c>
            SetHandler cgi-script
        </IfModule>
        # 접근 제어
        Order allow,deny
        Allow from env=IP_COCONE
        Allow from env=IP_LOCAL
        Allow from env=IP_SERVER
    </Directory>
 
    # 캐시 설정
    <IfModule mod_expires.c>
        ExpiresActive On
        ExpiresDefault M310
    </IfModule>
</VirtualHost>

권한 변경

# chown apache:apache /var/lib/munin/cgi-tmp/

logrotate의 설정

  • /etc/logrotate.d/munin에 추가
/var/log/munin/munin-cgi-*.log {
         daily
         missingok
         rotate 7
         compress
         notifempty
         create 640 apache apache
}

확인

체크는 cron에서 움직이고 있지만 수동으로 동작 확인하는 경우는 아래의 명령으로 가능. munin user로 명령을 실행할 필요가 있다.

# sudo -u munin /usr/bin/munin-cron

동작 체크, 퍼미션 검사 등에 대한 스크립트도 있다.

# /usr/bin/munin-check
728x90
300x250

'IT > Munin' 카테고리의 다른 글

Munin 플러그인 설정  (0) 2021.07.29
Connections-through-firewall 유효화  (0) 2021.07.29
Munin 노드 설치 및 구성  (0) 2021.07.07
munin.conf  (0) 2021.07.07
Munin에서 Plugins사용시 /tmp속 로그를 찾지 못하는 이슈  (0) 2021.07.01

+ Recent posts