您可以使用 Java HTTP 客户端通过 ResourceManager REST API 从 YARN 请求集群指标。
响应将是一个 JSON,其中包含集群上的总内存、分配的、保留的和可用的内存和 vcore。
$ curl -G -k https://<resource-manager-host>:8090/ws/v1/cluster/metrics
{"clusterMetrics":
{"appsSubmitted":999999,"appsCompleted":999999,"appsPending":0,"appsRunning":99,"appsFailed":99,"appsKilled":999,
"reservedMB":0,"availableMB":99999999,"allocatedMB":9999999,
"reservedVirtualCores":0,"availableVirtualCores":9999,"allocatedVirtualCores":9999,
"containersAllocated":9999,"containersReserved":0,"containersPending":999,
"totalMB":9999999,"totalVirtualCores":99999,
"totalNodes":999,"lostNodes":9,"unhealthyNodes":9,"decommissioningNodes":0,"decommissionedNodes":99,"rebootedNodes":0,"activeNodes":999}}
$
不确定您所说的“插槽”是什么意思,因为您实际上可以在提交 MR 作业时指定减速器容器大小。