99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Hadoop的YARN資源管理系統(tǒng)

汽車玩家 ? 來源:今日頭條 ? 作者:不一樣的程序猿 ? 2020-03-15 17:00 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1.YARN

本質(zhì)上是資源管理系統(tǒng)。YARN提供了資源管理和資源調(diào)度等機(jī)制

1.1原 Hadoop MapReduce 框架

對于業(yè)界的大數(shù)據(jù)存儲及分布式處理系統(tǒng)來說,Hadoop 是耳熟能詳?shù)淖吭介_源分布式文件存儲及處理框架,對于 Hadoop 框架的介紹在此不再累述,讀者可參考 Hadoop 官方簡介。使用和學(xué)習(xí)過老 Hadoop 框架(0.20.0 及之前版本)的同仁應(yīng)該很熟悉如下的原 MapReduce 框架圖:

1.2Hadoop 原 MapReduce 架構(gòu)

Hadoop的YARN資源管理系統(tǒng)

從上圖中可以清楚的看出原 MapReduce 程序的流程及設(shè)計(jì)思路:

首先用戶程序 (JobClient) 提交了一個(gè) job,job 的信息會發(fā)送到 Job Tracker 中,Job Tracker 是 Map-reduce 框架的中心,他需要與集群中的機(jī)器定時(shí)通信 (heartbeat), 需要管理哪些程序應(yīng)該跑在哪些機(jī)器上,需要管理所有 job 失敗、重啟等操作。

TaskTracker 是 Map-reduce 集群中每臺機(jī)器都有的一個(gè)部分,他做的事情主要是監(jiān)視自己所在機(jī)器的資源情況。

TaskTracker 同時(shí)監(jiān)視當(dāng)前機(jī)器的 tasks 運(yùn)行狀況。TaskTracker 需要把這些信息通過heartbeat 發(fā)送給 JobTracker,JobTracker 會搜集這些信息以給新提交的 job 分配運(yùn)行在哪些機(jī)器上。上圖虛線箭頭就是表示消息的發(fā)送 - 接收的過程。(JobTracker 一個(gè)很大的負(fù)擔(dān)就是監(jiān)控 job 下的 tasks 的運(yùn)行狀況)

可以看得出原來的 map-reduce 架構(gòu)是簡單明了的,在最初推出的幾年,也得到了眾多的成功案例,獲得業(yè)界廣泛的支持和肯定,但隨著分布式系統(tǒng)集群的規(guī)模和其工作負(fù)荷的增長,原框架的問題逐漸浮出水面,主要的問題集中如下:

JobTracker 是 Map-reduce 的集中處理點(diǎn),存在單點(diǎn)故障。

JobTracker 完成了太多的任務(wù),造成了過多的資源消耗,當(dāng) map-reduce job 非常多的時(shí)候,會造成很大的內(nèi)存開銷,潛在來說,也增加了 JobTracker fail 的風(fēng)險(xiǎn),這也是業(yè)界普遍總結(jié)出老 Hadoop 的 Map-Reduce 只能支持 4000 節(jié)點(diǎn)主機(jī)的上限。

在 TaskTracker 端,以 map/reduce task 的數(shù)目作為資源的表示過于簡單,沒有考慮到 cpu/ 內(nèi)存的占用情況,如果兩個(gè)大內(nèi)存消耗的 task 被調(diào)度到了一塊,很容易出現(xiàn) OOM。

在 TaskTracker 端,把資源強(qiáng)制劃分為 map task slot 和 reduce task slot, 如果當(dāng)系統(tǒng)中只有map task 或者只有 reduce task 的時(shí)候,會造成資源的浪費(fèi),也就是前面提過的集群資源利用的問題。

源代碼層面分析的時(shí)候,會發(fā)現(xiàn)代碼非常的難讀,常常因?yàn)橐粋€(gè) class 做了太多的事情,代碼量達(dá) 3000 多行,,造成 class 的任務(wù)不清晰,增加 bug 修復(fù)和版本維護(hù)的難度。

從操作的角度來看,現(xiàn)在的 Hadoop MapReduce 框架在有任何重要的或者不重要的變化 ( 例如 bug 修復(fù),性能提升和特性化 ) 時(shí),都會強(qiáng)制進(jìn)行系統(tǒng)級別的升級更新。更糟的是,它不管用戶的喜好,強(qiáng)制讓分布式集群系統(tǒng)的每一個(gè)用戶端同時(shí)更新。這些更新會讓用戶為了驗(yàn)證他們之前的應(yīng)用程序是不是適用新的 Hadoop 版本而浪費(fèi)大量時(shí)間。

1.3新 Hadoop Yarn 框架原理及運(yùn)作機(jī)制

從業(yè)界使用分布式系統(tǒng)的變化趨勢和 hadoop 框架的長遠(yuǎn)發(fā)展來看,MapReduce 的JobTracker/TaskTracker 機(jī)制需要大規(guī)模的調(diào)整來修復(fù)它在可擴(kuò)展性,內(nèi)存消耗,線程模型,可靠性和性能上的缺陷。在過去的幾年中,hadoop 開發(fā)團(tuán)隊(duì)做了一些 bug 的修復(fù),但是最近這些修復(fù)的成本越來越高,這表明對原框架做出改變的難度越來越大。

為從根本上解決舊 MapReduce 框架的性能瓶頸,促進(jìn) Hadoop 框架的更長遠(yuǎn)發(fā)展,從 0.23.0 版本開始,Hadoop 的 MapReduce 框架完全重構(gòu),發(fā)生了根本的變化。新的 Hadoop MapReduce 框架命名為 MapReduceV2 或者叫 Yarn,其架構(gòu)圖如下圖所示:

圖 2. 新的 Hadoop MapReduce 框架(Yarn)架構(gòu)

新的 Hadoop MapReduce 框架(Yarn)架構(gòu)

重構(gòu)根本的思想是將JobTracker 兩個(gè)主要的功能分離成單獨(dú)的組件,這兩個(gè)功能是資源管理和任務(wù)調(diào)度 / 監(jiān)控。新的資源管理器全局管理所有應(yīng)用程序計(jì)算資源的分配,每一個(gè)應(yīng)用的ApplicationMaster 負(fù)責(zé)相應(yīng)的調(diào)度和協(xié)調(diào)。一個(gè)應(yīng)用程序無非是一個(gè)單獨(dú)的傳統(tǒng)的MapReduce 任務(wù)或者是一個(gè) DAG( 有向無環(huán)圖 ) 任務(wù)。ResourceManager 和每一臺機(jī)器的節(jié)點(diǎn)管理服務(wù)器能夠管理用戶在那臺機(jī)器上的進(jìn)程并能對計(jì)算進(jìn)行組織。

事實(shí)上,每一個(gè)應(yīng)用的 ApplicationMaster 是一個(gè)詳細(xì)的框架庫,它結(jié)合從ResourceManager 獲得的資源和 NodeManager 協(xié)同工作來運(yùn)行和監(jiān)控任務(wù)。

上圖中ResourceManager支持分層級的應(yīng)用隊(duì)列,這些隊(duì)列享有集群一定比例的資源。從某種意義上講它就是一個(gè)純粹的調(diào)度器,它在執(zhí)行過程中不對應(yīng)用進(jìn)行監(jiān)控和狀態(tài)跟蹤。同樣,它也不能重啟因應(yīng)用失敗或者硬件錯誤而運(yùn)行失敗的任務(wù)。

ResourceManager 是基于應(yīng)用程序?qū)Y源的需求進(jìn)行調(diào)度的 ; 每一個(gè)應(yīng)用程序需要不同類型的資源因此就需要不同的容器。資源包括:內(nèi)存,CPU,磁盤,網(wǎng)絡(luò)等等。可以看出,這同現(xiàn)Mapreduce 固定類型的資源使用模型有顯著區(qū)別,它給集群的使用帶來負(fù)面的影響。資源管理器提供一個(gè)調(diào)度策略的插件,它負(fù)責(zé)將集群資源分配給多個(gè)隊(duì)列和應(yīng)用程序。調(diào)度插件可以基于現(xiàn)有的能力調(diào)度和公平調(diào)度模型。

上圖中NodeManager 是每一臺機(jī)器框架的代理,是執(zhí)行應(yīng)用程序的容器,監(jiān)控應(yīng)用程序的資源使用情況 (CPU,內(nèi)存,硬盤,網(wǎng)絡(luò) ) 并且向調(diào)度器匯報(bào)。

每一個(gè)應(yīng)用的ApplicationMaster 的職責(zé)有:向調(diào)度器索要適當(dāng)?shù)馁Y源容器,運(yùn)行任務(wù),跟蹤應(yīng)用程序的狀態(tài)和監(jiān)控它們的進(jìn)程,處理任務(wù)的失敗原因。

新舊 Hadoop MapReduce 框架比對

讓我們來對新舊 MapReduce 框架做詳細(xì)的分析和對比,可以看到有以下幾點(diǎn)顯著變化:

