天天看點

錯誤:啟動spark後在web頁面看不到worker節點的資訊

今天安裝了一個高可用的spark叢集,但是啟動之後,每個節點上用jps指令都可以檢視到有Master和Worker程序,但是登入UI界面卻沒有Worker資訊,檢視Worker節點上的日志檔案,發現竟然出錯了,錯誤如下:

錯誤:啟動spark後在web頁面看不到worker節點的資訊

錯誤顯示Worker無法連接配接到Master節點。

找了好長時間,終于發現了問題,出現這個錯誤的原因就是端口的問題。

我們知道,spark叢集上Master節點和Worker節點RPC通信的端口是7077,這裡無法連接配接到Master節點,說明是端口或者Ip的問題。我安裝的叢集是高可用的,設定了兩個Master,是以在conf/spark-env.sh配置檔案中就不能指定Master節點的Ip了,是以這裡肯定是IP和主機的映射關系錯了。

下面是我Master節點中/etc/hosts檔案的内容:

錯誤:啟動spark後在web頁面看不到worker節點的資訊

下面是我Worker節點/etc/hosts檔案的内容:

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.67.136  L3

           

這樣一來,當我啟動spark叢集時,Master節點啟動用的位址是192.168.67.134:7077,

由于Worker節點沒有添加映射關系,他會以為Master節點用的位址是127.0.0.1:7077,是以會出現連接配接不上的問題。

找到了問題所在,我把Worker節點上的/etc/hosts檔案的内容也改成了:

錯誤:啟動spark後在web頁面看不到worker節點的資訊

然後再啟動spark叢集,打開UI界面後發現Worker節點出現了。

到此及結束了,如果有什麼錯誤的話,歡迎各位大神留言指正。

繼續閱讀