單元5 任務5.4-MapReduce任務監控_第1頁
單元5 任務5.4-MapReduce任務監控_第2頁
單元5 任務5.4-MapReduce任務監控_第3頁
單元5 任務5.4-MapReduce任務監控_第4頁
單元5 任務5.4-MapReduce任務監控_第5頁
已閱讀5頁,還剩16頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

《大數據平臺部署與運維》單元5MapReduce實現電商銷售數據統計任務5.4MapReduce任務監控01掌握MapReduce任務監控方式02理解MapReduce任務失敗常見原因學習目標任務5.4MapReduce任務監控【任務場景】經理:小張,現在你已經了解MapReduce的原理,也能通過JavaAPI實現一些功能了,但是你知道MapReduce執行過程中如何監控嗎?小張:可以在任務執行時命令行看到一些信息,也可以通過瀏覽器和Hadoop命令去進行監控。經理:嗯,不錯,掌握這幾種監控方式就可以對大部分的MapReduce場景進行有效監控了,你再去了解一下MapReduce任務執行失敗常見原因。小張:好的。任務5.4MapReduce任務監控【任務布置】掌握MapReduce任務監控方式,理解MapReduce任務執行失敗常見原因,再次運行電商數據分析程序,監控任務執行過程。任務5.4MapReduce任務監控5.4.1MapReduce任務監控方式當我們執行一個MapReduce任務后,程序被提交給了集群。對于開發測試集群運行程序的開發人員來說,剛剛接觸MapReduce的初學者往往是在命令行前等著程序執行完成,遇到任務運行緩慢或報錯的情況時很難做出有效響應。下面介紹MapReduce任務監控的幾種形式,讓大家能對MapReduce程序進行有效監控。任務5.4MapReduce任務監控1.執行時監控執行Hadoopjar命令后控制臺會輸出任務信息。執行時需重點關注標紅的這幾行信息。上面的輸出信息可以查看當前任務的ID,以及map階段、reduce階段的任務進度,當輸出Jobjob_idcompletedsuccessfully時表明任務已成功執行完畢。[root@master01~]#hadoopjar/opt/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.1.jarwordcount/collection.txt/out2021-11-3003:55:46,111INFOclient.RMProxy:ConnectingtoResourceManageratmaster01/14:80322021-11-3003:55:46,374INFOmapreduce.JobResourceUploader:DisablingErasureCodingforpath:/tmp/hadoop-yarn/staging/root/.staging/job_1638262379053_00012021-11-3003:55:47,138INFOinput.FileInputFormat:Totalinputfilestoprocess:1……2021-11-3003:55:53,710INFOmapreduce.Job:map0%reduce0%2021-11-3003:55:58,774INFOmapreduce.Job:map100%reduce0%2021-11-3003:56:02,799INFOmapreduce.Job:map100%reduce100%2021-11-3003:56:02,807INFOmapreduce.Job:Jobjob_1638262379053_0001completedsuccessfully2021-11-3003:56:02,863INFOmapreduce.Job:Counters:53……任務5.4MapReduce任務監控2.瀏覽器監控執行Hadoop任務后在瀏覽器打開管理節點MapReduceWebUI界面(通常為管理節點IP+8088端口),可查看任務情況:任務列表展示任務名稱、任務類型、狀態、開始時間、任務進度等信息,點擊任務ID可查看任務詳細信息。任務5.4MapReduce任務監控任務詳細信息頁面可以查看任務概覽情況以及執行任務使用的資源情況:任務5.4MapReduce任務監控3.

Hadoop命令通過Hadoop命令也可以完成對任務的查看與管理。Hadoop任務管理常用命令如下表所示:命令描述mapredjob-list查看所有job信息mapredjob-killjob_id通過ID殺掉jobmapredjob-statusjob_id打印map和reduce完成百分比和所有計數器mapredjob-kill-tasktask_id殺死任務mapredjob-fail-tasktask_id使任務失敗任務5.4MapReduce任務監控5.4.2任務執行失敗常見原因在真實生產環境中,用戶代碼、進程崩潰、機器故障等都可能導致MapReduce程序失敗,但是Hadoop最主要的優勢之一就是他能自動處理此類故障并完成作業。以下為幾種導致任務失敗的常見原因。1.任務運行失敗(1)任務代碼異常JVM在退出前向applicationmaster發送錯誤報告,錯誤報告會被記入用戶日志。applicationmaster將任務標記為failed,釋放容器和資源。(2)任務JVM突然退出JVM軟件缺陷而導致MapReduce用戶代碼由于某些特殊原因造成JVM退出。NodeManager注意到JVM退出,通知applicationmaster將任務標記為失敗。(3)任務掛起applicationmaster長時間未接收到進度更新,將任務標記為失敗,JVM進程也將會自動殺死。任務5.4MapReduce任務監控2.

