精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Yarn調度器(Scheduler)詳解

開發 架構
理想情況下,我們應用對Yarn資源的請求應該立刻得到滿足,但現實情況資源往往是有限的,特別是在一個很繁忙的集群,一個應用資源的請求經常需要等待一段時間才能的到相應的資源。

[[379189]]

本文轉載自微信公眾號「Java大數據與數據倉庫」,作者老董。轉載本文請聯系Java大數據與數據倉庫公眾號。  

目錄

1. Yarn調度器介紹

  • FIFO(先進先出調度器)
  • Capacity(容量調度器)
  • Fair(公平調度器)
  • Fair與Capacity區別

2.Yarn調度器配置

  • Fair
  • Capacity配置(默認配置)
  • FIFO

理想情況下,我們應用對Yarn資源的請求應該立刻得到滿足,但現實情況資源往往是有限的,特別是在一個很繁忙的集群,一個應用資源的請求經常需要等待一段時間才能的到相應的資源。在Yarn中,負責給應用分配資源的就是Scheduler。其實調度本身就是一個難題,很難找到一個完美的策略可以解決所有的應用場景。為此,Yarn提供了多種調度器和可配置的策略供我們選擇。YARN架構如下:

 

  • ResourceManager(RM):負責對各NM上的資源進行統一管理和調度,將AM分配空閑的Container運行并監控其運行狀態。對AM申請的資源請求分配相應的空閑Container。主要由兩個組件構成:調度器(Scheduler)和應用程序管理器(Applications Manager)。
  • 調度器(Scheduler):調度器根據容量、隊列等限制條件(如每個隊列分配一定的資源,最多執行一定數量的作業等),將系統中的資源分配給各個正在運行的應用程序。調度器僅根據各個應用程序的資源需求進行資源分配,而資源分配單位是Container,從而限定每個任務使用的資源量。Scheduler不負責監控或者跟蹤應用程序的狀態,也不負責任務因為各種原因而需要的重啟(由ApplicationMaster負責)。總之,調度器根據應用程序的資源要求,以及集群機器的資源情況,為用程序分配封裝在Container中的資源。調度器是可插拔的,例如CapacityScheduler、FairScheduler。(PS:在實際應用中,只需要簡單配置即可)
  • 應用程序管理器(Application Manager):應用程序管理器負責管理整個系統中所有應用程序,包括應用程序提交、與調度器協商資源以啟動AM、監控AM運行狀態并在失敗時重新啟動等,跟蹤分給的Container的進度、狀態也是其職責。ApplicationMaster是應用框架,它負責向ResourceManager協調資源,并且與NodeManager協同工作完成Task的執行和監控。MapReduce就是原生支持的一種框架,可以在YARN上運行Mapreduce作業。有很多分布式應用都開發了對應的應用程序框架,用于在YARN上運行任務,例如Spark,Storm等。如果需要,我們也可以自己寫一個符合規范的YARN application。
  • NodeManager(NM):NM是每個節點上的資源和任務管理器。它會定時地向RM匯報本節點上的資源使用情況和各個Container的運行狀態;同時會接收并處理來自AM的Container 啟動/停止等請求。ApplicationMaster(AM):用戶提交的應用程序均包含一個AM,負責應用的監控,跟蹤應用執行狀態,重啟失敗任務等。
  • Container:是YARN中的資源抽象,它封裝了某個節點上的多維度資源,如內存、CPU、磁盤、網絡等,當AM向RM申請資源時,RM為AM返回的資源便是用Container 表示的。YARN會為每個任務分配一個Container且該任務只能使用該Container中描述的資源。

1. Yarn調度器介紹

1.1. FIFO (先進先出調度器)

FIFO Scheduler把應用按提交的順序排成一個隊列,這是一個先進先出隊列,在進行資源分配的時候,先給隊列中最頭上的應用進行分配資源,待最頭上的應用需求滿足后再給下一個分配,以此類推。FIFO Scheduler是最簡單也是最容易理解的調度器,也不需要任何配置,但它并不適用于共享集群。大的應用可能會占用所有集群資源,這就導致其它應用被阻塞。在共享集群中,更適合采用Capacity Scheduler或Fair Scheduler,這兩個調度器都允許大任務和小任務在提交的同時獲得一定的系統資源。下面“Yarn調度器對比圖”展示了這幾個調度器的區別,從圖中可以看出,在FIFO 調度器中,小任務會被大任務阻塞。

 

1.2. Capacity (容量調度器)

yarn-site.xml中默認配置的資源調度器。而對于Capacity調度器,有一個專門的隊列用來運行小任務,但是為小任務專門設置一個隊列會預先占用一定的集群資源,這就導致大任務的執行時間會落后于使用FIFO調度器時的時間。用這個資源調度器,就可以配置yarn資源隊列,這個后面后介紹用到。

 

1.3. Fair (公平調度器)

