我试图让我的 munin 主从另一个外部 munin 节点获取数据。但我似乎遇到了问题。Munin master 位于 10.0.0.4,而外部节点位于 10.0.0.1。我正在尝试让 10.0.0.4 从 10.0.0.1 获取数据。
我相信我已经正确设置了配置:
编辑 munin_master 上的 /etc/munin/munin.conf 以使其从 10.0.0.1 获取数据。
[muninServer.vm]
address 10.0.0.1
use_node_name yes
在 munin_master 上重新启动了 Munin 和 apache。
/etc/init.d/munin-node restart
* Stopping Munin-Node [ OK ]
* Starting Munin-Node [ OK ]
还在 munin_master 上重新启动了 apache2
/etc/init.d/apache2 restart
在外部 munin 节点上编辑 /etc/munin/munin-node.conf,以允许 munin_master 从外部 munin 节点收集文件。
allow ^10\.0\.0\.4$
还重新启动了munin。
/etc/munin# /etc/init.d/munin-node restart
* Stopping Munin-Node [ OK ]
* Starting Munin-Node [ OK ]
这似乎适用于 munin_master。但是,当 Munin master 尝试在端口 4949 上与 10.0.0.1 建立新连接时(通过发送 SYN 位)。外部节点拒绝连接并以复位位响应。由于指定外部节点接受此连接,我不明白为什么会发生这种情况。
我在 10.0.0.1 的本地防火墙默认接受所有流量。所以这不可能是原因:
iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination
Chain FORWARD (policy ACCEPT) target prot opt source destination
Chain OUTPUT (policy ACCEPT) target prot opt source destination
可能需要注意的是,在外部节点上使用:telnet 127.0.0.1 4949 工作正常,而在 munin_master 上使用 telnet 10.0.0.1 4949 被拒绝。
试图找出端口是否正在侦听外部节点:
lsof | grep TCP | grep LISTEN
munin-nod 4669 root 5u IPv4 2095805 0t0 TCP localhost:munin (LISTEN)
netstat -tulpn
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:4949 0.0.0.0:* LISTEN 4669/perl
外部节点上 munin-node.conf 中信息的内容。
log_level 4
log_file /var/log/munin/munin-node.log
pid_file /var/run/munin/munin-node.pid
background 1
setsid 1
user root
group root
ignore_file [\#~]$
ignore_file DEADJOE$
ignore_file \.bak$
ignore_file %$
ignore_file \.dpkg-(tmp|new|old|dist)$
ignore_file \.rpm(save|new)$
ignore_file \.pod$
allow ^127\.0\.0\.1$
allow ^::1$
allow ::ffff:158.36.119.179
allow ^10\.0\.0\.4$
allow ^128\.39\.74\.58$
host 127.0.0.1
host ::ffff:158.36.119.179
port 4949
任何有关如何解决此问题的建议将不胜感激:)