本文介紹Hadoop YARN最近版本中增加的幾個非常有用的特性,包括:
(1)ResourceManager HA
在apache hadoop 2.4或者CDH5.0.0版本之后,增加了ResourceManger HA特性,支持基于Zookeeper的熱主備切換,具體配置參數可以參考Cloudera的文檔:ResourceManager HA配置。
需要注意的是,ResourceManager HA只完成了第一個階段的設計,即備ResourceManager啟動后,會殺死之前正在運行的Application,然后從共享存儲系統中讀取這些Application的元數據信息,并重新提交這些Application。啟動ApplicationMaster后,剩下的容錯功能就交給ApplicationMaster實現了,比如MapReduce的ApplicationMaster會不斷地將完成的任務信息寫到HDFS上,這樣,當它重啟時,可以重新讀取這些日志,進而只需重新運行那些未完成的任務。ResourceManager HA第二個階段的任務是,備ResourceManager接管主ResourceManager后,無需殺死那些正在運行的Application,讓他們像任何事情沒有發生一樣運行下去。
(2) 磁盤容錯
在apache hadoop 2.4或者CDH5.0.0版本之后,增加了幾個對多磁盤非常友好地參數,這些參數允許YARN更好地使用NodeManager上的多塊磁盤,相關jira為:YARN-1781,主要新增了三個參數:
yarn.nodemanager.disk-health-checker.min-healthy-disks:NodeManager上最少保證健康磁盤比例,當健康磁盤比例低于該值時,NodeManager不會再接收和啟動新的Container,默認值是0.25,表示25%;
yarn.nodemanager.disk-health-checker.max-disk-utilization-per-disk-percentage:一塊磁盤的最高使用率,當一塊磁盤的使用率超過該值時,則認為該盤為壞盤,不再使用該盤,默認是100,表示100%,可以適當調低;
yarn.nodemanager.disk-health-checker.min-free-space-per-disk-mb:一塊磁盤最少保證剩余空間大小,當某塊磁盤剩余空間低于該值時,將不再使用該盤,默認是0,表示0MB。
(3)資源調度器
Fair Scheduler:Fair Scheduler增加了一個非常有用的新特性,允許用戶在線將一個應用程序從一個隊列轉移到另外一個隊列,比如將一個重要作業從一個低優先級隊列轉移到高優先級隊列,操作命令是:bin/yarn application -movetoqueue appID -queue targetQueueName,相關jira為:YARN-1721。
Capacity Scheduler:Capacity Scheduler中資源搶占功能經過了充分的測試,可以使用了。
原創文章,轉載請注明: 轉載自董的博客
本文鏈接地址: http://dongxicheng.org/mapreduce-nextgen/hadoop-yarn-recently-new-features/
posted on 2017-09-07 11:37
xzc 閱讀(277)
評論(0) 編輯 收藏 所屬分類:
hadoop