2

我正在尝试使用 Nagios 监控 Hadoop 集群。我的目标是监控所有 Hadoop 守护进程(如 DataNode、Jobtracker 和 Tasktracker 等)的状态和资源使用情况。我能想到的解决方案是监控这些守护进程正在使用的端口。但这似乎非常有限。例如,我看不到节点中有多少任务正在运行等。

所以,我的问题是:是否有使用 Nagios 进行 Hadoop 监控的系统解决方案?

谢谢,

舒敏

4

3 回答 3

0

我找到了这个。这是一个用于监控 hdfs 的 nagios 插件。以下是 nagios exchange 上所有与 hadoop 相关的插件。

于 2013-03-22T22:50:01.933 回答
0

当然有一些方法可以使用 SNMP 监控 Hadoop 集群。您应该在 Linux 服务器上安装软件包 snmp。还必须在集群上启用 SNMP,我想有一个选项可以在某种基于 Web 的管理控制台中启用它。

启用此功能后,您应该能够 snmpwalk 集群:

snmpwalk -v 2c -c public <ip address cluster>

.. 比您可以编写 perl 或 bash 脚本来检查您喜欢监视的某些 OID。您可以将此脚本放在您的“libexec”文件夹中,并在 commands.cfg 中为该脚本定义一个新命令,例如 check_cluster_snmp 或您喜欢的其他命令。

您也可以使用 JMX 检查集群,但我对 JMX 还不太了解。

于 2013-04-30T11:24:37.130 回答
0

最好的选择是使用 JMX,因为它允许查看 Java 进程以检查正在发生的事情,并提供指标(如列入黑名单的节点、hdfs 空间状态等)。

您可以通过 URL 从每个节点中提取数据http://node.domain:port/jmx?qry=*adoop

你可以看看这些相关的问题:

https://stackoverflow.com/questions/16893407/are-there-advanced-http-query-parameters-for-jmx-proxy-tomcat-servlet

是否有任何可用的 JMX - REST 桥接器?

于 2014-03-29T16:44:01.697 回答