Hadoop YARN的3新特性
本文介紹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為:
Capacity Scheduler:Capacity Scheduler中資源搶佔功能經過了充分的測試,可以使用了。
瞭解更多大資料技術點選“瞭解更多”檢視