Fair調度器的設計目標是為所有的應用分配公平的資源(對公平的定義可以通過參數來設置)。在上面的“Yarn調度器對比圖”展示了一個隊列中兩個應用的公平調度;當然,公平調度在也可以在多個隊列間工作。舉個例子,假設有兩個用戶A和B,他們分別擁有一個隊列。當A啟動一個job而B沒有任務時,A會獲得全部集群資源;當B啟動一個job后,A的job會繼續運行,不過一會兒之后兩個任務會各自獲得一半的集群資源。如果此時B再啟動第二個job并且其它job還在運行,則它將會和B的第一個job共享B這個隊列的資源,也就是B的兩個job會用于四分之一的集群資源,而A的job仍然用于集群一半的資源,結果就是資源最終在兩個用戶之間平等的共享。在Fair調度器中,我們不需要預先占用一定的系統資源,Fair調度器會為所有運行的job動態的調整系統資源。當第一個大job提交時,只有這一個job在運行,此時它獲得了所有集群資源;當第二個小任務提交后,Fair調度器會分配一半資源給這個小任務,讓這兩個任務公平的共享集群資源。

a) 公平調度器,就是能夠共享整個集群的資源

b) 不用預先占用資源,每一個作業都是共享的

c) 每當提交一個作業的時候,就會占用整個資源。如果再提交一個作業,那么第一個作業就會分給第二個作業一部分資源,第一個作業也就釋放一部分資源。再提交其他的作業時,也同理。。。。也就是說每一個作業進來,都有機會獲取資源。

 

1.4. Fair Scheduler與Capacity Scheduler區別

  • 資源公平共享:在每個隊列中,Fair Scheduler可選擇按照FIFO、Fair或DRF策略為應用程序分配資源。Fair策略即平均分配,默認情況下,每個隊列采用該方式分配資源
  • 支持資源搶占:當某個隊列中有剩余資源時,調度器會將這些資源共享給其他隊列,而當該隊列中有新的應用程序提交時,調度器要為它回收資源。為了盡可能降低不必要的計算浪費,調度器采用了先等待再強制回收的策略,即如果等待一段時間后尚有未歸還的資源,則會進行資源搶占;從那些超額使用資源的隊列中殺死一部分任務,進而釋放資源
  • 負載均衡:Fair Scheduler提供了一個基于任務數的負載均衡機制,該機制盡可能將系統中的任務均勻分配到各個節點上。此外,用戶也可以根據自己的需求設計負載均衡機制
  • 調度策略靈活配置:Fiar Scheduler允許管理員為每個隊列單獨設置調度策略(當前支持FIFO、Fair或DRF三種)
  • 提高小應用程序響應時間:由于采用了最大最小公平算法,小作業可以快速獲取資源并運行完成

2.Yarn調度器配置

yarn資源調度器是在yarn-site.xml中配置。

2.1. Fair Scheduler

Fair Scheduler的配置選項包括兩部分:

一部分在yarn-site.xml中,主要用于配置調度器級別的參數

一部分在一個自定義配置文件(默認是fair-scheduler.xml)中,主要用于配置各個隊列的資源量、權重等信息。

2.1.1 yarn-site.xml

yarn-site.xml介紹

  1. <!– scheduler start –> 
  2. <property> 
  3.     <name>yarn.resourcemanager.scheduler.class</name
  4.     <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler</value> 
  5.     <description>配置Yarn使用的調度器插件類名;Fair Scheduler對應的是:org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler</description> 
  6. </property> 
  7. <property> 
  8.     <name>yarn.scheduler.fair.allocation.file</name
  9.     <value>/etc/hadoop/conf/fair-scheduler.xml</value> 
  10.     <description>配置資源池以及其屬性配額的XML文件路徑(本地路徑)</description> 
  11. </property> 
  12. <property> 
  13.     <name>yarn.scheduler.fair.preemption</name
  14.     <value>true</value> 
  15.     <description>開啟資源搶占,default is True</description> 
  16. </property> 
  17. <property> 
  18.     <name>yarn.scheduler.fair.user-as-default-queue</name
  19.     <value>true</value> 
  20.     <description>設置成true,當任務中未指定資源池的時候,將以用戶名作為資源池名。這個配置就實現了根據用戶名自動分配資源池。default is True</description> 
  21. </property> 
  22. <property> 
  23.     <name>yarn.scheduler.fair.allow-undeclared-pools</name
  24.     <value>false</value> 
  25.     <description>是否允許創建未定義的資源池。如果設置成true,yarn將會自動創建任務中指定的未定義過的資源池。設置成false之后,任務中指定的未定義的資源池將無效,該任務會被分配到default資源池中。,default is True</description> 
  26. </property> 
  27. <!– scheduler end –> 

2.1.2 fair-scheduler.xml

假設在生產環境Yarn中,總共有四類用戶需要使用集群,production、spark、default、streaming。為了使其提交的任務不受影響,我們在Yarn上規劃配置了四個資源池,分別為production,spark,default,streaming。并根據實際業務情況,為每個資源池分配了相應的資源及優先級等,default用于開發測試目的.

ResourceManager上fair-scheduler.xml配置如下:

  1. <?xml version="1.0"?> 
  2. <allocations> 
  3.     <queue name="root"
  4.         <aclSubmitApps></aclSubmitApps> 
  5.         <aclAdministerApps></aclAdministerApps> 
  6.         <queue name="production"
  7.             <minResources>8192mb,8vcores</minResources> 
  8.             <maxResources>419840mb,125vcores</maxResources> 
  9.             <maxRunningApps>60</maxRunningApps> 
  10.             <schedulingMode>fair</schedulingMode> 
  11.             <weight>7.5</weight> 
  12.             <aclSubmitApps>*</aclSubmitApps> 
  13.             <aclAdministerApps>production</aclAdministerApps> 
  14.         </queue> 
  15.         <queue name="spark"
  16.             <minResources>8192mb,8vcores</minResources> 
  17.             <maxResources>376480mb,110vcores</maxResources> 
  18.             <maxRunningApps>50</maxRunningApps> 
  19.             <schedulingMode>fair</schedulingMode> 
  20.             <weight>1</weight> 
  21.             <aclSubmitApps>*</aclSubmitApps> 
  22.             <aclAdministerApps>spark</aclAdministerApps> 
  23.         </queue> 
  24.         <queue name="default"
  25.             <minResources>8192mb,8vcores</minResources> 
  26.             <maxResources>202400mb,20vcores</maxResources> 
  27.             <maxRunningApps>20</maxRunningApps> 
  28.             <schedulingMode>FIFO</schedulingMode> 
  29.             <weight>0.5</weight> 
  30.             <aclSubmitApps>*</aclSubmitApps> 
  31.             <aclAdministerApps>*</aclAdministerApps> 
  32.         </queue> 
  33.         <queue name="streaming"
  34.             <minResources>8192mb,8vcores</minResources> 
  35.             <maxResources>69120mb,16vcores</maxResources> 
  36.             <maxRunningApps>20</maxRunningApps> 
  37.             <schedulingMode>fair</schedulingMode> 
  38.             <aclSubmitApps>*</aclSubmitApps> 
  39.             <weight>1</weight> 
  40.             <aclAdministerApps>streaming</aclAdministerApps> 
  41.         </queue> 
  42.     </queue> 
  43.     <user name="production"
  44.         <!-- 對于特定用戶的配置:production最多可以同時運行的任務 --> 
  45.         <maxRunningApps>100</maxRunningApps> 
  46.     </user
  47.     <user name="default"
  48.         <!-- 對于默認用戶配置最多可以同時運行的任務 --> 
  49.         <maxRunningApps>10</maxRunningApps> 
  50.     </user
  51.  
  52.     <!-- users max running apps --> 
  53.     <userMaxAppsDefault>50</userMaxAppsDefault> 
  54.     <!--默認的用戶最多可以同時運行的任務 --> 
  55.     <queuePlacementPolicy> 
  56.         <rule name="specified"/>  
  57.         <rule name="primaryGroup" create="false" /> 
  58.         <rule name="secondaryGroupExistingQueue" create="false" /> 
  59.         <rule name="default" queue="default"/> 
  60.     </queuePlacementPolicy> 
  61. </allocations> 

參數介紹:

  • minResources:最少資源保證量,設置格式為“X mb, Y vcores”,當一個隊列的最少資源保證量未滿足時,它將優先于其他同級隊列獲得資源,對于不同的調度策略(后面會詳細介紹),最少資源保證量的含義不同,對于fair策略,則只考慮內存資源,即如果一個隊列使用的內存資源超過了它的最少資源量,則認為它已得到了滿足;對于drf策略,則考慮主資源使用的資源量,即如果一個隊列的主資源量超過它的最少資源量,則認為它已得到了滿足。
  • maxResources:最多可以使用的資源量,fair scheduler會保證每個隊列使用的資源量不會超過該隊列的最多可使用資源量。
  • maxRunningApps:最多同時運行的應用程序數目。通過限制該數目,可防止超量Map Task同時運行時產生的中間輸出結果撐爆磁盤。
  • weight:資源池權重,主要用在資源共享之時,weight越大,拿到的資源越多。比如一個pool中有20GB內存用不了,這時候可以共享給其他pool,其他每個pool拿多少,就是由權重決定的
  • aclSubmitApps:可向隊列中提交應用程序的Linux用戶或用戶組列表,默認情況下為“*”,表示任何用戶均可以向該隊列提交應用程序。需要注意的是,該屬性具有繼承性,即子隊列的列表會繼承父隊列的列表。配置該屬性時,用戶之間或用戶組之間用“,”分割,用戶和用戶組之間用空格分割,比如“user1, user2 group1,group2”。
  • aclAdministerApps:允許管理任務的用戶名和組;一個隊列的管理員可管理該隊列中的資源和應用程序,比如可殺死任意應用程序。
  • minSharePreemptionTimeout :最小共享量搶占時間。如果一個資源池在該時間內使用的資源量一直低于最小資源量,則開始搶占資源。
  • schedulingMode/schedulingPolicy:隊列采用的調度模式,可以是fifo、fair或者drf。
  • 管理員也可為單個用戶添加maxRunningJobs屬性限制其最多同時運行的應用程序數目。此外,管理員也可通過以下參數設置以上屬性的默認值:
  • userMaxJobsDefault:用戶的maxRunningJobs屬性的默認值。
  • defaultMinSharePreemptionTimeout :隊列的minSharePreemptionTimeout屬性的默認值。
  • defaultPoolSchedulingMode:隊列的schedulingMode屬性的默認值。
  • fairSharePreemptionTimeout:公平共享量搶占時間。如果一個資源池在該時間內使用資源量一直低于公平共享量的一半,則開始搶占資源。

這樣,每個用戶組下的用戶提交任務時候,會到相應的資源池中,而不影響其他業務。隊列的層次是通過嵌套

元素實現的。所有的隊列都是root隊列的孩子,即使沒有配到元素里。Fair調度器中的隊列有一個權重屬性(這個權重就是對公平的定義),并把這個屬性作為公平調度的依據。在這個例子中,當調度器分配集群7.5,1,1,0.5資源給production,spark,streaming,default時便視作公平,這里的權重并不是百分比。注意,對于在沒有配置文件時按用戶自動創建的隊列,它們仍有權重并且權重值為1。每個隊列內部仍可以有不同的調度策略。隊列的默認調度策略可以通過頂級元素進行配置,如果沒有配置,默認采用公平調度。盡管是Fair調度器,其仍支持在隊列級別進行FIFO調度。每個隊列的調度策略可以被其內部的元素覆蓋,在上面這個例子中,default隊列就被指定采用fifo進行調度,所以,對于提交到default隊列的任務就可以按照FIFO規則順序的執行了。需要注意,spark,production,streaming,default之間的調度仍然是公平調度。每個隊列可配置最大、最小資源占用數和最大可運行的應用的數量。

Fair調度器采用了一套基于規則的系統來確定應用應該放到哪個隊列。在上面的例子中,元素定義了一個規則列表,其中的每個規則會被逐個嘗試直到匹配成功。例如,上例第一個規則specified,則會把應用放到它指定的隊列中,若這個應用沒有指定隊列名或隊列名不存在,則說明不匹配這個規則,然后嘗試下一個規則。primaryGroup規則會嘗試把應用放在以用戶所在的Unix組名命名的隊列中,如果沒有這個隊列,不創建隊列轉而嘗試下一個規則。當前面所有規則不滿足時,則觸發default規則,把應用放在default隊列中。

當然,我們可以不配置queuePlacementPolicy規則,調度器則默認采用如下規則:

  1. <queuePlacementPolicy> 
  2.       <rule name="specified" /> 
  3.       <rule name="user" /> 
  4. </queuePlacementPolicy> 

上面規則意思是除非隊列被準確的定義,否則會以用戶名為隊列名創建隊列。還有一個簡單的配置策略可以使得所有的應用放入同一個隊列(default),這樣就可以讓所有應用之間平等共享集群而不是在用戶之間。這個配置的定義如下:

  1. <queuePlacementPolicy> 
  2.      <rule name="default" /> 
  3. </queuePlacementPolicy> 

實現上面功能我們還可以不使用配置文件,直接設置yarn.scheduler.fair.user-as-default-queue=false,這樣應用便會被放入default 隊列,而不是各個用戶名隊列。另外,我們還可以設置yarn.scheduler.fair.allow-undeclared-pools=false,這樣用戶就無法創建隊列了。

當一個job提交到一個繁忙集群中的空隊列時,job并不會馬上執行,而是阻塞直到正在運行的job釋放系統資源。為了使提交job的執行時間更具預測性(可以設置等待的超時時間),Fair調度器支持搶占。搶占就是允許調度器殺掉占用超過其應占份額資源隊列的containers,這些containers資源便可被分配到應該享有這些份額資源的隊列中。需要注意搶占會降低集群的執行效率,因為被終止的containers需要被重新執行。可以通過設置一個全局的參數yarn.scheduler.fair.preemption=true來啟用搶占功能。此外,還有兩個參數用來控制搶占的過期時間(這兩個參數默認沒有配置,需要至少配置一個來允許搶占Container):

  1. minSharePreemptionTimeout 
  2. fairSharePreemptionTimeout 

如果隊列在minimum share preemption timeout指定的時間內未獲得最小的資源保障,調度器就會搶占containers。我們可以通過配置文件中的頂級元素</defaultminsharepreemptiontimeout></defaultminsharepreemptiontimeout></defaultminsharepreemptiontimeout></defaultminsharepreemptiontimeout></defaultminsharepreemptiontimeout></defaultminsharepreemptiontimeout></defaultminsharepreemptiontimeout></defaultminsharepreemptiontimeout></defaultminsharepreemptiontimeout></defaultminsharepreemptiontimeout></defaultminsharepreemptiontimeout></defaultminsharepreemptiontimeout></defaultminsharepreemptiontimeout>為所有隊列配置這個超時時間;我們還可以在元素內配置元素來為某個隊列指定超時時間。</defaultminsharepreemptiontimeout>

