我正在通过 JMX 远程收集统计数据。munin JMX 插件允许您在汇总统计数据时选择要连接的 URL。这使我能够从实际上未安装 munin-node 的主机收集统计数据。我发现这对于某些无法安装 munin-node 的系统来说是一个理想的特性。
我今天的工作是,如果我想在没有 munin-node 的情况下从机器 A 收集 JMX 统计信息,我会在机器 B 上安装 munin-node。然后机器 B 通过 JMX 从 A 收集数据,并将其报告给在机器 C 上运行的 munin-server。
此设置需要多台 B 型机器:每台 C 型机器各一台。我想避免这种情况,而是只使用一台 B 型机器来收集所有 A 型机器的数据并将其报告给唯一的 munin 服务器(C 型机器)。
据我所知,这需要在 B 上运行多个 munin-nodes,或者以其他方式向 munin-server 报告 B 型机器正在报告来自多个来源的数据。这可能吗?
谢谢。
答案1
为下面的插件创建多个符号链接/etc/munin/plugins
,并为每个正在绘制图表的主机创建不同的配置。如下所示:
### Plugins for host 1
/etc/munin/plugins/jmx_host1_GCCount -> /usr/share/munin/plugins/jmx_
/etc/munin/plugins/jmx_host1_ThreadsPeak -> /usr/share/munin/plugins/jmx_
...
### Plugins for host 2
/etc/munin/plugins/jmx_host2_GCCount -> /usr/share/munin/plugins/jmx_
/etc/munin/plugins/jmx_host2_ThreadsPeak -> /usr/share/munin/plugins/jmx_
...
然后在/etc/munin/plugin-conf.d/jmx
:
[jmx_host1_*]
env.ip 192.168.0.101
env.port 5900
env.category jvm
env.username foobar
env.password raboof
[jmx_host2_*]
env.ip 192.168.0.102
env.port 5900
env.category jvm
env.username foobar
env.password raboof