spark調優篇-spark on yarn web UI


spark on yarn 的執行過程在 yarn RM 上無法直接查看,即 http://192.168.10.10:8088,這對於調試程序很不方便,所以需要手動配置

 

配置方法

1. 配置 spark-defaults.conf 

cp spark-defaults.conf.template spark-defaults.conf

添加如下配置

spark.eventLog.enabled           true
spark.eventLog.dir               hdfs://hadoop10:9000//user/root/history
spark.serializer                 org.apache.spark.serializer.KryoSerializer
spark.driver.memory              5g
spark.executor.extraJavaOptions  -XX:+PrintGCDetails -Dkey=value -Dnumbers="one two three"
spark.history.fs.logDirectory      hdfs://hadoop10:9000//user/root/history
spark.yarn.historyServer.address master:18080

spark.eventLog.enabled 設置為 true 表示開啟日志記錄

spark.eventLog.dir 表示存儲日志的地址,application 運行過程中所有的日志均存於該目錄下,一般設置為 hdfs 路徑,也可以設置為 本地路徑

  // HDFS:hdfs://hadoop10:9000//user/root/history  事先創建目錄

  // 本地:file:///directory

spark.history.fs.logDirectory 這個配置和 spark.eventLog.dir 保持一致,spark histroy server 只展示該路徑下的信息

spark.yarn.historyServer.address 設置 history server 的 ip port,指向 http://192.168.10.10:8088 上的 Tracking UI

spark.eventLog.compress 是否壓縮記錄 Spark 事件信息,前提 spark.eventLog.enabled 為 true,默認使用的是 snappy

 

2. 修改 spark-env.sh

在原來基礎上添加

export SPARK_HISTORY_OPTS="-Dspark.history.retainedApplications=15"

spark.history.retainedApplications 設置在 History Server 顯示的 Application 歷史記錄個數,如果超過這個值,舊的應用程序信息將被刪除.

 

3. 啟動 Spark History Server

sbin/start-history-server.sh

 

此時打開 http://192.168.10.10:18080 即可查看

 

web UI 解析

web ui 包括以下幾部分

 

假設執行如下命令

spark-submit --master yarn --num-executors 8 --executor-cores 5 gpsfreq.py

啟動 8 個 Executor,每個 Executor 啟動 5 個 core,共 40 個 core

 

stage

點開第 0個 stage

 

根據我上面的分析,做了如下改動

減少了 executor 數 和 executor core 數

spark-submit --master yarn --num-executors 4 --executor-cores 1 gpsfreq.py

結果效率提升了2倍

 把 textFile 設定 3 個分區,仍然采用上面的命令

運行效率更高了,而且解決了最初的問題

 

 

 

參考資料:

https://www.jianshu.com/p/4d28edc599ea  為Spark on Yarn配置WebUI日志記錄

https://blog.csdn.net/zyj8170/article/details/58158966  Spark on YARN配置日志Web UI

https://www.cnblogs.com/hexu105/p/8182472.html  spark on yarn UI界面詳解


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM