我正在经历 JNRPE 。现在,在我的网络中,我们安装了 nagios 工具来监控网络。 我想了解JNRPE如何帮助我。 我访问了很多链接,浏览了整个JNRPE网站,了解我为什么要使用它以及在使用nagios后它有多大用处工具,但我还没有找到关于这个主题的具体内容。
我知道JNRPE用于执行Nagios插件。
为什么在第一手资料中我需要Nagios插件。假设我在Web服务器上运行了一个应用程序。首先,Nagios插件的目的是什么......
尽管有Nagios工具,我怎样才能使用JNRPE。 基本上我不确定JNRPE实现背后的可能用例是什么以及当我已经使用某种Sigar来获取硬件参数时,它如何在Web应用程序项目中提供帮助服务器。
另请注意,我的应用程序在很大程度上依赖于HTTP流量。
任何人都可以指导一下在Web应用程序中实现JNRPE的可能用法。
答案 0 :(得分:0)
JNRPE使您可以使用Java编写Nagios插件。 有许多第三方Nagios插件可用,但很少用Java编写(大部分时间是用python或perl编写的,或简单的bash脚本)。
为什么在第一手资料中我需要Nagios插件?
Nagios本身是基于插件的。 核心 nagios发行版附带有限数量的插件(脚本),您可以执行这些插件来检查系统上的不同参数。 您可以在系统上查看的内容具有无穷无尽的可能性。 Nagios(或任何其他监控系统)无法覆盖所有情况。你当然需要一种方法来扩展这样一个系统 - 因此大多数都提供了插件支持。
我想到的一个例子是用于详细监控Postgresql的插件。 Naigos不提供开箱即用的功能,但第三方插件确实提供了非常好的和详细的监控。
尽管有Nagios工具,我怎样才能使用JNRPE ...
让第三方插件为您进行监控有一个双重优势 - 您无法控制插件 - 您不确定它将维持多长时间,它可能无法正常工作,有时它是二进制的(你无法查看代码并进行更改)。
当你自己编写插件时,以上所有都不是问题。
我不确定可能的用例背后是什么 JNRPE的实现及其在Web应用程序项目中的帮助......
例如,Nagios缺乏对JMX和任何低级JVM / Java应用程序参数的直接监控。通过JMX,您可以检查容器本身(例如Tomcat)或JVM中的参数 - 工作线程/堆使用情况等。
有几个第三方插件能够进行JMX监控,但它们并不完美,可以改进很多!所以这里有一个区域,您可以利用JNRPE编写与JMX交互的自定义插件,并且比现有插件做得更好。
答案 1 :(得分:0)
我是JNRPE项目的创始人。
hovanessyan所说的一切都是正确的,但是我想补充一下:
我不确定可能的用例背后是什么 JNRPE的实现以及它将如何在Web应用程序中提供帮助 项目...
您可以找到以下主要用例: