Yarn簡單分佈式集羣搭建

Yarn簡單分佈式集羣搭建

前言

上篇文章介紹瞭如何搭建簡單分佈式的HDFS集羣,那麼HDFS說到底僅僅是一個文件系統,Hadoop另一個核心模塊MapReduce(計算框架或編程模型)就是對HDFS中存儲的數據進行計算,既然要進行運算就必須要有CPU和內存,那麼對於MapReduce的計算如何給它分配CPU和內存呢?這就需要一個統一資源調度器來對來對hadoop集羣中的資源進行統一調度。因此Hadoop中由引入了Yarn,來完成資源調度任務。

一、MapReduce工作原理

MapReduce是一個計算框架或者編程模型,它由兩部分組成:Map進行數據切分後的局部運算,Reduce進行Map局部計算完成後的整合運算,示意圖如下
在這裏插入圖片描述
由上面MapReduce工作示意圖就能發現一個問題,如何給各個Map運算分配適當CPU和內存是一個關鍵問題,正常來說對於Map處理任務多的節點,應該分配更多的內存和CPU,那麼在Hadoop中這一調度由誰管理呢?此時Yarn出現了,它就是對資源進行統一調度分配的,來保證資源的合理充分運用。

二、Yarn工作原理

Yarn由兩部分組成ResourceManager+NodeManager:
ResourceManager整合hadoop集羣的資源(CPU和內存),進行統一調度,它並不做實際的計算,僅僅是用於整合集羣資源,然後分配給NodeManager,由NodeManage進行實際的運算。
這與HDFS的模式類似,NameNode不做實際的數據存儲,它僅僅存儲數據的元數據信息(如何切塊,切了幾塊,每塊數據在哪個節點等等),DataNode進行實際的數據存儲。由上面的解釋可以明白,充當DataNode節點的機器肯定也充當NodeManager。

Yarn集羣和HDFS集羣進行共同工作,HDFS集羣存儲數據,Yarn集羣調度資源進行計算,兩者共同工作示意圖如下
在這裏插入圖片描述

三、Yarn集羣搭建

Yarn集羣搭建很簡單,與上篇博文搭建HDFS集羣的唯一不同之處就是多修改兩個配置文件maped-site.xml和yarn-site.xml即可,其餘就是按照搭建HDFS集羣操作

1、集羣搭建部署規劃

準備三臺機器
hadoop3(192.168.23.133):NameNode & DataNode & NodeManager
hadoop4(192.168.23.134):DataNode & NodeManager & ResourceManager
hadoop5(192.168.23.135):DataNode & NodeManager

2、與HDFS集羣搭建相比多修改兩個配置文件

1、修改yarn-site.xml配置文件
<!--固定寫法-->
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
  </property>
  <!--指定哪臺機器爲ResourceManager-->
  <property>
    <description>The hostname of the RM.</description>
    <name>yarn.resourcemanager.hostname</name>
    <value>hadoop4</value>
  </property>
2、修改mapred-site.xml配置文件

mapred-site.xml配置文件在hadoop/etc目錄下的名稱是mapred-site.xml.template,因此我們需要首先將mapred-site.xml.template文件名修改爲mapred-site.xml或者拷貝一份mapred-site.xml.template到mapred-site.xml中,我選擇拷貝。

cp /root/hadoop/hadoop-2.9.2/etc/hadoop/mapred-site.xml.template  /root/hadoop/hadoop-2.9.2/etc/hadoop/mapred-site.xml

修改mapred-site.xml配置文件

 <property>
    <description>The hostname of the RM.</description>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>

3、啓動HDFS集羣和Yarn集羣

可以在任一機器節點上啓動HDFS集羣

start-dfs.sh

Yarn集羣必須在ResourceManager所在節點啓動

start-yarn.sh

下圖表明已經部署完成我們的規劃
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

4、HDFS集羣和Yarn集羣的可視化

HDFS集羣的可視化是NameNode所在節點機器的IP地址加端口號:50070
在這裏插入圖片描述
Yarn集羣的可視化是ResourceManager所在節點機器的IP地址加端口號:8088
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章