大數據(5)---分佈式任務資源調度Yarn

前面也說到過的Yarn是hadoop體系中的資源調度平臺。因此在整個hadoop的包裏面天然也是有它的。這裏咱們就簡單介紹下,並配置搭建yarn集羣。node

首先來講Yarn中有兩大核心角色Resource ManagerNode Manager。web

 

Resource Manager負責接收用戶提交的分佈式計算程序/任務,併爲其劃分資源,管理監控各個Node Managerapache

 

Node Manager 接收resoResource Manager分配過來的任務,並計算。分佈式

 

 

 

通俗一點說就是計算程序會被打成一個jar包,而後分配到每一個node manager上面去,這樣每一個node manager 執行的代碼都是同樣,只是可能數據源不同。oop

 

 

 

 

集羣配置:spa

 

 

node manager在物理上應該跟data node部署在一塊兒,方便數據的讀取日誌

 

 

 

Yarn的軟件在hadoop裏面的都是有的,就和hdfs同樣,咱們只須要去配置一下,而後啓動就能夠了xml

 

每臺機器都對etc/hadoop/yarn-site.xml進行配置blog

 

 

 

<property><!--配置redource manager-->內存

 

<name>yarn.resourcemanager.hostname</name>

 

<value>nijunyang68</value>

 

</property>

 

 

 

 由於以前配置hdfs集羣的時候已經在slaves中將集羣IP的都配置進去了,因此如今只須要一鍵執行腳本就能夠了:start-yarn.sh

注意在哪臺機器啓動redource manager就在那兒執行這個腳本,上面的配置只是告訴集羣的中機器誰是redource manager,因此執行這個腳本須要在配置中的那個機器上面去執行。從日誌中也能夠看見,resource manager是在本機啓動的,node manager是在其餘機器上面啓動的。

 

 

 默認8088端口能夠在web頁面查看yarn集羣信息

 

 

 

說一點,上面顯示內存大小是不對的,由於咱們沒有配置,都是使用的默認,並非我機器的實際值,實際上個人虛擬機總共才1G的內存

 

 

 

 

 

 

 

 

配置詳情:https://hadoop.apache.org/docs/stable/hadoop-yarn/hadoop-yarn-common/yarn-default.xml

 

<property>

 

<name>yarn.nodemanager.resource.memory-mb</name>

 

<value>1024</value>

 

</property>

 

內存有個最小分配限制1024,不然集羣是沒法啓動的。

 

核數也並非實際CPU的核數,個人虛擬機也才1核,這兒的意思是假如我內存200m,如今有一個任務須要100m內存,那麼我這個機器就能夠起兩個任務,因此能夠把核數配置成2,若是配置成那麼久只能起一個任務。意思就是我CPU雖然是一核,可是我一我的100M,我200內存能夠起兩個任務,那麼我CPU的運算能力就平均分給這兩個任務。

 

<property>

 

<name>yarn.nodemanager.resource.cpu-vcores</name>

 

<value>2</value>

 

</property>

 

 至此yarn集羣就搭建完畢,後續就等着mapreduce任務丟上去運行了。

相關文章
相關標籤/搜索