同一台机器上有多个具有不同插件的 munin-node 守护进程

同一台机器上有多个具有不同插件的 munin-node 守护进程

我的公司最近搬到了一家新的基础设施提供商。我们在那里获得了一台部分托管的服务器,其中安装了 Ubuntu 14.04 的基本版本。提供商还在机器上安装了 munin-node(munin 版本 2.0.19),并安装了一些自定义插件他们的监控。

现在,我们想使用我们自己的我们在更换供应商之前也安装了监控。我们有一个正在运行的 munin-master。我们的监控包括一些我们自己开发的插件来监控我们的应用程序。所以,虽然我不需要他们的插件,但他们也不需要我们的。我们的一些插件还采用了读取时重置计数器。
这意味着简单地允许我们的 munin-master 在 munin-node 上并从那里读取统计数据并不是解决方案。

我实际上需要的是机器上运行第二个 munin-node 守护进程。我可以通过简单地复制 init.d 启动脚本、更改端口等、创建另一个插件目录并将我们的附加插件放在那里来实现这一点。

然而,我找不到办法更改插件目录munin 用途。我可以设置另一个配置文件来读取,但似乎没有指定插件位置的选项。munin-node 也没有命令行选项(尽管其他脚本如 munin-run 和 munin-node-configure 似乎有它们)。我试过谷歌搜索,我进入了源代码,但我找不到任何方法来实现这一点。

答案1

这是我想出的最好的办法,可能不是最好的解决方案,但它有效:

  • 复制/etc/munin/etc/munin2
  • 修改设置munin-node.conf
    • log_file:更改为.../munin-node2.log
    • pid_file:更改为.../munin-node2.pid
    • 端口:更改为4948(或任何最适合您的端口)
  • plugins/根据需要添加/删除插件
  • plugin-conf.d/根据munin-node.conf需要修改设置
  • 复制/usr/sbin/munin-node/usr/sbin/munin-node2
  • munin-node2$Munin::Common::Defaults::MUNIN_CONFDIR='/etc/munin2';最后一个之后插入use ...;
  • 复制/etc/init/munin-node.conf/etc/init/munin-node2.conf
  • munin-node2.conf,修改
    • [ -r /etc/default/munin-node ] && . /etc/default/munin-node[ -r /etc/default/munin-node2 ] && . /etc/default/munin-node2
    • exec /usr/sbin/munin-node $DAEMON_ARGSexec /usr/sbin/munin-node2 $DAEMON_ARGS

现在,您应该能够通过 启动第二个 munin 节点service munin-node2 start,并且ps ax|grep munin-node应该显示它与主节点一起运行。

现在需要做的就是在您的munin-master内部munin.conf或上提及该特定 munin-node 的另一个端口。munin-conf.d/

相关内容