延遲排程delay scheduling
如果申請乙個正忙的節點,一般方式是放寬容器的本地限制,去到相同機架上的另乙個節點來分配容器,但是實踐來說,如果多等待一小會(不超過幾秒),能夠增加在所請求的忙節點上分配容器的機會,則可以提高集群的效率,這就叫延遲排程。容量排程器和公平排程器都支援延遲排程
延遲排程的心跳機制(heartbeat)
每個節點管理器周期性地(預設每秒1次)向資源管理器傳送心跳請求,心跳中攜帶了節點管理器正在執行的容器/新容器可用的資源等資訊,這對於每個申請節點的應用來說,每次心跳都是排程機會scheduling opportunity
排程機會
等待多少次心跳的問題
容量排程器:
在放鬆節點限制為匹配同乙個機架上的其他節點之前,準備錯過的排程機會數量
公平排程器:
在排程器接受同一機架上的不同節點之前,將一直等待集群中的一半節點都已經給過排程機會
主導資源公平性dominant resource fairness drf
根據記憶體和cpu資源各自集群佔比確定使用者的主導資源,如果使用者a的主導資源是記憶體,每個容器記憶體佔比6%,使用者b的主導資源是cpu,每個容器cpu佔比3%,則a的容器申請資源是b容器的2倍,如果公平排程資源,即a佔記憶體的資源比例=b佔cpu的資源比例,則使用者a佔1/3數量容器,b佔2/3數量容器 (權威指南上翻譯的歧義是ab各占用一半)
計算方式參考
預設不使用主導資源公平性,資源計算只考慮記憶體,不考慮cpu,但也可對排程器配置使用drf
Yarn資源排程
由於yarn良好的相容性和擴充套件性,目前可以支援大部分資料引擎,所以了解yarn的資源排程原理很有必要,yarn主要由四個重要角色組成 yarn排程主要分為8個步驟如上圖所示 1.有yarnclient提交program資訊打拼resourcemanager,包括 應用 和應用需要的一切引數和環境...
Yarn資源排程
yarn的介紹 yarn是hadoop集群當中的資源管理系統模組,從hadoop2.0開始引入yarn模組,yarn可為各類計算框架提供資源的管理和排程,主要用於管理集群當中的資源 主要是伺服器的各種硬體資源,包括cpu,記憶體,磁碟,網路io等 以及排程執行在yarn上面的各種任務。yarn核心出...
yarn 資源排程
目錄關於yarn常用引數設定 yarn我們都知道主要是用於做資源排程,任務分配等功能的,那麼在hadoop當中,究竟使用什麼演算法來進行任務排程就需要我們關注了,hadoop支援好幾種任務的排程方式,不同的場景需要使用不同的任務排程器.把任務按提交的順序排成乙個佇列,這是乙個先進先出佇列,在進行資源...