Я настроил munin для запуска от имени root для тестирования, моя соответствующая конфигурация такова:
munin.conf:
[localhost]
address 127.0.0.1
use_node_name yes
Я попробовал fqnd.mysite.com (но он не смог подключиться), localhost.localdomain тоже, который работает, но я объясню через секунду
munin-node.conf:
allow ^127\.0\.0\.1$
# Which address to bind to;
host 127.0.0.1
host_name localhost
port 4949
Теперь все работает нормально, если я наберу munin-run cpu
и он перечисляет myspecs, но когда я подключусь к localhost: 4949, сеанс будет таким:
# munin node at localhost
list
cpu df df_inode entropy exim_mailstats forks fw_conntrack fw_forwarded_local fw_packets http_loadtime if_err_eth0 if_eth0 interrupts iostat iostat_ios irqstats load memory munin_stats nfs4_client nfsd nfsd4 ntp_kernel_err ntp_kernel_pll_freq ntp_kernel_pll_off ntp_offset open_files open_inodes postfix_mailqueue postfix_mailvolume proc_pri processes swap threads uptime users vmstat
fetch df
.
fetch cpu
.
Как видите, плагины перечислены! Но по какой-то причине он отвечает ".", Я запускаю его под root, поэтому не думаю, что это проблема с разрешением. Любые подсказки уберут меня с компьютера в 4:32 утра!
Я не могу работать лучше, чем http://munin-monitoring.org/wiki/Debugging_Munin_plugins, но один шаг, который вы либо не выполнили, либо не опубликовали, - это запуск плагинов из /etc/munin/plugins
и посмотреть, что они говорят. Пытаться
# /etc/munin/plugins/df
и посмотрите, что вы получите в ответ. Вы также должны знать, что, хотя munin-node работает как root, плагины не обязательно это делают; видеть /etc/munin/{plugins.conf,plugin-conf.d/*}
для понимания того, от имени какого пользователя может работать любой данный плагин.
Я обнаружил свою проблему, все это печаталось в STDERR, а не в STDOUT, эта ошибка, по-видимому, возникает только в OpenSUSE 9/10, странно, что это произошло в Ubuntu 10.04 ..
Ошибку можно найти здесь: http://munin-monitoring.org/ticket/846
А патч выглядит следующим образом:
--- node/lib/Munin/Node/Service.pm.orig 2010-04-26 12:33:56.217889267 +0000
+++ node/lib/Munin/Node/Service.pm 2010-04-26 14:07:09.951259792 +0000
@@ -212,7 +212,14 @@
print STDERR "# About to run '", join (' ', @command), "'\n"
if $config->{DEBUG};
- exec @command;
+ # work around exec bug in SLES10's Perl
+ # exec @command;
+ my $res = `@command`;
+ print STDERR "# '", join (' ', @command), "' returned $res\n"
+ if $config->{DEBUG};
+ print STDOUT $res;
+ exit;
+
}
Это случилось со мной, поэтому я уверен, что, может быть, кто-то где-то сможет это использовать, но позаботьтесь об изменении файлов. Я обновил свой исходный вопрос, чтобы его лучше могли найти поисковые системы по аналогичным запросам, я знаю, что мне пришлось много искать, чтобы найти это.