更新 1

更新 1

我正在使用 Amazon Linux 发行版(最新版本)。我尝试在本地节点(只有一个节点,既是节点又是主节点)安装 munin。因此我尝试:

$ sudo yum install munin munin-node httpd mod_fcgid

然后我编辑了 /etc/munin/munin.conf:

# cgi on demand
html_strategy cgi
graph_strategy cgi

然后我激活了该服务:

$ sudo chkconfig munin-node on

我检查了版本:

$ munin-node-configure --version
Version:
    This is munin-node-configure (munin-node) v2.0.20.
[... more text here ...]

我确保 munin.conf 具有 ScriptAlias 指令:

<directory /var/www/html/munin>

AuthUserFile /etc/munin/munin-htpasswd
AuthName "Munin"
AuthType Basic
require valid-user

ExpiresActive On
ExpiresDefault M310
</directory>
ScriptAlias /munin-cgi/munin-cgi-graph /var/www/cgi-bin/munin-cgi-graph

我确保密码设置得非常好:

$ sudo htpasswd -c /etc/munin/munin-htpasswd MyUser
#stdin < my password

然后我重新启动了服务:

$ sudo /etc/init.d/munin restart

我的 httpd 是:

$ sudo /etc/init.d/httpd restart

但是访问 /munin-cgi/munin-cgi-graph 会出现 404 错误。但这个 404 不是类似 Apache 的 404,而是一个完全空的 404 错误,没有任何内容,就好像是 cgi 脚本给出的一样。httpd error_log 中什么也没显示。

我应该检查什么?我的问题是什么?

答案1

检查您的 apache/httpd 是否正在加载fcgidcgi模块。

apachectl -M | grep cgi

应该回应

cgi_module (shared)

或者

fcgid_module (shared)

(或两者)。

如果它不存在启用它

sudo a2enmod cgi

答案2

不幸的是,说:“...但是点击/munin-cgi/munin-cgi-graph 会出现 404...“您没有报告引起 404 的完整 URL。请注意,您需要使用适当的参数调用 munin-cgi-graph CGI,并且这些参数将由 munin 本身正确验证。

换句话说,在我这边,这个 URL:

https://my.monitoring.server/cgi-bin/munin-cgi-graph/SAN/SAN/SAN_SW_Brocade1-pinpoint=1435589472,1435697472.png?&lower_limit=&upper_limit=&size_x=800&size_y=400

将产生以下图表:

在此处输入图片描述

而另一个 URL:

https://my.monitoring.server/cgi-bin/munin-cgi-graph/something_random/here_and_there

将持续在你可能提到的 404 错误中:

verzulli@iMac-Chiara:~$ wget https://my.monitoring.server/cgi-bin/munin-cgi-graph/something_random/here_and_there
--2015-06-30 23:02:39--  https://my.monitoring.server/cgi-bin/munin-cgi-graph/something_random/here_and_there
[....]
Richiesta HTTP inviata, in attesa di risposta... 404 Not Found
2015-06-30 23:02:40 ERRORE 404: Not Found.

verzulli@iMac-Chiara:~$

这是 munin-cgi-graph CGI 的预期行为。快速查看源代码将显示以下内容:

while (new CGI::Fast) {
    # 1rst thing is to validate the URL. Only a subset of chars are allowed.
    # Return 404 if not compliant, w/o logging.
    [...]
}

如果 munin-cgi-graph 处理的渲染过程失败,则很有可能记录某些内容/var/log/munin/munin-cgi-graph.log(...根据您自己的配置,您的 LOG 路径可能会有所不同)。

由于动态图生成可能有点棘手,你可以仔细查看文档这里这里

如果问题仍然存在,请提供进一步的详细信息。

更新 1

至于访问 munin 网络界面的正确方法,请考虑在 munin 服务器上,所有监控活动均由 cron-job(munin-cron)启动,该 cron-job 以启动一个作业开始并以一个和作业munin-update结束。munin-htmlmunin-graph

网页由其管理,将根据文件中的指令munin-html生成/更新网页。html-dirmunin.conf

默认安装可能如下所示:

  • munin.confhtmldir /var/www/html/munin

结合默认的 Apache 安装,你的 munin 网页界面可以在http://your.monitoring.server/munin


PS:最后的个人说明:尽管在 ServerFault 上寻求支持可能更容易,但我建议您更自然地处理您的 munin/监控问题,搜索/阅读临时文档/教程。即使一开始可能更具挑战性,但我保证从长远来看您会得到回报 :-)

相关内容