【问题标题】:failed to add munin node to monitoring无法将 munin 节点添加到监控
【发布时间】:2016-03-05 00:06:24
【问题描述】:

我正在尝试在 munin 中设置一些新主机进行监控。由于某种原因,它没有发生!

这是我迄今为止尝试过的。

在已经监控其他几台主机的 munin 服务器上,我在 /etc/munin/munin.conf 中添加了我想要的主机

[db1]
    address   10.10.10.25 # <- obscured the real IP address 
    use_node_name yes

在 db1 主机上,我在 /etc/munin/munin-node.conf 中设置了这个

host_name  db1.example.com
allow ^127\.0\.0\.1$
allow ^10\.10\.10\.26$
allow ^::1$
port 4949

我确保在两台机器上重新启动服务。

我可以从监控主机telnet到我想在munin端口上监控的新服务器:

[root@monitor3:~] #telnet db1.example.com 4949
Trying 10.10.10.26...
Connected to db1.example.com.
Escape character is '^]'.
# munin node at db1.example.com

等几分钟..什么也没有!新服务器不会出现在 munin 监控主机的 munin 仪表板中。

在 db1 主机(我正在尝试监控的主机)上的 /var/log/munin/munin-update.log 日志中,我发现:

2015/11/30 03:20:02 [INFO] starting work in 14199 for db1/10.10.10.26:4949.

2015/11/30 03:20:02 [FATAL] Socket read from db1 failed.  Terminating process. at /usr/share/perl5/vendor_perl/Munin/Master/UpdateWorker.pm line 254.

2015/11/30 03:20:02 [ERROR] Munin::Master::UpdateWorker<db1;db1> died with '[FATAL] Socket read from db1 failed.  Terminating process. at /usr/share/perl5/vendor_perl/Munin/Master/UpdateWorker.pm line 254.

这里会发生什么?我该如何解决这个问题?

【问题讨论】:

  • 检查端口是否可用?
  • 节点的日志呢?他们对此有什么看法吗?
  • 10.10.10.25 != 52.3.28.48
  • john Smith,你发现我试图混淆 IP。我刚刚更正了帖子,使其具有逻辑意义。 Somnath Muluk - 两个主机上的端口都可用: monitor3: [root@monitor3:~] #lsof -i :4949 命令 PID 用户 FD 类型设备大小/关闭节点名称 munin-nod 31800 root 5u IPv6 31820297 0t0 TCP *:munin (LISTEN) db1: [root@db1:~] #lsof -i :4949 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME munin-nod 14164 root 5u IPv6 26604748 0t0 TCP *:munin (LISTEN) muru 我发布的日志来自我要监控的 db1 主机。
  • @bluethundr 这非常令人惊讶。该日志是我希望在主服务器上看到的(在本例中为monitor3)。请注意它是如何说“开始工作......为节点/IP:端口”。实际上,munin-update.log 将在主节点上,而不是节点上。

标签: munin


【解决方案1】:

既然您已经确认您的网络连接正常,作为调查的第一步,我肯定会简化munin-node.conf。目前你有:

host_name  db1.example.com
allow ^127\.0\.0\.1$
allow ^10\.10\.10\.26$
allow ^::1$
port 4949

我会从这些中删除:

  • host_name(可能是多余的。)
  • IPv6 环回地址。 (我认为你不需要它,但如果你确实需要它,你可以稍后再添加它)
  • IPv4 环回地址。 (同上)

如果它仍然无法正常工作,您可以通过将直接 IP 替换为以下内容来完全排除 allow 配置的任何问题:

cidr_allow 10.10.10.0/24

这将允许从所有 IP 进行连接,以防您的 db1 主机似乎从不同的 IP 进行连接。

【讨论】:

  • 嗨,好的,所以我尝试了你提到的所有内容,除了 cidr_allow。因为我知道我的 munin 服务器来自什么 IP。我在 db1 上的配置如下所示: [root@db1:/etc/munin] #egrep -v "^$|^#" munin-node.conf log_level 4 log_file /var/log/munin-node/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 ^54\.174\.234\.136$ host * port 4949 我在服务器和客户端上都重新启动了 munin
  • 好的。然后有几件事:我仍然会尝试使用cidr_allow,仅用于调试目的。 allow 设置依赖于正则表达式。所以可能有龙。还有你的munin版本是什么?最后:您忘记在之前的评论中匿名化您的 IP。
  • 好的,谢谢。我确实在 db1 的 munin-node conf 中尝试了 cidr_allow。我首先尝试使用 munin 服务器的 IP 范围,然后再次使用 cidr_allow 0.0.0.0/24。我不确定这是否允许:
  • 这是我最后一次尝试在 db1 上的 munin-node conf:[root@db1:/etc/munin] #egrep -v "^$|^#" munin-node.conf`log_level 4``log_file /var/log/munin-node/munin-node.log`pid_file /var/run/munin/munin-node.pid`背景1``setsid 1`user rootgroup rootignore_file [\#~]$`ignore_file DEADJOE$``ignore_file\.bak$`ignore_file %$`ignore_file\.dpkg-(tmp|new|old|dist)$`@987654334 @ignore_file \.pod$allow ^10\.10\.10\.26$cidr_allow 0.0.0.0/24host *port 4949
  • 我在我的机器上重新安装了它,但我无法重现您的错误。所以最后的猜测:在您的munin.conf 中,您指的是使用简单主机名 (db1) 的主机,但它使用 FQDN (db1.example.com) 标识自己。这是穆宁可能很敏感的事情。您能否将 munin.conf 更改为也使用 FQDN?
猜你喜欢
  • 1970-01-01
  • 2016-12-12
  • 2017-12-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-18
相关资源
最近更新 更多