日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

YARN应用场景、原理与资源调度

發(fā)布時間:2024/4/17 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 YARN应用场景、原理与资源调度 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1.Hadoop YARN產(chǎn)生背景

  源于MapReduce1.0

  運維成本 如果采用“一個框架一個集群”的模式,則可能需要多個管理員管理這些集群,進而增加運維成本,而共享模式通常需要少數(shù)管理員即可完成多個框架的統(tǒng)一管理。

  數(shù)據(jù)共享 隨著數(shù)據(jù)量的暴增,跨集群間的數(shù)據(jù)移動不僅需花費更長的時間,且硬件成本也會大大增加,而共享集群模式可讓多種框架共享數(shù)據(jù)和硬件資源,將大大減小數(shù)據(jù)移動帶來的成本。

  直接源于MRv1在幾個方面的缺陷:

                ?擴展性受限
                ?單點故障
                ?難以支持MR之外的計算

  多計算框架各自為戰(zhàn),數(shù)據(jù)共享困難

                ?MR:離線計算框架

                ???Storm:實時計算框架

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Spark:內(nèi)存計算框架

2.Hadoop YARN基本構(gòu)成

ResourceManager

整個集群只有一個,負責(zé)集群資源的統(tǒng)一管理和調(diào)度
詳細功能
?處理客戶端請求
?啟動/監(jiān)控ApplicationMaster
?監(jiān)控NodeManager
?資源分配與調(diào)度

NodeManager

整個集群有多個,負責(zé)單節(jié)點資源管理和使用
詳細功能
?單個節(jié)點上的資源管理和任務(wù)管理
?處理來自ResourceManager的命令
?處理來自ApplicationMaster的命令

ApplicationMaster

每個應(yīng)用有一個,負責(zé)應(yīng)用程序的管理
詳細功能
?數(shù)據(jù)切分
?為應(yīng)用程序申請資源,并進一步分配給內(nèi)部任務(wù)
?任務(wù)監(jiān)控與容錯


Container

?對任務(wù)運行環(huán)境的抽象
?描述一系列信息
?任務(wù)運行資源(節(jié)點、內(nèi)存、CPU)
?任務(wù)啟動命令
?任務(wù)運行環(huán)境

3.YARN容錯性

ResourceManager
?存在單點故障;
?正在基于ZooKeeper實現(xiàn)HA。
NodeManager
?失敗后,RM將失敗任務(wù)告訴對應(yīng)的AM;
?AM決定如何處理失敗的任務(wù)。
ApplicationMaster
?失敗后,由RM負責(zé)重啟;
?AM需處理內(nèi)部任務(wù)的容錯問題;
?RMAppMaster會保存已經(jīng)運行完成的Task,重啟后無需重新運行

4.YARN調(diào)度框架

雙層調(diào)度框架
?RM將資源分配給AM
?AM將資源進一步分配給各個Task
基于資源預(yù)留的調(diào)度策略
?資源不夠時,會為Task預(yù)留,直到資源充足
?與“all or nothing”策略不同(Apache Mesos)

5.Hadoop YARN資源調(diào)度?

YARN資源調(diào)度器

多類型資源調(diào)度
?采用DRF算法(論文:“Dominant Resource Fairness: Fair Allocation of Multiple Resource Types”)
?目前支持CPU和內(nèi)存兩種資源
提供多種資源調(diào)度器
?FIFO
?Fair Scheduler
?Capacity Scheduler
多租戶資源調(diào)度器
?支持資源按比例分配
?支持層級隊列劃分方式
?支持資源搶占

YARN資源隔離方案

?支持內(nèi)存和CPU兩種資源隔離
?內(nèi)存是一種“決定生死”的資源
?CPU是一種“影響快慢”的資源
?內(nèi)存隔離
?基于線程監(jiān)控的方案
?基于Cgroups的方案
?CPU隔離
?默認不對CPU資源進行隔離
?基于Cgroups的方案

YARN支持的調(diào)度語義

?支持的語義
?請求某個特定節(jié)點/機架上的特定資源量
?將某些節(jié)點加入(或移除)黑名單,不再為自己分配這些節(jié)點上的資源
?請求歸還某些資源
?不支持的語義
?請求任意節(jié)點/機架上的特定資源量
?請求一組或幾組符合某種特質(zhì)的資源
?超細粒度資源
?動態(tài)調(diào)整Container資源

6.Hadoop YARN上的計算框架

?離線計算框架:MapReduce
?DAG計算框架:Tez
?流式計算框架:Storm
?內(nèi)存計算框架:Spark

轉(zhuǎn)載于:https://www.cnblogs.com/tmeily/p/4427711.html

總結(jié)

以上是生活随笔為你收集整理的YARN应用场景、原理与资源调度的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。