因此,我正在将服务器从 Ubuntu 12.04 重建到 Ubuntu 14.04;不执行升级路径,因为在这种情况下我宁愿从头开始构建。我已经安装了 Munin,就像我之前在 Ubuntu 12.04 中所做的那样:
sudo aptitude install munin munin-node
然后我像这样为 Munin 启用了 Apache 模块:
sudo ln -s /usr/share/munin/plugins/apache_accesses /etc/munin/plugins/apache_accesses
sudo ln -s /usr/share/munin/plugins/apache_processes /etc/munin/plugins/apache_processes
sudo ln -s /usr/share/munin/plugins/apache_volume /etc/munin/plugins/apache_volume
然后我像这样重新启动了 Munin 节点:
sudo service munin-node restart
然后等待 5-10 分钟,数据和相关图表就生成了。很高兴图表出现了!但不幸的是,所有的值都是-nan
,这意味着数据没有被 Munin 处理;见下面的截图:
通常这意味着 Munin 在访问本地主机的 Apache 页面时遇到问题service-status
,但使用 Lynx 检查系统上的 URL 表明一切正常:
lynx http://localhost/server-status
所以我不知道到底发生了什么。系统完全重启了,但没有任何改善。到底发生了什么?
答案1
我解决了!我对这个问题非常沮丧,我运行了 Munin 模块建议命令,如下所示:
sudo munin-node-configure --suggest
在输出堆中这里有与 Apache 相关的行:
apache_accesses | yes | no [LWP::UserAgent not found]
apache_processes | yes | no [LWP::UserAgent not found]
apache_volume | yes | no [LWP::UserAgent not found]
所以模块是活动的,但是[LWP::UserAgent not found]
?这是怎么回事?谷歌搜索了一下并找到了这篇解释它的文章:
当然,这不是您可能遇到的最有用的建议,但经过一些研究,它可能会更有意义。幸运的是,在这种情况下,我们可以跳过研究,直接了解它的含义:Munin 实际上是用一种名为 Perl 的语言编写的脚本集合,而“LWP::UserAgent”是一个 Perl 库。因此,没有找到 LWP::UserAgent 意味着我们的示例切片上没有安装特定的 Perl 库。
由于 Munin 是一堆 Perl 脚本,因此该LWP
错误与libwww-perl
它基本上是“Perl 的万维网库”。因此 Munin 失败了,因为它没有安装客户端库来连接 Apache 服务器状态页面。我可以通过libwww-perl
如下方式安装来解决这个问题:
sudo aptitude install libwww-perl
完成后,我再次运行 Munin 模块建议命令,一切看起来都很好,没有LWP
相关错误:
apache_accesses | yes | yes
apache_processes | yes | yes
apache_volume | yes | yes
所以我又等了 5-10 分钟,然后就好了!Munin 现在可以读取 Apache 服务器状态数据,并且图表现在已正确更新并按预期工作: