簡體   English   中英

在獨立Spark上連接到遠程主站

[英]Connecting to remote master on standalone Spark

我通過以下步驟在遠程服務器上以獨立模式啟動Spark:

  • cp spark-env.sh.template spark-env.sh
  • 附加到spark-env.sh SPARK_MASTER_HOST=IP_OF_MY_REMOTE_SERVER
  • 並為獨立模式運行下一個命令: sbin/start-master.sh sbin/start-slave.sh spark://IP_OF_MY_REMOTE_SERVER:7077

我嘗試連接到遠程主控:

val spark = SparkSession.builder()
  .appName("SparkSample")
  .master("spark://IP_OF_MY_REMOTE_SERVER:7077")
  .getOrCreate()

我收到以下錯誤:

ERROR SparkContext: Error initializing SparkContext.
java.net.BindException: Cannot assign requested address: Service 'sparkDriver' failed after 16 retries!

和警告:

    WARN Utils: Service 'sparkMaster' could not bind on port 7077. Attempting port 7078.
.....
    WARN Utils: Service 'sparkMaster' could not bind on port 7092. Attempting port 7092.

我建議不要使用端口打開策略遠程提交火花作業,因為它可能會產生安全問題,而且根據我的經驗,比它的價值更麻煩,特別是由於必須對通信層進行故障排除。

備擇方案:

1)Livy - 現在是一個Apache項目! http://livy.iohttp://livy.incubator.apache.org/

2)Spark Job服務器 - https://github.com/spark-jobserver/spark-jobserver

類似的問答: 遠程向Spark EC2集群提交作業

如果你堅持連接沒有像Livy這樣的庫,那么打開端口以確保需要通信。 Spark網絡通訊文檔: http//spark.apache.org/docs/latest/security.html#configuring-ports-for-network-security

由於您沒有使用YARN(根據您的獨立設計),YARN遠程提交的先前鏈接可能不相關。

Spark文檔說

spark.driver.port

(random)    Port for the driver to listen on. This is used for communicating with the executors and the standalone Master.

spark.port.maxRetries

16  Maximum number of retries when binding to a port before giving up. When a port is given a specific value (non 0), each subsequent retry will increment the port used in the previous attempt by 1 before retrying. This essentially allows it to try a range of ports from the start port specified to port + maxRetries.

您需要確保Spark Master在端口7077上的遠程主機上運行。此外,防火牆必須允許連接到它。

此外,您需要將core-site.xml文件從群集復制到HADOOP_CONF_DIR,以便Spark服務可以讀取hadoop設置,例如主服務器的IP地址。 在這里閱讀更多..

希望能幫助到你!

spark-jobserver似乎非常誘人但有一些問題。 我推薦“隱藏”的火花REST api! 它沒有記錄,但它非常簡單,更舒適,不像需要維護的jobserver(另外你需要擔心和解決問題 - 它有它的問題)你還有很棒的庫 - https://github.com/ ywilkof /火花工作休息-客戶端

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM