那麼,可以通過輪詢器檢查當前隊列(使用RM API)並更新yarn-site.xml + RM的可能重新啓動。但是,重新啓動RM可能會影響您的隊列,因爲當前作業將被終止或關閉(並可能在稍後重新嘗試)。
如果您需要在Capacity和FIFO調度程序之間進行更高效的切換,那麼您可能需要擴展這些類並設計自己的可以執行僞代碼工作的調度程序。
默認情況下,EMR使用容量調度程序和DefaultResourceCalculator,並在默認隊列上調整作業。例如,EMR對像路徑紗構造如下:
/home/hadoop/.versions/2.4.0-amzn-6/etc/hadoop/yarn-site.xml
<property><name>yarn.resourcemanager.scheduler.class</name><value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler</value></property>
with
/home/hadoop/.versions/2.4.0-amzn-6/etc/hadoop/capacity-scheduler.xml
org.apache.hadoop.yarn.util.resource.DefaultResourceCalculator
這可能是矯枉過正你,但如果你想配置的隊列/資源再分配自動,你可以看看搶佔(說實話我看着它自己,所以我不是專家)。請參閱[這裏](https://hortonworks.com/blog/better-slas-via-resource-preemption-in-yarns-capacityscheduler/)和[這裏](https://docs.hortonworks.com/HDPDocuments/HDP2 /HDP-2.4.2/bk_yarn_resource_mgt/content/preemption.html)以獲得良好的概述。 – tbone
爲什麼你認爲這會是一個矯枉過正的問題? –
只是不是一個簡單的,因爲你的僞代碼都是;) – tbone