Yarn

Yarn本質及機制

Yarn是一個資源管理和調度的框架.主要進程包括:ResourceManager,NodeManager.

ResourceManager將各個資源部分(計算、內存、帶寬等)精心安排給NodeManager(Yarn分布在各節點上的進程)。ApplicationMaster(應用程序)管理一個在 Yarn 內運行的應用程序的每個實例。ApplicationMaster 負責協調來自 ResourceManager的資源,并通過 NodeManager 監視容器的執行和資源使用(CPU、內存等的資源分配).

Yarn是一個集群,所以在各個節點上都需配置.也算一個配置型框架.

Yarn之ResourceManager

在YARN中,ResourceManager負責集群中所有資源的統一管理和分配,它接收來自各個節點(NodeManager)的資源匯報信息,并把這些信息按照一定的策略分配給各ApplicationManager(應用程序)。

Yarn之NodeManager

NodeManager是Yarn在每個節點上的代理進程,主要包括與ResourceManger保持通信,監督Container的生命周期管理,監控每個Container的資源使用(內存、CPU等)情況,追蹤節點健康狀況,管理日志和不同應用程序用到的附屬服務.

Container:對任務運行環境的抽象,封裝了CPU、內存等多維資源以及環境變量、啟動命令等任務運行相關的信息

Yarn的HA配置

Yarn參數

注:配置Yarn之前,hadoop,JDK啥得得配置好,能夠正常運行!

配置NodeManager

<property>

<name>yarn.nodemanager.aux-services</name>

<value>mapreduce_shuffle</value>

</property>

啟用ResourceManager HA

<property>

<name>yarn.resourcemanager.ha.enabled</name>

<value>true</value>

</property>

聲明ResourceManager的地址,因為HA,所以配兩個

<property>

<name>yarn.resourcemanager.cluster-id</name>

<value>cluster-yarn1</value>

</property>

<property>

<name>yarn.resourcemanager.ha.rm-ids</name>

<value>rm1,rm2</value>

</property>

<property>

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

<value>hadoop102</value>

</property>

<property>

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

<value>hadoop103</value>

</property>

配置好之后,啟動hadoop下sbin里面的start-yarn.sh腳本

這是我配置的全路徑: sh /opt/modules/hadoop-2.5.0-cdh5.3.6/sbin/start-yarn.sh

然后在其他各節點JPS下能夠看到NodeManager,就OK了!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容