remote node monitoring recommendations
我正在寻找一种解决方案来监控多个(至少 50 个)远程节点。这些远程节点位于防火墙后面,因此我无法从中央服务器轮询信息。
连接需要来自节点 -> 中央服务器。我以前使用过 ganglia 和 nagios,但它们都来自 Server-> 节点。感谢是否有人可以提供一些开源建议。远程节点和中央服务器都是基于 linux 的系统。
我想收集的指标是:
我会考虑使用 NSCA 或 NRDP 对 Nagios 使用被动检查。这两种方法都可以让您将结果从远程机器推送到中央服务器。
http://nagios.sourceforge.net/docs/3_0/passivechecks.html
或者您可以使用 NRDP,它通过标准 http 和 https 协议进行通信。
http://assets.nagios.com/downloads/nagiosxi/docs/NRDP_Overview.pdf
一旦您使用其中任何一种设置了一个系统,使用 puppet 甚至 rsync 克隆设置就不难了。
如果您的防火墙允许 HTTP(S),您可以尝试使用 Nagira API (RESTful) 提交被动检查。
有几个使用它实现的设置示例。
请检查 http://dmytro.github.com/nagira
您也可以使用相同的 API 来轮询客户端。如果您的防火墙允许传出 HTTP(S)。
如果您可以访问防火墙后面的单个服务器,则可以使用 Mod-Gearman 对该远程主机上的特定主机组运行检查。
如果您可以为该网络上的单个主机设置防火墙漏洞 (tcp/5666),则可以将该主机用作某种"NRPE 网关"。
然后您可以使用 check_nrpe 让该主机针对防火墙后面的其他 50 个左右的节点执行所有检查(包括将 check_nrpe 链接在一起以进行"内部"检查)。
如果您走这条路,请确保为所有这些服务建立服务依赖关系(考虑使用服务组),以依赖"网关"上的 NRPE。
看看 Uptime,一个用 Node.js 和 MongoDB 编写的开源远程监控工具:https://github.com/fzaninotto/uptime。可能非常适合您的需求。
您可以使用 Pandora FMS 来监控此服务器。为此,您可以在每台机器上安装软件代理,在防火墙中为触手协议配置一个例外,并将信息发送回 Pandora 服务器。您可以使用本地模块监控上面提到的所有参数。对于 puppet,pandora fms 博客站点中有一篇特定的文章,您可以在其中逐步阅读有关如何监控 puppet 的信息。更多关于pandora fms的信息,您可以访问以下网站:Pandora FMS Unified Monitoring ToolL
问候
伊沃·约尔丹诺夫
现在回答这个问题可能为时已晚。
然而,
干杯。