與之類似,如果隊列在fair share preemption timeout指定時間內未獲得平等的資源的一半(這個比例可以配置),調度器則會進行搶占containers。這個超時時間可以通過頂級元素<defaultfairsharepreemptiontimeout style="font-size: inherit;color: inherit;line-height: inherit;">和元素級元素分別配置所有隊列和某個隊列的超時時間。上面提到的比例可以通過<defaultfairsharepreemptionthreshold style="font-size: inherit;color: inherit;line-height: inherit;">(配置所有隊列)和(配置某個隊列)進行配置,默認是0.5。</defaultfairsharepreemptionthreshold></defaultfairsharepreemptiontimeout>

需要注意的是,所有客戶端提交任務的用戶和用戶組的對應關系,需要維護在ResourceManager上,ResourceManager在分配資源池時候,是從ResourceManager上讀取用戶和用戶組的對應關系的,否則就會被分配到default資源池。在日志中出現”UserGroupInformation: No groups available for user”類似的警告。而客戶端機器上的用戶對應的用戶組無關緊要。

每次在ResourceManager上新增用戶或者調整資源池配額后,需要執行下面的命令刷新使其生效.

yarn rmadmin -refreshQueues yarn rmadmin -refreshUserToGroupsMappings

動態更新只支持修改資源池配額,如果是新增或減少資源池,則需要重啟Yarn集群.

Fair Scheduer各資源池配置及使用情況,在ResourceManager的WEB監控頁面上也可以看到: http://ResourceManagerHost:8088/cluster/scheduler

 

2.2 Capacity 配置

hadoop2.7默認使用的是Capacity Scheduler容量調度器

yarn-site.xml

  1. <property> 
  2.   <name>yarn.resourcemanager.scheduler.class</name
  3.   <value>org.apache.hadoop.yarn.server.resourcemanager.capacity.CapacityScheduler</value> 
  4. </property> 

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

一個job可能使用不了整個隊列的資源。然而如果這個隊列中運行多個job,如果這個隊列的資源夠用,那么就分配給這些job,如果這個隊列的資源不夠用了呢?其實Capacity調度器仍可能分配額外的資源給這個隊列,這就是“彈性隊列”(queue elasticity)的概念。

在正常的操作中,Capacity調度器不會強制釋放Container,當一個隊列資源不夠用時,這個隊列只能獲得其它隊列釋放后的Container資源。當然,我們可以為隊列設置一個最大資源使用量,以免這個隊列過多的占用空閑資源,導致其它隊列無法使用這些空閑資源,這就是”彈性隊列”需要權衡的地方。

假設我們有如下層次的隊列:

  1. root 
  2. ├── prod 
  3. └── dev 
  4.     ├── eng 
  5.     └── science 

下面是一個簡單的Capacity調度器的配置文件,文件名為capacity-scheduler.xml。在這個配置中,在root隊列下面定義了兩個子隊列prod和dev,分別占40%和60%的容量。需要注意,一個隊列的配置是通過屬性yarn.sheduler.capacity..指定的,代表的是隊列的繼承樹,如root.prod隊列,一般指capacity和maximum-capacity。

  1. <?xml version="1.0"?> 
  2. <configuration> 
  3.     <property> 
  4.         <name>yarn.scheduler.capacity.root.queues(/&eae) 
  5.         <value>prod,dev</value> 
  6.     </property> 
  7.     <property> 
  8.         <name>yarn.scheduler.capacity.root.dev.queues</tta*e>  
  9.         <value>eng,science</value> 
  10.     </property> 
  11.     <property> 
  12.         <name>yarn.scheduler.capacity.root.prod.capacity</name
  13.         <value>40</value> 
  14.     </property> 
  15.     <property> 
  16.         <name>yarn.scheduler.capacity.root.dev.capacity</name
  17.         <value >60</value> 
  18.     </property> 
  19.     <property> 
  20.         <name>yarn.scheduler.capacity.root.dev.maximuin-capacity</name
  21.         <value>75</value> 
  22.     </property> 
  23.     <property> 
  24.         <name>yarn.scheduler.capacity.root.dev.eng.capacity</name
  25.         <value >50</value> 
  26.     </property> 
  27.     <property> 
  28.         <name>yarn.scheduler.capacity.root.dev.science.capacity</name
  29.         <value >50</value> 
  30.     </property> 
  31. </configuration> 

我們可以看到,dev隊列又被分成了eng和science兩個相同容量的子隊列。dev的maximum-capacity屬性被設置成了75%,所以即使prod隊列完全空閑dev也不會占用全部集群資源,也就是說,prod隊列仍有25%的可用資源用來應急。我們注意到,eng和science兩個隊列沒有設置maximum-capacity屬性,也就是說eng或science隊列中的job可能會用到整個dev隊列的所有資源(最多為集群的75%)。而類似的,prod由于沒有設置maximum-capacity屬性,它有可能會占用集群全部資源。Capacity容器除了可以配置隊列及其容量外,我們還可以配置一個用戶或應用可以分配的最大資源數量、可以同時運行多少應用、隊列的ACL認證等。

