2013-09-05 3 views
1
  • 에 CentOS 2.0.17-1
  • php54 (PHP-FPM)
  • 의 nginx 1.2.6 -1

'epel'repo를 통해 munin을 설정하고 땜질 후에 여러 노드로 작업하게했습니다. 그러나 어떤 그래프에서도 그래프 줌이 작동하지 않았습니다. 나는 HTML에서 * _strategy 모드를 HTML에서 cgi로 변경하여 온라인에서 찾은 제안에 따라 끝냈다. - 그래도 그래프가 업데이트되지 않고 (cgi가 작동하지 않아서) 줌이 여전히 손상되었다.Munin 동적 그래프 크게 (dynazoom) 작동하지 (CentOS6, Nginx에, PHP-FPM) 6.3</li> <li>munin

내가 온라인으로 찾을 수있는 가이드 (공무원 : http://munin-monitoring.org/wiki/CgiHowto2)는 spawnfcgi (예전 CentOS5 서버에서 사용했던)를 사용하고 이에 대한 특정 인스턴스를 생성하는 것을 참조합니다. 그러나, 나는이 서버에서 spawnfcgi가 아닌 php-fpm을 사용하여이 작업에 적응하는 데 문제가 있습니다.

작동하지 않기 때문에 그래프가 '확대/축소'화면에로드되지 않고 끊어진 이미지 링크 만 표시된다는 것을 의미합니다. 의 nginx 오류 로그 보여줍니다 여기에

[16:42:21]$ cat /etc/munin/munin.conf | sed -e '/^#/d' -e '/^$/d' 
htmldir /usr/share/nginx/vhosts/munin.mydomain.com/public_html/ 
includedir /etc/munin/conf.d 
graph_strategy cgi 
cgiurl_graph /munin-cgi/munin-cgi-graph 
html_strategy cgi 
[host.mydomain.com] 
    address 127.0.0.1 
    use_node_name yes 
[otherhost.mydomain.com] 
    address 1.2.3.4 
    use_node_name yes 

는 Nginx에 대한 가상 호스트입니다 : 여기
2013/09/05 16:31:59 [error] 29384#0: *2 open() "/usr/share/nginx/vhosts/munin.mydomain.com/public_html/munin-cgi/munin-cgi-graph/mydomain.com/host.mydomain.com/postfix_mailvolume-pinpoint=1378299671,1378407671.png" failed (2: No such file or directory), client: 10.30.2.1, server: munin.mydomain.com, request: "GET /munin-cgi/munin-cgi-graph/mydomain.com/host.mydomain.com/postfix_mailvolume-pinpoint=1378299671,1378407671.png?&lower_limit=&upper_limit=&size_x=800&size_y=400 HTTP/1.1", host: "munin.mydomain.com", referrer: "http://munin.mydomain.com/static/dynazoom.html?cgiurl_graph=/munin-cgi/munin-cgi-graph&plugin_name=mydomain.com/host.mydomain.com/postfix_mailvolume&size_x=800&size_y=400&start_epoch=1378299671&stop_epoch=1378407671" 

가 munin.conf 인이 시점에서

[16:44:16]$ cat /etc/nginx/conf.d/vhosts/munin.thegnomedev.com.conf | sed -e '/^$/d' -e '/^#/d' 
server { 
    listen  80; 
    server_name munin.mydomain.com; 
    access_log /var/log/nginx/munin.mydomain.com combined; 
    error_log /var/log/nginx/error.log warn; 
    rewrite_log on; 
    root /usr/share/nginx/vhosts/munin.mydomain.com/public_html/; 
    index index.php index.html index.htm; 
    location/{ 
     auth_basic   "Restricted"; 
     auth_basic_user_file /usr/share/nginx/vhosts/munin.mydomain.com/.htpasswd; 
    } 
    location ^~ /cgi-bin/munin-cgi-graph/ { 
     fastcgi_split_path_info ^(/cgi-bin/munin-cgi-graph)(.*); 
     fastcgi_param PATH_INFO $fastcgi_path_info; 
     fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; 
     include fastcgi_params; 
    } 
    location /munin/static/ { 
     alias /etc/munin/static/; 
    } 
    location /munin/ { 
     fastcgi_split_path_info ^(/munin)(.*); 
     fastcgi_param PATH_INFO $fastcgi_path_info; 
       fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; 
     include fastcgi_params; 
    } 
    # Deny hidden file types 
    location ~ /(\.ht|\.git|\.svn) { 
    deny all; 
    } 
} 

, 내가 충분히 그 좌절 해요 나는 두뇌 자물쇠를 때리고 있다고 생각해. 나는 인정할 것이다. nginx의 구문과 php-fpm이 어떻게 상호 작용하는지에 대한 나의 이해 부족은 아마 비난받을 것이다. 특히이 구문을 사용하기 위해서 만들 수있는 단순한 구문 변경이 있다면 더욱 그렇다.

내 기존 스택에서이를 해결하는 데 도움이 될 것입니다. 인터넷 검색을 해보고 여러 가지 일을 시도해보십시오.

감사

+0

이 작업을 진행 했습니까? 나도 똑같은 문제가있다. – Nick

+0

같은 문제가있는 centos 6과 아파치가 같은 문제가있다. – arcanine

+0

같은 문제로 비슷한 설정을 실행한다. 모든 곳에서 해결책을 찾고있었습니다. – Bastien

답변

1

이것은 https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=1000736 항에 RHEL SELinx 관련된 버그. 당신은 SELinux를 사용하지 않도록 설정하면

Description of problem: 
zooming doesn't work when selinux is in enforcing mode 

Version-Release number of selected component (if applicable): 
munin-2.0.17-1.el6.noarch 
selinux-policy-3.7.19-195.el6_4.12.noarch 
selinux-policy-targeted-3.7.19-195.el6_4.12.noarch 

Steps to Reproduce: 
1. click on munin graph to zoom in 

Actual results: 
no graph image 

Expected results: 
graph image 

Additional info: 
it works with selinux in permissive mode 

가 잘 작동 :

sudo setenforce 0 

을이 RHEL 6.5에서 해결해야 할 버그 보고서의 마지막 코멘트에 따르면 (를 CentOS는 그것을 선택해야합니다).

0

FastCGI 패스 스루를 통해 PHP/FPM으로 /cgi-bin/munin-cgi-graph /를 매핑했지만 PHP 스크립트에서는 작동하지만 Munin의 CGI grapher와 같이 실제로는 Perl이 아닙니다 . 해당 CGI 스크립트가 FastCGI 프로토콜을 사용하도록하려면 사용해야하는 래퍼는 일반 spawn-fcgi입니다.