Yarn 資源排程策略

2021-07-25 16:19:48 字數 1172 閱讀 9832

在yarn中有三種排程器可以選擇:fifo scheduler ,capacity scheduler,fair scheduler。

配置方法

fifo scheduler把應用按提交的順序排成乙個佇列,這是乙個先進先出佇列,在進行資源分配的時候,先給佇列中最頭上的應用進行分配資源,待最頭上的應用需求滿足後再給下乙個分配,以此類推。

fifo scheduler它並不適用於共享集群。大的應用可能會占用所有集群資源,這就導致其它應用被阻塞。

capacity排程器,有乙個專門的佇列用來執行小任務,但是為小任務專門設定乙個佇列會預先占用一定的集群資源,這就導致大任務的執行時間會落後於使用fifo排程器時的時間。

capacity 排程器允許多個組織共享整個集群,每個組織可以獲得集群的一部分計算能力。通過為每個組織分配專門的佇列,然後再為每個佇列分配一定的集群資源,這樣整個集群就可以通過設定多個佇列的方式給多個組織提供服務了。除此之外,佇列內部又可以垂直劃分,這樣乙個組織內部的多個成員就可以共享這個佇列資源了,在乙個佇列內部,資源的排程是採用的是先進先出(fifo)策略。

當佇列已滿,capacity排程器不會強制釋放container,當乙個佇列資源不夠用時,這個佇列只能獲得其它佇列釋放後的container資源,這個稱為「彈性佇列」,也可以設定最大值,防止過多占用其他佇列的資源。

fair排程器中,我們不需要預先占用一定的系統資源,fair排程器會為所有執行的job動態的調整系統資源。如下圖所示,當第乙個大job提交時,只有這乙個job在執行,此時它獲得了所有集群資源;當第二個小任務提交後,fair排程器會分配一半資源給這個小任務,讓這兩個任務公平的共享集群資源。

需要注意的是,在下圖fair排程器中,從第二個任務提交到獲得資源會有一定的延遲,因為它需要等待第乙個任務釋放占用的container。小任務執行完成之後也會釋放自己占用的資源,大任務又獲得了全部的系統資源。最終的效果就是fair排程器即得到了高的資源利用率又能保證小任務及時完成。

YARN資源排程策略

yarn 資源排程器是直接從mr基礎上修改而來,它提供了三種可用資源排程器 fifo scheduler capacity scheduler,fair scheduler。一 排程原理 1.1 fifo scheduler fifo是hadoop設計之初提供的乙個最簡單的排程機制 即先來先服務。是...

Yarn資源排程

由於yarn良好的相容性和擴充套件性,目前可以支援大部分資料引擎,所以了解yarn的資源排程原理很有必要,yarn主要由四個重要角色組成 yarn排程主要分為8個步驟如上圖所示 1.有yarnclient提交program資訊打拼resourcemanager,包括 應用 和應用需要的一切引數和環境...

Yarn資源排程

yarn的介紹 yarn是hadoop集群當中的資源管理系統模組,從hadoop2.0開始引入yarn模組,yarn可為各類計算框架提供資源的管理和排程,主要用於管理集群當中的資源 主要是伺服器的各種硬體資源,包括cpu,記憶體,磁碟,網路io等 以及排程執行在yarn上面的各種任務。yarn核心出...