首先客戶端不變,其調(diào)用 API接口大部分保持兼容,這也是為了對開發(fā)使用者透明化,使其不必對原有代碼做大的改變 ( 詳見 2.3 Demo 代碼開發(fā)及詳解),但是原框架中核心的JobTracker 和 TaskTracker 不見了,取而代之的是 ResourceManager, ApplicationMaster 與NodeManager 三個(gè)部分。

我們來詳細(xì)解釋這三個(gè)部分,首先 ResourceManager 是一個(gè)中心的服務(wù),它做的事情是調(diào)度、啟動每一個(gè) Job 所屬的 ApplicationMaster、另外監(jiān)控 ApplicationMaster 的存在情況。細(xì)心的讀者會發(fā)現(xiàn):Job 里面所在的 task 的監(jiān)控、重啟等等內(nèi)容不見了。這就是 AppMst 存在的原因。ResourceManager 負(fù)責(zé)作業(yè)與資源的調(diào)度。接收 JobSubmitter 提交的作業(yè),按照作業(yè)的上下文 (Context) 信息,以及從 NodeManager 收集來的狀態(tài)信息,啟動調(diào)度過程,分配一個(gè) Container 作為 App Mstr

NodeManager 功能比較專一,就是負(fù)責(zé) Container 狀態(tài)的維護(hù),并向 RM 保持心跳。

ApplicationMaster 負(fù)責(zé)一個(gè) Job 生命周期內(nèi)的所有工作,類似老的框架中 JobTracker。但注意每一個(gè) Job(不是每一種)都有一個(gè) ApplicationMaster,它可以運(yùn)行在 ResourceManager 以外的機(jī)器上。

1.4Yarn 框架相對于老的 MapReduce 框架什么優(yōu)勢呢?

我們可以看到:

這個(gè)設(shè)計(jì)大大減小了 JobTracker(也就是現(xiàn)在的 ResourceManager)的資源消耗,并且讓監(jiān)測每一個(gè) Job 子任務(wù) (tasks) 狀態(tài)的程序分布式化了,更安全、更優(yōu)美。

在新的 Yarn 中,ApplicationMaster 是一個(gè)可變更的部分,用戶可以對不同的編程模型寫自己的 AppMst,讓更多類型的編程模型能夠跑在 Hadoop 集群中,可以參考 hadoop Yarn 官方配置模板中的 mapred-site.xml 配置。

對于資源的表示以內(nèi)存為單位 ( 在目前版本的 Yarn 中,沒有考慮 cpu 的占用 ),比之前以剩余 slot 數(shù)目更合理。

老的框架中,JobTracker 一個(gè)很大的負(fù)擔(dān)就是監(jiān)控 job 下的 tasks 的運(yùn)行狀況,現(xiàn)在,這個(gè)部分就扔給 ApplicationMaster 做了,而 ResourceManager 中有一個(gè)模塊叫做 ApplicationsMasters( 注意不是 ApplicationMaster),它是監(jiān)測 ApplicationMaster 的運(yùn)行狀況,如果出問題,會將其在其他機(jī)器上重啟。

Container 是 Yarn 為了將來作資源隔離而提出的一個(gè)框架。這一點(diǎn)應(yīng)該借鑒了 Mesos 的工作,目前是一個(gè)框架,僅僅提供 java 虛擬機(jī)內(nèi)存的隔離 ,hadoop 團(tuán)隊(duì)的設(shè)計(jì)思路應(yīng)該后續(xù)能支持更多的資源調(diào)度和控制 , 既然資源表示成內(nèi)存量,那就沒有了之前的 map slot/reduce slot 分開造成集群資源閑置的尷尬情況。

新的 Yarn 框架相對舊 MapRduce 框架而言,其配置文件 , 啟停腳本及全局變量等也發(fā)生了一些變化,主要的改變?nèi)缦拢?/p>

1.5配置文件

安裝完成后的Hadoop默認(rèn)配置就可以啟動,但其工作于本地模式;為了模擬hadoop集群的工作環(huán)境,完成配置測試,MarReduce程序測試等工作,可以配置其在單臺主機(jī)模擬提供分布式的hadoop,即偽分布式。

hadoop的配置共有四種級別:集群、進(jìn)程、作業(yè)和單獨(dú)操作,前兩類由集群管理員負(fù)責(zé)配置,后面的兩類則屬于程序員的工作范疇。

hadoop的配置文件位于conf目錄中,其中的core-site.xml、mapred-site.xml和hdfs-site.xml三個(gè)配置文件最為關(guān)鍵。

core-site.xml用于配置hadoop集群的特性,它作用于全部進(jìn)程及客戶端。mapred-site.xml配置mapreduce集群的工作屬性。

hdfs-site.xml配置hdfs集群的工作屬性。