ApplicationMaster運行失敗applicationmaster會向資源管理器發送周期性的心跳,當applicationmaster出現故障時,資源管理器將檢測到該故障并在一個新的容器(由節點管理器管理)中開始一個新的master實例。客戶端向applicationmaster輪詢報告進度,如果它的applicationmaster運行失敗,客戶端就需要重新定位新的實例。在作業初始化期間,客戶端向資源管理器詢問并緩存applicationmaster的地址,使其每次需要向applicationmaster查詢時不必重載資源管理器。但如果applicationmaster運行失敗,客戶端就會在發出狀態更新請求時超時,這是客戶端就會想資源管理器請求新的applicationmaster的地址。任務5.4MapReduce任務監控3.

NodeManager運行失敗節點管理器失敗就會停止向資源管理器發送心跳信息并被移出可用的節點資源管理器池。默認時間是10分鐘,可通過下面參數設置:yarn.resourcemanager.nm.liveness-monitor.expiry-interval-ms節點管理器失敗則上面運行的所有任務或applicationmaster都將會按照之前描述的機制進行恢復。如果應用程序失敗次數過高,那么該節點管理器可能會被拉黑。由applicationmaster管理黑名單。任務5.4MapReduce任務監控4.

ResourceManager運行失敗資源管理器失敗是很嚴重的問題,沒有資源管理器,作業和任務都將無法啟動,在默認配置中,資源管理器是單點故障。為了保障服務高可用(HighAvailability),我們需要配置一對資源管理器,以便在主資源管理器失敗后,備份資源管理器可以繼續運行。任務5.4MapReduce任務監控5.4.3MapReduce日志文件我們開發程序時通常會使用System.out.pirntln()輸出內容來查看運行情況。但是在MapReduce程序里寫了之后,卻不知道到哪里找。下面我們來介紹一下常見日志輸出位置以及日志包含的信息。ResourceManager日志存放位置是Hadoop安裝目錄下的logs目錄下的yarn-*-resourcemanager-*.log。NodeManager日志存放位置是各個NodeManager節點上hadoop安裝目錄下的logs目錄下的yarn-*-nodemanager-*.log。Container日志包含ApplicationMaster日志和普通Task日志,它們均存放在Hadoop安裝目錄下的userlogs目錄中的application_xxx目錄下。每個目錄下包含三個日志文件:stdout、stderr和syslog,其中,stdout是通過標準輸出打印出來的日志,比如System.out.println,syslog是通過log4j打印的日志,通常這個日志中包含的有用信息最多,也是錯誤調試中最關鍵的參考日志。任務5.4MapReduce任務監控【工作流程】再次運行電商數據分析程序,監控任務執行過程。任務5.4MapReduce任務監控【操作步驟】1.命令行運行電商數據分析程序,查看執行情況查看是否有以下重要信息輸出[root@master01~]#hadoopjarCollectionApp.jar

CollectionApp/collection.txt/co_out12021-11-3022:51:40,185INFOmapreduce.Job:Runningjob:job_1638262379053_00122021-11-3022:51:44,276INFOmapreduce.Job:Jobjob_1638262379053_0012runninginubermode:false2021-11-3022:51:44,277INFOmapreduce.Job:map0%reduce0%2021-11-3022:51:48,320INFOmapreduce.Job:map100%reduce0%2021-11-3022:51:52,355INFOmapreduce.Job:map100%reduce50%2021-11-3022:51:53,360INFOmapreduce.Job:map100%reduce100%2021-11-3022:51:53,372INFOmapreduce.Job:Jobjob_1638262379053_0012completedsuccessfully2021-11-3022:51:53,435INFOmapreduce.Job:Counters:53任務5.4MapReduce任務監控2.命令行運行電商數據分析程序,在瀏覽器查看運行情況。更換輸出目錄,重新執行命令,打開瀏覽器查看運行情況。[root@master01~]#hadoopjarCollectionApp.jar

CollectionApp/collection.txt/co_out2任務5.4MapReduce任務監控通過狀態可以看到任務是否成功執行。任務5.4MapReduce任務監控3.命令行運行電商數據分析程序,使用Hadoop命令查看運行情況再次更換輸出目錄,重新執行命令,新開一個終端窗口通過Hadoop命令查看任務運行情況。在新開的終端窗口中運行Hadoop命令,可以看到已有新任務生成。[root@master01~]#hadoopjarcollectionApp.jarCollectionApp/collection.txt/co_out3

[root@master01~]#mapredjob-list2021-11-3023:02:52,544INFOclient.RMProxy:ConnectingtoResourceManageratmaster01/14:80322021-11-3023:02:53,239INFOconf.Configuration:resource-types.xmlnotfound2021-11-3023:02:53,239INFO

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論