關于隊列的設置,這取決于我們具體的應用。比如,在MapReduce中,我們可以通過mapreduce.job.queuename屬性指定要用的隊列。如果隊列不存在,我們在提交任務時就會收到錯誤。如果我們沒有定義任何隊列,所有的應用將會放在一個default隊列中。

注意:對于Capacity調度器,我們的隊列名必須是隊列樹中的最后一部分,如果我們使用隊列樹則不會被識別。比如,在上面配置中,我們使用prod和eng作為隊列名是可以的,但是如果我們用root.dev.eng或者dev.eng是無效的。

2.3 FIFO Scheduler

yarn-site.xml文件

  1. <property> 
  2.   <name>yarn.resourcemanager.scheduler.class</name
  3.   <value>org.apache.hadoop.yarn.server.resourcemanager.fifo.FifoScheduler</value> 
  4. </property> 

 

責任編輯:武曉燕 來源: Java大數據與數據倉庫
相關推薦

2022-12-06 08:30:06

SchedulerReact

2017-08-23 11:10:44

Kubernetes 調度詳解

2022-08-27 22:36:18

Kubernetes調度器

2019-08-02 11:28:45

HadoopYARN調度系統

2014-01-07 17:18:51

HadoopYARN

2014-01-07 16:34:36

HadoopYARN

2025-07-04 08:43:51

2011-01-21 07:36:00

LinuxBFSCFS

2022-08-19 18:03:12

Scheduler

2013-01-21 13:22:56

IBMdW

2011-01-13 13:59:14

2023-04-17 08:13:13

KubernetesPod

2023-11-20 22:55:00

Goroutine調度器

2024-03-22 07:48:51

ReactScheduler底層調度器

2017-05-08 11:37:41

Go調度器源碼分析程序

2010-06-04 09:42:47

Linux 測試cpu

2010-06-04 09:42:23

MySQL 事件調度器

2021-08-30 10:28:09

FlinkSpark on k8分布式

2023-11-29 09:29:48

Kuberneteskube

2023-03-03 15:37:32

GMP 模型goroutine
點贊
收藏

51CTO技術棧公眾號

欧美一级片在线播放| 欧美岛国在线观看| 亚洲女人毛片| 国产精品久久久久久久久久久久久久久久| 香蕉综合视频| 福利视频一区二区| 亚洲日本欧美在线| www.四虎在线观看| 香蕉国产精品偷在线观看不卡| 亚洲香蕉伊综合在人在线视看| 免费一区二区三区在线观看| 在线看三级电影| 91免费国产在线观看| 国产成人精品国内自产拍免费看 | av动漫免费观看| 精品人妻一区二区三区四区不卡| 在线播放亚洲| 日韩中文字幕在线看| 久久久久久婷婷| 性高爱久久久久久久久| 亚洲免费资源在线播放| 久久精品一区二区三区不卡免费视频| 丰满熟女人妻一区二区三| 亚洲综合自拍| 亚洲美女自拍视频| 成人不卡免费视频| 在线观看福利电影| 一区二区三区日韩在线观看| 色吧亚洲视频| 少妇高潮一区二区三区69| 男男视频亚洲欧美| 国产做受高潮69| 日本 欧美 国产| 亚洲精品合集| 欧美成人三级在线| 免费看污黄网站| 理论不卡电影大全神| 亚洲欧美一区二区三区孕妇| 欧美男人的天堂| 性生活免费网站| 久久99精品久久久久| 欧美亚洲国产精品| 欧美成人免费观看视频| 日韩欧美字幕| 亚洲欧洲美洲在线综合| 182在线视频| 18国产精品| 在线不卡中文字幕| 天天干天天干天天干天天干天天干| 电影在线观看一区| 一二三区精品视频| 中文字幕第一页亚洲| 午夜视频在线观看网站| 国产日韩综合av| 欧美福利精品| 亚洲av成人精品毛片| 成人激情小说乱人伦| 亚洲综合社区网| 亚洲一区在线观| 麻豆精品一区二区三区| 国产精品你懂得| 一区二区视频免费观看| 免费精品视频在线| 国产在线视频欧美| 亚洲无码精品国产| 久久99精品久久久久| 亚洲精品日韩av| 国产后入清纯学生妹| 国产aⅴ综合色| 国产精品日本一区二区| 人妻偷人精品一区二区三区| 成人一区二区三区视频在线观看| 丁香五月网久久综合| 亚洲成熟女性毛茸茸| 成人性生交大合| 国产亚洲精品自在久久| 水中色av综合| 国产亚洲欧美日韩俺去了| 日本一区二区三区精品视频| 成人性生交大片免费看午夜| 国产精品国产自产拍高清av| 偷拍盗摄高潮叫床对白清晰| 亚洲羞羞网站| 精品福利视频导航| 亚洲 欧美 日韩系列| 成人在线视频区| 亚洲精品一区在线观看| 成人乱码一区二区三区av| 成人羞羞动漫| 大胆欧美人体视频| av大片免费观看| 日韩 欧美一区二区三区| 国产日韩欧美成人| 黄色一级大片在线免费看国产一 | 国产精品久久久久一区二区| 在线观看不卡的av| 成人激情免费网站| 日韩影院一区| 欧美黑人猛交的在线视频| 精品成人国产在线观看男人呻吟| 成人黄色一区二区| 免费观看在线一区二区三区| 亚洲国产精品成人一区二区| 人妻熟人中文字幕一区二区| 牛牛国产精品| 日韩免费精品视频| 国产高清免费在线观看| 久久亚洲精品国产精品紫薇| 少妇高潮大叫好爽喷水| 亚洲欧洲美洲av| 欧美一区二区视频在线观看 | 中文字幕久久久久| gogo大胆日本视频一区| 亚洲欧洲国产日韩精品| 免费在线小视频| 91麻豆精品国产91久久久资源速度| 先锋资源av在线| 久久久久国产| 国产精品电影一区| 人成网站在线观看| 亚洲免费资源在线播放| 一区二区三区国产免费| 巨人精品**| 欧美床上激情在线观看| 国产精品国产精品国产| 91性感美女视频| 成人短视频在线观看免费| 成人免费一区| 亚洲女成人图区| 日本熟妇色xxxxx日本免费看| 韩国女主播成人在线观看| 欧美久久久久久| 美女高潮在线观看| 日韩女优电影在线观看| 可以免费看av的网址| 视频一区国产视频| 精品欧美一区二区在线观看视频 | 午夜精品在线免费观看| 欧美日韩大片免费观看| 欧美国产日韩精品| 国产又粗又长又黄| 中文乱码免费一区二区| 日韩一级在线免费观看| 婷婷精品视频| 91精品国产91久久久久福利| 午夜精品小视频| 亚洲欧美日韩久久| 最新av免费在线观看| 成人在线亚洲| 国产精品日韩在线| av基地在线| 欧美影院午夜播放| 影音先锋男人在线| 日本欧洲一区二区| 亚洲国产精品久久久久婷婷老年 | 欧美hentaied在线观看| 国产精品日韩欧美| 日本暖暖在线视频| 欧美日韩精品三区| 在线免费看av网站| 国产在线播放一区二区三区| 大桥未久一区二区三区| 奇米一区二区| 欧美黄色片视频| 黄色小视频免费观看| 精品日韩美女的视频高清| 黄色免费视频网站| 久久久天天操| 色阁综合av| 97精品资源在线观看| 美女视频黄免费的亚洲男人天堂| 99久久精品国产色欲| 一区二区三区成人| 精品国产av色一区二区深夜久久| 一本色道精品久久一区二区三区| 久久久久久国产精品mv| 欧洲亚洲两性| 色噜噜国产精品视频一区二区| 国产又爽又黄免费软件| 一区二区三区免费| 黄色a一级视频| 日韩高清中文字幕一区| 影音先锋欧美在线| 综合激情网...| 欧美一级片在线播放| 午夜激情视频在线观看| 欧美一级专区免费大片| 久久露脸国语精品国产91| 久久久99精品久久| 91香蕉国产线在线观看| 伊人天天综合| 亚洲丰满在线| 午夜电影一区| 国产精品91久久| caopon在线免费视频| 亚洲国产精品久久| 在线免费观看av片| 亚洲成人av电影在线| 国产传媒国产传媒| 国产精品原创巨作av| 美女av免费在线观看| 日韩在线观看电影完整版高清免费悬疑悬疑| 成人乱色短篇合集| 在线观看爽视频| 久久香蕉国产线看观看av| 天堂网在线资源| 欧美日韩综合不卡| 国产主播在线观看| 亚洲国产精品精华液2区45| 中文字幕亚洲日本| 日韩成人dvd| 成年女人18级毛片毛片免费| 欧美日韩久久精品| 国产在线精品一区二区三区》| 精品网站在线| 91国内揄拍国内精品对白| 免费在线观看av| 亚洲欧美日韩国产成人| 丰满人妻一区二区三区免费| 欧美色欧美亚洲另类二区| 日韩成人免费在线观看| 亚洲欧美日韩精品久久久久| 欧美精品日韩在线| 久久综合色鬼综合色| 中文字幕99页| 国产精一区二区三区| 日本熟妇人妻中出| 国产视频一区欧美| 日韩激情视频一区二区| 2023国产精品久久久精品双| 日韩中文一区二区三区| 天堂日韩电影| 久久66热这里只有精品| 97色成人综合网站| 91久久精品一区二区别| 青青国产精品| 国产精品亚洲网站| 日本成人片在线| 国产成人高清激情视频在线观看| 在线免费av资源| 久久久人成影片一区二区三区观看 | 久久精品人成| 久久亚洲道色| 好吊色欧美一区二区三区 | 久久激情网站| 高清在线观看免费| 91久久综合| 人妻夜夜添夜夜无码av| 一区免费在线| 欧美成人三级在线视频| 国产综合网站| 日韩一级性生活片| 尤物精品在线| 国产亚洲黄色片| 亚洲电影成人| 亚洲 欧美 日韩 国产综合 在线| 亚洲欧洲另类| 成人免费观看cn| 国产一区导航| 黄色国产精品视频| 日韩黄色一级片| 日韩av片网站| 寂寞少妇一区二区三区| 两性午夜免费视频| 成熟亚洲日本毛茸茸凸凹| 久久福利小视频| 久久久久久夜精品精品免费| 精品国产成人亚洲午夜福利| 国产农村妇女精品| 日本二区三区视频| 一区二区成人在线观看| 国产精彩视频在线| 日韩欧美成人免费视频| 伊人久久中文字幕| 91麻豆精品国产自产在线| 亚洲国产精品久久久久久久| 亚洲精品国产精品国自产观看浪潮| 日本不卡视频一区二区| 中文字幕一区二区精品| 91在线中文| 91产国在线观看动作片喷水| 姬川优奈av一区二区在线电影| 成人xxxx视频| 97视频一区| 日韩一二三区不卡在线视频| 久久精品国内一区二区三区水蜜桃 | 亚洲男女视频在线观看| 日韩精品中文字幕在线播放| 成人av一区| 久久91精品国产| 蜜桃视频www网站在线观看| 国产欧美一区二区三区四区| 亚洲国产中文在线| 日本不卡一区| 欧美va天堂| 欧美激情国产精品日韩| 国产一区二区精品久久| 亚洲乱码国产乱码精品精大量| 国产精品初高中害羞小美女文| 久久精品视频6| 欧美日韩一级视频| 天天摸天天干天天操| 精品国偷自产在线视频99| 日本а中文在线天堂| 成人黄色免费网站在线观看| 日韩精品社区| 成人毛片100部免费看| 久久影院亚洲| 四虎成人免费视频| 国产精品久久久久久户外露出| 国产在线精品观看| 在线不卡a资源高清| 欧洲天堂在线观看| 色综合久久88| 日韩成人综合网站| 欧美日韩电影一区二区| 韩国精品一区二区三区| 国产又黄又猛的视频| 久久理论电影网| 国产精品不卡av| 欧美一区二区三区精品| 福利视频在线导航| 欧美一乱一性一交一视频| 97品白浆高清久久久久久| 国产av第一区| 看国产成人h片视频| 受虐m奴xxx在线观看| 午夜精品一区二区三区三上悠亚| 国产免费一区二区三区最新不卡 | 国产精品偷伦视频免费观看国产 | 久久99国产精品久久99 | 偷拍一区二区| 欧妇女乱妇女乱视频| 国产在线精品一区二区不卡了| 2019男人天堂| 日本韩国欧美一区| 你懂的视频在线观看| 91高清视频在线免费观看| 91麻豆精品激情在线观看最新| 亚洲一区美女| 老司机精品视频一区二区三区| 精品成人无码一区二区三区| 日韩欧美极品在线观看| 三级av在线| 欧洲日韩成人av| 亚洲最好看的视频| 久久婷婷国产精品| 97久久人人超碰| 亚洲黄色小说图片| 精品亚洲男同gayvideo网站| www欧美xxxx| 精品乱码一区| 国产色综合网| 亚洲av无码一区二区二三区| 欧美日韩在线视频首页| 午夜视频www| 欧美中文字幕在线观看| 九九久久精品| 天天操天天摸天天爽| 国产精品国产成人国产三级 | 韩国日本一区| 精品久久久久久综合日本| 日韩一级不卡| 在哪里可以看毛片| 欧美亚洲尤物久久| 黄网站在线免费| 国产精品综合久久久久久| 亚洲精品色图| 一区二区伦理片| 欧美日韩三级一区二区| 日本中文字幕在线播放| 亚洲一区中文字幕| 亚洲精品乱码久久久久久蜜桃麻豆| 91视频啊啊啊| 欧美在线一区二区三区| 成人黄视频在线观看| 国产精品乱码视频| 丝袜美腿亚洲一区二区图片| 国产又粗又猛又爽又黄的视频四季| 56国语精品自产拍在线观看| 先锋影音在线资源站91| 精品在线不卡| 麻豆一区二区99久久久久| 久草视频免费在线播放| 亚洲精品之草原avav久久| 久久99国产精品二区高清软件| 男女啪啪免费观看| 久久综合狠狠综合| 国产精品无码免费播放| 午夜精品免费视频| 色婷婷色综合| 欧美xxxx×黑人性爽| 欧美视频精品在线观看| 欧美女同一区| 日本电影一区二区三区| 国产成人在线影院| 91视频在线视频| 欧美第一黄色网| 精品国产1区| 国产精九九网站漫画|