1. 程式人生 > >2.0.x以上版本啟動Spark在UI介面上看不到worker節點的資訊

2.0.x以上版本啟動Spark在UI介面上看不到worker節點的資訊

問題描述

作者是在centos上安裝spark-2.3.0-bin-hadoop2.7.tgz,當配置好spark-env.sh,改好slaves檔案之後,在sbin/目錄下執行命令./start-all.sh來啟動Spark時,發現沒有報錯,以為啟動成功,但是在Spark的UI介面上看不到worker的資訊。此時第一反應都是worker節點啟動失敗,然後會用jps命令去檢視,但是驚喜地發現Worker程序成功啟動了。於是一臉懵逼,不知所措......

解決辦法

接下來一般會有兩種選擇,第一種是直接google,一般網上都有相關的解決辦法;第二種是作者比較推薦的,到worker節點的SPARK_HOME/logs路徑下去看worker的日誌檔案,找找原因。一般來說閱讀日誌檔案用more

命令或者less命令比較方便。

如果你是直接google的同學,恭喜你,你能找到相關的解決辦法,這篇文章已經很好地說明了解決辦法。但是總是感覺解決辦法有點不夠完美,作者在網上也沒有搜到比較直接便捷的解決方案,於是想著記錄一下。

如果你去閱讀日誌檔案,會發現如下的錯誤:

然後再去解決這個問題的時候會發現,到頭來是spark-env.sh檔案的問題

  1. export JAVA_HOME=/usr/java/jdk1.8.0
  2. export SPARK_MASTER_IP=172.16.229.129
  3. export SPARK_MASTER_PORT=7077

一般Spark的安裝教程上就是這樣配置的,這是針對之前的Spark版本,至少作者用的Spark-2.3.0不適合,需要將SPARK_MASTER_IP改為SPARK_MASTER_HOST,同時要用真實的IP地址,不能用/etc/hosts檔案中配置的master(作者配置172.16.229.129為master)

  1. export JAVA_HOME=/usr/java/jdk1.8.0
  2. export SPARK_MASTER_HOST=172.16.229.129
  3. export SPARK_MASTER_PORT=7077

改好之後重新啟動Spark,發現問題得到解決。