spark on yarn圖形化任務監控利器:History-server幫你理解spark的任務執行過程

在spark on yarn任務進行時,大家都指導用4040端口監控(默認是,設置其他或者多個任務同時會遞增等例外);
辣麼,任務結束了,還要看圖形化界面,那就要開history-server了。CDH安裝spark on yarn的時候,就自動安裝了history的實例。
現在不用CDH自帶的spark(版本太久了),自己安裝spark新版,所以還得具體配置。
搜了一下帖子,2個步驟:
spark 查看 job history 日誌
http://blog.csdn.net/stark_summer/article/details/46459701

1、spark-defaults.conf 增加如下內容:
#History
spark.eventLog.dir=hdfs://mycluster/user/spark/applicationHistory
spark.eventLog.enabled=true
spark.yarn.historyServer.address=http://snn.hadoop:18018
#####################
2、spark-env.sh 增加如下內容
##History-server
export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=18018 -Dspark.history.fs.logDirectory=hdfs://mycluster/user/spark/applicationHistory"
###################
3、strt-history-server.sh 啓動即可,查看端口監聽,網頁瀏覽,沒有問題。

[hadoop@snn sbin]$ netstat -tnlp |grep 18018
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
tcp        0      0 :::18018                    :::*                        LISTEN      7791/java

[hadoop@snn sbin]$

--原來之前用CDH spark的時候配置了HDFS保存日誌,現在用外面的版本,之前的日誌也能看到。


#########################################################
但是在實踐中發現幾個問題:有時候yarn中“history”按鈕並沒有鏈接過去。而是要自己過去看,這怎麼回事。
還有端口我改成了18018,但是還是默認的18080呢?

比較一下任務的“Environment”,發現很大。


原來是spark-env.sh和spark-defaults.conf兩個配置,是不同用途的。

1、spark.eventLog.dir 和 spark.history.fs.logDirectory  區別?
設置了 spark.eventLog.dir ,start-history-server.sh 啓動後面不帶地址,還是使用默認地址:報錯(因爲本地的目錄沒有創建),設置spark.history.fs.logDirectory 能不帶參數啓動。

2、spark.yarn.historyServer.address 和 spark.history.ui.port 區別?
啓動:spark.yarn.historyServer.address 設置的端口並沒有生效。需要spark.history.ui.port設置才生效。
如果不設置spark.yarn.historyServer.address,雖然直接在history-server中能直接看,但是在完成任務那裏點擊“History”,不會鏈接到history-server。在任務的"Environment"中也沒看到這個屬性。
但是設置了,"Environment"中可以看到這個屬性,那麼大膽的認爲,這個屬性在任務運行中會記錄下來,後面纔可以鏈接。

總結:也就是 spark-env.sh 裏面的 SPARK_HISTORY_OPTS 纔是設置 history-server 啓動的配置。

辣麼 spark-defaults.conf 這裏面設置神馬用?任務中讓yarn RM知道這些配置,給後面的鏈接用。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章