日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

YARN中的失败分析

發布時間:2025/3/21 编程问答 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 YARN中的失败分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

YARN中的失敗分析

對于在YARN中運行的MapReduce程序,需要考慮以下幾種實體的失敗
任務、application master、節點管理器、資源管理器

1. 任務運行失敗

任務運行失敗類似于MapReduce1的情況。JVM的運行時異常和突然退出被反饋給application master,該任務嘗試被標記為失敗。類似的,通過在umbilical channel上的ping缺失(由mapreduce.task.time設定超時值),application master會注意到掛起的任務,任務嘗試再次被標記為失敗。
4次嘗試后任務標記為失敗(map任務由mapreduce.map.maxattemps設置,reduce任務由mapreduce.reduce.maxattempts設置)。如果一個作業中超過mapreduce.map.failures.maxpercent的map任務或超過mapreduce.reduce.failures.maxpercent的reduce任務運行失敗,name整個作業就失敗了。

2. application master運行失敗

YARN中的應用程序在運行失敗的時候有幾次嘗試機會,就像MapReduce任務在遇到硬件或網絡故障時要進行幾次嘗試一樣。在默認情況下,只要應用程序運行失敗一次就會被標記為失敗,但我們可以設置yarn.resourcemanager.am.max-retries屬性增加允許失敗的次數。
Application master向資源管理器發送周期性的心跳,當application master發生故障時,資源管理器將檢測到該故障并在一個新的容器(由節點管理器管理)中開始一個新的master實例。MapReduce application master可以恢復故障應用程序所運行任務的狀態,使其不必重新運行。默認情況下是不能恢復的,因此故障application master將重新運行它們的所有任務,但我們可以設置yarn.app.mapreduce.am.job.recovery.enable為true,啟用這個功能。
客戶端向application master輪詢進度報告,如果它的application master運行失敗,客戶端就需要定位新的實例。在作業初始化期間,客戶端向資源管理器詢問并緩存application master的地址,使其每次需要向application master查詢是不必重載資源管理器。但是,如果application master運行失敗,客戶端就會在發出狀態更新請求時超時,這時客戶端會返回資源管理器請求新的application master的地址。

3. 節點管理器運行失敗

如果節點管理器失敗,就會停止向資源管理器發送心跳信息并被移出可用節點資源管理器池。默認值為600000(10分鐘)的屬性yarn.resourcemanager.nm.liveness-monitor.expiry-interval-ms決定著資源管理器認為節點管理器失敗之前的等待時間。
如果應用程序的運行失敗次數過高,那么節點管理器可能會被拉黑。由application master管理黑名單,對于MapReduce,如果一個節點管理器上有超過三個任務失敗,application master就會盡量將任務調度到不同的節點上。可以通過mapreduce.job.maxtaskfailures.per.tracker設置該閾值。

4. 資源管理器運行失敗

資源管理器失敗是非常嚴重的問題,沒有資源管理器,作業和任務容器將無法啟動。資源管理器的設計從一開始就通過使用檢查點機制將其狀態保存到持久性存儲,從而實現從失敗中恢復。
在資源管理器失敗后,由管理員啟動一個新的資源管理器實例并恢復到保存的狀態。狀態由系統中的節點管理器和運行的應用程序組成。(注意,任務并非資源管理器狀態的組成部分,因為它們由application master管理。因此,存儲的狀態數量比jobtracker中的狀態更好管理)
資源管理器使用的存儲容量通過yarn.resourcemanager.store.class的屬性進行配置。默認值為org.apache.hadoop.yarn.server.resourcemanager.recovery.MemStore,這保存在內存中,因此可操作性不是很高

轉載于:https://www.cnblogs.com/EnzoDin/p/9439744.html

總結

以上是生活随笔為你收集整理的YARN中的失败分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。