2017-07-05 23 views
3

我想設置Spark Standalone的Web UI,以便通過HTTPS訪問它。如何爲HTTPS配置Spark Standalone的Web UI?

Spark正在我用來訪問瀏覽器的計算機外部羣集上運行。

這是我到目前爲止已經完成,它不工作:

  • 使用OpenSSL的做自簽名證書和密鑰,然後keytool來做出一個密鑰
  • 包裝證書和密鑰作爲.p12文件
  • 在所管理證書Chrome的設置,進口說P12文件
  • 在火花defaults.conf,添加的選項

    spark.ui.https.enabled     true 
    spark.ui.ssl.server.keystore.location /path/to/spark.keystore 
    spark.ui.ssl.server.keystore.keypassword password 
    spark.ui.ssl.server.keystore.password password 
    
  • 在spark-env.sh,加入

    export SPARK_MASTER_OPTS="-Dspark.ui.https.enabled=true \ 
        -Dspark.ui.ssl.server.keystore.location=/path/to/spark.keystore \ 
        -Dspark.ui.ssl.server.keystore.keypassword=password \ 
        -Dspark.ui.ssl.server.keystore.password=password" 
    
    export SPARK_WORKER_OPTS="-Dspark.ui.https.enabled=true \ 
        -Dspark.ui.ssl.server.keystore.location=/path/to/spark.keystore \ 
        -Dspark.ui.ssl.server.keystore.keypassword=password \ 
        -Dspark.ui.ssl.server.keystore.password=password" 
    

我試過之前連接到服務器後,並在每個步驟之間,我不斷收到錯誤「此網站無法提供安全連接」。我在這裏錯過了什麼?

回答

1

根據this line我認爲它是而不是可能使用HTTPS設置Spark Standalone的Web UI。

masterWebUiUrl = "http://" + masterPublicAddress + ":" + webUi.boundPort 

我的建議是在Spark's JIRA到文件中的問題,並找到一個星火開發商來解決它。

0

下面的配置爲我工作,嘗試把它放在「spark-defaults.conf」並重新啓動Spark服務。由於「spark.ssl.ui.port」設置爲「0」,因此還要檢查Spark UI正在偵聽哪個端口的日誌。在我的情況下,它在端口8480上運行。

spark.ssl.enabled true 
spark.ssl.ui.port 0 
spark.ssl.keyStore <path_to_keystore> 
spark.ssl.keyStorePassword <keystore_password> 
spark.ssl.keyPassword <key_password> 
spark.ssl.trustStore <path_to_truststore> 
spark.ssl.trustStorePassword <truststore_password> 
spark.ssl.enabledAlgorithms ECDHE-RSA-AES256-SHA,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 
spark.ssl.protocol TLSv1.2 
spark.ssl.trustStoreType JKS 

查看截圖以供參考。

Spark Master running on HTTPS