此三個(gè)文件均為XML格式,其每個(gè)屬性配置請求格式如下:

some.property.name

some-value

另外還有三個(gè)配置文件需要留意。hadoop-env.sh是Hadoop的多個(gè)腳本執(zhí)行時(shí)source的配置信息,其用于為Hadoop指定運(yùn)行時(shí)使用的JDK、各進(jìn)程的JDK屬性、PID文件及日志文件的保存目錄等。masters則用于指定輔助名稱節(jié)點(diǎn)(SecondaryNameNode)的主機(jī)名或主機(jī)地址,slaves用于指定各從服務(wù)器(TaskTracker或DataNode)的主機(jī)名或主機(jī)地址。對偽分布式的Hadoop集群來講,這些節(jié)點(diǎn)均為本機(jī)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Hadoop
    +關(guān)注

    關(guān)注

    1

    文章

    90

    瀏覽量

    16470
  • 大數(shù)據(jù)
    +關(guān)注

    關(guān)注

    64

    文章

    8960

    瀏覽量

    140240
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    中軟國際推出人力資源管理綜合平臺解決方案

    、智能化的系統(tǒng)來提升管理效率與決策分析能力。中軟國際憑借其豐富的行業(yè)經(jīng)驗(yàn)與技術(shù)優(yōu)勢,推出了“人力資源管理綜合平臺解決方案”,通過信息化手段優(yōu)化勞資管理水平,推動智能化
    的頭像 發(fā)表于 05-15 17:38 ?535次閱讀

    納芯微電子榮膺2025人力資源管理杰出獎,以人才為翼,驅(qū)動創(chuàng)新未來

    近日,以“人才向上、共筑未來”為主題的2025人力資源管理杰出獎頒獎盛典暨高峰論壇(主辦方:前程無憂)隆重舉行。經(jīng)過多維度嚴(yán)格評審, 納芯微憑借前瞻性的人才戰(zhàn)略、卓越的員工成長體系及創(chuàng)新的人力資源管理
    的頭像 發(fā)表于 05-08 09:22 ?718次閱讀

    流量監(jiān)測多普勒超聲波流量計(jì)助力水資源管理

    多普勒超聲波流量計(jì)作為一種先進(jìn)的流量監(jiān)測設(shè)備,在河流流量監(jiān)測中具有重要的作用。它可以為水資源管理、防洪抗旱、生態(tài)環(huán)境保護(hù)等工作提供及時(shí)準(zhǔn)確的信息支持,為實(shí)現(xiàn)水資源的可持續(xù)利用和經(jīng)濟(jì)社會的可持續(xù)發(fā)展做出貢獻(xiàn)。
    的頭像 發(fā)表于 02-08 15:16 ?394次閱讀
    流量監(jiān)測多普勒超聲波流量計(jì)助力水<b class='flag-5'>資源管理</b>

    雷達(dá)流量監(jiān)測系統(tǒng):提升生態(tài)保護(hù)與水資源管理的精準(zhǔn)度

    雷達(dá)流量監(jiān)測系統(tǒng)的引入,不僅為水文數(shù)據(jù)采集和水資源管理提供了更加精準(zhǔn)、實(shí)時(shí)的支持,也為生態(tài)保護(hù)和環(huán)境監(jiān)測開辟了新的可能。
    的頭像 發(fā)表于 01-24 14:33 ?417次閱讀
    雷達(dá)流量監(jiān)測<b class='flag-5'>系統(tǒng)</b>:提升生態(tài)保護(hù)與水<b class='flag-5'>資源管理</b>的精準(zhǔn)度

    水庫管理新方式:水雨情監(jiān)測系統(tǒng)的全方位數(shù)據(jù)采集與分析

    水雨情監(jiān)測系統(tǒng)的數(shù)據(jù)共享和開放,將有助于不同地區(qū)和單位之間的合作,推動更大范圍內(nèi)的水資源共享與協(xié)調(diào),實(shí)現(xiàn)更全面的水資源管理和保護(hù)。
    的頭像 發(fā)表于 01-17 09:26 ?596次閱讀
    水庫<b class='flag-5'>管理</b>新方式:水雨情監(jiān)測<b class='flag-5'>系統(tǒng)</b>的全方位數(shù)據(jù)采集與分析

    聲明式資源管理方法

    (WEB)進(jìn)行管理 2、陳述式資源管理方法 陳述式管理方法說白了就是對資源進(jìn)行CDUR(增刪改查),在任意一臺運(yùn)算節(jié)點(diǎn)上進(jìn)行操作。 2.1 管理
    的頭像 發(fā)表于 12-31 10:16 ?590次閱讀

    安富利中國2024年獲多項(xiàng)人力資源管理大獎

    安富利中國在2024年再度展現(xiàn)了其在人力資源管理、職場環(huán)境等方面的卓越實(shí)力,接連榮獲多項(xiàng)大獎。
    的頭像 發(fā)表于 12-24 17:38 ?1012次閱讀

    河流渠道水位流量自動監(jiān)測管理系統(tǒng):24小時(shí)不間斷監(jiān)測數(shù)據(jù)

    河流渠道水位流量自動監(jiān)測管理系統(tǒng)的應(yīng)用,不僅提高了河道水文監(jiān)測的效率和準(zhǔn)確性,也為防災(zāi)減災(zāi)、生態(tài)保護(hù)、水資源管理等提供了強(qiáng)大的數(shù)據(jù)支持。
    的頭像 發(fā)表于 12-13 09:48 ?643次閱讀
    河流渠道水位流量自動監(jiān)測<b class='flag-5'>管理</b><b class='flag-5'>系統(tǒng)</b>:24小時(shí)不間斷監(jiān)測數(shù)據(jù)

    遙感技術(shù)在水資源管理中的應(yīng)用

    資源是地球上最寶貴的自然資源之一,對于維持生態(tài)平衡、保障人類生活和經(jīng)濟(jì)發(fā)展至關(guān)重要。隨著人口增長、城市化進(jìn)程和氣候變化的影響,水資源管理面臨著前所未有的挑戰(zhàn)。遙感技術(shù)作為一種先進(jìn)的監(jiān)測手段,為
    的頭像 發(fā)表于 12-05 10:26 ?1480次閱讀

    頂堅(jiān)單北斗智能手持終端如何賦能林業(yè)資源管理

    在智慧林業(yè)的新紀(jì)元里,頂堅(jiān)單北斗智能手持終端正以其卓越的定位精度、高效的數(shù)據(jù)采集與處理能力,以及智能化的信息分析功能,成為賦能林業(yè)資源管理的關(guān)鍵工具。它不僅極大提升了森林巡護(hù)的效率與精確度,還通
    的頭像 發(fā)表于 11-29 11:29 ?883次閱讀
    頂堅(jiān)單北斗智能手持終端如何賦能林業(yè)<b class='flag-5'>資源管理</b>

    電子水尺傳感器:水資源管理的智慧工具

    在水資源管理的舞臺上,電子水尺傳感器以其卓越的性能和廣泛的應(yīng)用前景,成為了不可或缺的智慧工具。它集成了高精度測量、實(shí)時(shí)監(jiān)測與預(yù)警功能于一體,正在悄然改變我們對水資源管理的認(rèn)知和實(shí)踐。 一、電子水尺
    的頭像 發(fā)表于 11-18 08:54 ?762次閱讀

    資源監(jiān)測物聯(lián)網(wǎng)網(wǎng)關(guān)是什么

    。本文將深入探討水資源監(jiān)測物聯(lián)網(wǎng)網(wǎng)關(guān)的定義、功能及其在水資源管理中的應(yīng)用。 一、定義 水資源監(jiān)測物聯(lián)網(wǎng)網(wǎng)關(guān)是一種連接物聯(lián)網(wǎng)設(shè)備、設(shè)備系統(tǒng)、傳感器和云端的設(shè)備。它在物聯(lián)網(wǎng)體系中扮演著至關(guān)
    的頭像 發(fā)表于 09-02 13:43 ?748次閱讀

    SL427協(xié)議接入水資源管理平臺解決方案

    和可操作性,對水資源監(jiān)測系統(tǒng)建設(shè)和管理的規(guī)范性、系統(tǒng)集成運(yùn)維的經(jīng)濟(jì)性以及水資源監(jiān)測數(shù)據(jù)采集、傳輸?shù)馁|(zhì)量保證起到重要作用。 對此,數(shù)之能提供實(shí)
    的頭像 發(fā)表于 08-19 15:49 ?689次閱讀

    微軟宣布將逐步淘汰Azure數(shù)據(jù)資源管理器的虛擬網(wǎng)絡(luò)注入功能

    微軟于7月23日正式發(fā)布了一則重要公告,宣布了其將廢棄Azure數(shù)據(jù)資源管理器的虛擬網(wǎng)絡(luò)注入(VNET Injection)功能的計(jì)劃。這一變動旨在解決當(dāng)前功能所存在的一系列限制與挑戰(zhàn),并推動用戶向更加高效、靈活的網(wǎng)絡(luò)安全架構(gòu)遷移。
    的頭像 發(fā)表于 07-23 14:25 ?693次閱讀