1

我想运行一些配置单元查询,然后需要收集不同的指标,如 hdfs 字节读/写。为此,我编写了 java 代码。但在运行代码之前,我只想检查 hive、impala、yarn 等 cloudera 服务是否正在运行。如果正在运行,则代码需要执行,否则只需退出。有没有办法通过java代码检查服务的状态?

4

1 回答 1

0

Sampson S 给了你一个正确的答案,但它的实现并非易事。该信息可通过 Cloudera 提供的 Cloudera Manager (CM) 工具的 REST API 获得。您将让您的 Java 程序向 CM 发出 Web GET 请求,解析 JSON 结果并使用它来做出决定。或者,您可以查看其 API 背后的代码以进行更直接的查询。

但我认为你应该问“为什么?” 你想达到什么目的?您是否正在复制 CM 已经提供的功能?在此处提出有关 SO 的问题时,提供一些上下文总是有帮助的。看起来你可能对环境很陌生。也许它已经做了你想要的。

于 2016-05-21T23:24:58.160 回答