我目前正在使用Apache Zeppelin + Spark 2.x從普通的發行版中構建一個定製的docker容器。如何在dockerized Apache Zeppelin後面展示Spark Driver?
我的Spark作業將在遠程集羣中運行,並且我使用yarn-client
作爲主節點。
當我運行筆記本並嘗試打印sc.version
時,程序卡住了。如果我去的遠程資源管理器,應用程序已被創建並接受,但在日誌中我可以讀:
INFO yarn.ApplicationMaster: Waiting for Spark driver to be reachable
我瞭解的情況是,集羣是無法跟司機容器,但我不知道如何解決這個問題。
我目前使用以下配置:
spark.driver.port
設置爲PORT1
,並傳遞到容器spark.driver.host
設置爲172.17.0.2
(容器的IP)SPARK_LOCAL_IP
設置爲172.17.0.2
選項-p PORT1:PORT1
( ip的容器)spark.ui.port
設置爲PORT2
和選項-p PORT2:PORT2
傳遞到容器
我有我應該SPARK_LOCAL_IP更改爲主機IP的感覺,但如果我這樣做,SparkUI無法啓動,前一個步閉鎖的過程。
在此先感謝您的任何想法/建議!
謝謝您的回答,但實際上,如果設置了'spark.driver.host' (例如主機IP),那麼驅動程序無法在第一階段啓動('java.net.BindException:無法分配請求的地址:Service'sparkDriver'failed')。 – ThR37