溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Hadoop YARN常見問題有哪些

發布時間:2021-11-17 16:08:48 來源:億速云 閱讀:156 作者:iii 欄目:web開發

本篇內容主要講解“Hadoop YARN常見問題有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Hadoop YARN常見問題有哪些”吧!

(1) 默認情況下,各個節點的負載不均衡(任務數目不同),有的節點很多任務在跑,有的沒有任務,怎樣讓各個節點任務數目盡可能均衡呢?

答: 默認情況下,資源調度器處于批調度模式下,即一個心跳會盡可能多的分配任務,這樣,優先發送心跳過來的節點將會把任務領光(前提:任務數目遠小于集群可以同時運行的任務數量),為了避免該情況發生,可以按照以下說明配置參數:

如果采用的是fair scheduler,可在yarn-site.xml中,將參數yarn.scheduler.fair.max.assign設置為1(默認是-1,)

如果采用的是capacity scheduler(默認調度器),則不能配置,目前該調度器不帶負載均衡之類的功能。

當然,從hadoop集群利用率角度看,該問題不算問題,因為一般情況下,用戶任務數目要遠遠大于集群的并發處理能力的,也就是說,通常情況下,集群時刻處于忙碌狀態,沒有節點一直空閑著。

(2)某個節點上任務數目太多,資源利用率太高,怎么控制一個節點上的任務數目?

答:一個節點上運行的任務數目主要由兩個因素決定,一個是NodeManager可使用的資源總量,一個是單個任務的資源需求量,比如一個 NodeManager上可用資源為8 GB內存,8 cpu,單個任務資源需求量為1 GB內存,1cpu,則該節點最多運行8個任務。

NodeManager上可用資源是由管理員在配置文件yarn-site.xml中配置的,相關參數如下:

yarn.nodemanager.resource.memory-mb:總的可用物理內存量,默認是8096

yarn.nodemanager.resource.cpu-vcores:總的可用CPU數目,默認是8

對于MapReduce而言,每個作業的任務資源量可通過以下參數設置:

mapreduce.map.memory.mb:物理內存量,默認是1024

mapreduce.map.cpu.vcores:CPU數目,默認是1

注:以上這些配置屬性的詳細介紹可參考文章:Hadoop YARN配置參數剖析(1)—RM與NM相關參數。

默認情況,各個調度器只會對內存資源進行調度,不會考慮CPU資源,你需要在調度器配置文件中進行相關設置

(3)如何設置單個任務占用的內存量和CPU數目?

答:對于MapReduce而言,每個作業的任務資源量可通過以下參數設置:

mapreduce.map.memory.mb:物理內存量,默認是1024

mapreduce.map.cpu.vcores:CPU數目,默認是1

需要注意的是,默認情況,各個調度器只會對內存資源進行調度,不會考慮CPU資源,你需要在調度器配置文件中進行相關設置。

(4) 用戶給任務設置的內存量為1000MB,為何最終分配的內存卻是1024MB?

答:為了易于管理資源和調度資源,Hadoop  YARN內置了資源規整化算法,它規定了最小可申請資源量、***可申請資源量和資源規整化因子,如果應用程序申請的資源量小于最小可申請資源量,則 YARN會將其大小改為最小可申請量,也就是說,應用程序獲得資源不會小于自己申請的資源,但也不一定相等;如果應用程序申請的資源量大于***可申請資源 量,則會拋出異常,無法申請成功;規整化因子是用來規整化應用程序資源的,應用程序申請的資源如果不是該因子的整數倍,則將被修改為最小的整數倍對應的 值,公式為ceil(a/b)*b,其中a是應用程序申請的資源,b為規整化因子。

以上介紹的參數需在yarn-site.xml中設置,相關參數如下:

yarn.scheduler.minimum-allocation-mb:最小可申請內存量,默認是1024

yarn.scheduler.minimum-allocation-vcores:最小可申請CPU數,默認是1

yarn.scheduler.maximum-allocation-mb:***可申請內存量,默認是8096

yarn.scheduler.maximum-allocation-vcores:***可申請CPU數,默認是4

對于規整化因子,不同調度器不同,具體如下:

FIFO和Capacity Scheduler,規整化因子等于最小可申請資源量,不可單獨配置。

Fair Scheduler:規整化因子通過參數yarn.scheduler.increment-allocation-mb和yarn.scheduler.increment-allocation-vcores設置,默認是1024和1。

通過以上介紹可知,應用程序申請到資源量可能大于資源申請的資源量,比如YARN的最小可申請資源內存量為1024,規整因子是1024,如果一個應用程序申請1500內存,則會得到2048內存,如果規整因子是512,則得到1536內存。

(5)我們使用的是Fairscheduler,配置了多個隊列,當用戶提交一個作業,指定的隊列不存在時,Fair Scheduler會自動創建一個新隊列而不是報錯(比如報錯:隊列XXX不存在),如何避免這種情況發生?

答:在yarn-site.xml中設置yarn.scheduler.fair.allow-undeclared-pools,將它的值配置為false(默認是true)。

(6)使用Hadoop 2.0過程中,遇到了錯誤,怎樣排查錯誤?

答:從hadoop 日志入手

到此,相信大家對“Hadoop YARN常見問題有哪些”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女