教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢/投訴熱線:400-618-4000

一個(gè)應(yīng)用程序是如何在Yarn集群上執(zhí)行的?

更新時(shí)間:2023年09月06日10時(shí)43分 來源:傳智教育 瀏覽次數(shù):

好口碑IT培訓(xùn)

  在大數(shù)據(jù)領(lǐng)域,YARN(Yet Another Resource Negotiator)是一個(gè)用于集群資源管理的開源框架,它可以用于執(zhí)行和管理各種大數(shù)據(jù)應(yīng)用程序,如Hadoop、Spark等。以下是一個(gè)簡(jiǎn)要的解釋,說明一個(gè)應(yīng)用程序如何在YARN集群上執(zhí)行的過程:

  1.提交應(yīng)用程序:

  首先,用戶或應(yīng)用程序開發(fā)人員需要將他們的應(yīng)用程序提交給YARN集群。這通常通過使用命令行工具或API來完成。應(yīng)用程序的提交包括應(yīng)用程序的描述、所需資源和其他配置信息。

  2.ResourceManager分配資源:

  一旦應(yīng)用程序被提交,YARN的ResourceManager(RM)會(huì)接收到這個(gè)請(qǐng)求。RM負(fù)責(zé)整個(gè)集群的資源分配和管理。它會(huì)檢查可用資源,并嘗試為應(yīng)用程序分配所需的資源,包括CPU、內(nèi)存和其他資源。資源分配是根據(jù)集群上的資源配置和策略來進(jìn)行的。

  3.ApplicationMaster啟動(dòng):

  一旦資源分配完成,YARN會(huì)為應(yīng)用程序啟動(dòng)一個(gè)稱為ApplicationMaster(AM)的組件。AM是一個(gè)用于管理應(yīng)用程序執(zhí)行的進(jìn)程,它負(fù)責(zé)在集群上啟動(dòng)任務(wù)、監(jiān)視任務(wù)的狀態(tài)、處理失敗等。每個(gè)應(yīng)用程序都有一個(gè)獨(dú)立的AM實(shí)例。

  4.任務(wù)執(zhí)行:

  AM負(fù)責(zé)啟動(dòng)應(yīng)用程序的任務(wù),這些任務(wù)可能是MapReduce任務(wù)、Spark任務(wù)、Tez任務(wù)等,具體取決于應(yīng)用程序類型。任務(wù)會(huì)在集群的各個(gè)節(jié)點(diǎn)上執(zhí)行,利用已分配給應(yīng)用程序的資源。

  5.監(jiān)控和容錯(cuò):

  AM會(huì)持續(xù)監(jiān)視應(yīng)用程序的執(zhí)行情況。如果某個(gè)任務(wù)失敗或超時(shí),AM會(huì)嘗試重新啟動(dòng)或重新分配任務(wù),以確保應(yīng)用程序的正常執(zhí)行。此外,YARN還提供了日志和監(jiān)控工具,幫助用戶跟蹤應(yīng)用程序的狀態(tài)和性能。

  6.完成和清理:

  一旦應(yīng)用程序的所有任務(wù)都成功完成,AM會(huì)向ResourceManager發(fā)送完成通知。此時(shí),ResourceManager可以釋放為該應(yīng)用程序保留的資源,并將這些資源重新分配給其他應(yīng)用程序。應(yīng)用程序的輸出數(shù)據(jù)通常存儲(chǔ)在HDFS(Hadoop分布式文件系統(tǒng))或其他分布式存儲(chǔ)中,供后續(xù)分析和處理使用。

  總的來說,YARN允許多個(gè)不同類型的大數(shù)據(jù)應(yīng)用程序在同一個(gè)集群上共享資源,并提供了資源管理、任務(wù)調(diào)度和容錯(cuò)機(jī)制,以確保這些應(yīng)用程序能夠高效地執(zhí)行。每個(gè)應(yīng)用程序都有自己的ApplicationMaster來管理其執(zhí)行過程,并與ResourceManager協(xié)同工作,以實(shí)現(xiàn)資源分配和管理。這種靈活性和資源利用率使得YARN成為大數(shù)據(jù)生態(tài)系統(tǒng)中的關(guān)鍵組件之一。

0 分享到:
和我們?cè)诰€交談!