java - 通过 REST API : allocatedMB, allocatedVcores 和 runningContainers 的 Hadoop 指标始终为 -1

标签 java rest hadoop

我们尝试报告每个用户的每月 hadoop 应用程序指标,并使用以下 REST API 路径使用 REST API:

http://[host:port]/ws/v1/cluster/app

除了始终为 -1 的 allocatedMB、allocatedVcores 和 runningContainers 之外,返回的数据看起来不错。

谁能解释一下这是为什么?

最佳答案

如果调用 RM 集群应用程序 API 时您的集群上没有正在运行的作业,您正在查看历史数据。基于Hadoop代码(hadoop-yarn-project/下的QueueStatisticsPBImpl.java),当RM不知道该项目的值时,-1被用作默认值。

@Override
public long getAllocatedVCores() {
  QueueStatisticsProtoOrBuilder p = viaProto ? proto : builder;
  return (p.hasAllocatedVCores()) ? p.getAllocatedVCores() : -1;
}

由于其他字段是将存储在作业历史记录服务器中的值(allocatedMBallocatedVCoresrunningContainers),它们包含实际值。

https://hadoop.apache.org/docs/stable/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/HistoryServerRest.html

关于java - 通过 REST API : allocatedMB, allocatedVcores 和 runningContainers 的 Hadoop 指标始终为 -1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44672566/

相关文章:

java - 找不到方法的符号错误

java - 检查 radio 组为空/空

http - 与 RestSharp 的持久 HTTP 连接

java - 如何确保 Java Spring boot 中的 REST Http 请求时间不超过 15 秒

hadoop - 从空表插入表在 hive 中失败

java - Android:如何从不同的类文件运行异步任务?

java - SonarQube:创建 HTML 报告而不运行 sonar:sonar 命令

spring - 带有 Spring RequestMapping 路径参数的编码斜杠 (%2F) 提供 HTTP 400

angular - 用于处理Hadoop数据的UI框架

hadoop - hbase 0.98.8应该使用哪个版本的Pig