我正在嘗試設置Spark JobServer(SJS)以在獨立Spark集羣上執行作業。我試圖在SPARK集羣的其中一個非主節點上部署SJS。我沒有使用碼頭工具,但試圖手動。StandAlone集羣中的Spark Job-Server配置
我很困惑SJS github中的幫助文檔,尤其是deployment部分。我是否需要編輯local.conf和local.sh來運行它?
有人能指出在火花集羣中設置SJS的步驟嗎?
謝謝! 基蘭
更新: 我創建了一個新的環境,在集羣中的一個節點部署jobserver:這裏是它的細節:
env1.sh:
DEPLOY_HOSTS="masked.mo.cpy.corp"
APP_USER=kiran
APP_GROUP=spark
INSTALL_DIR=/home/kiran/job-server
LOG_DIR=/var/log/job-server
PIDFILE=spark-jobserver.pid
JOBSERVER_MEMORY=1G
SPARK_VERSION=1.6.1
MAX_DIRECT_MEMORY=512M
SPARK_HOME=/home/spark/spark-1.6.1-bin-hadoop2.6
SPARK_CONF_DIR=$SPARK_HOME/conf
SCALA_VERSION=2.11.6
env1.conf
spark {
master = "local[1]"
webUrlPort = 8080
job-number-cpus = 2
jobserver {
port = 8090
bind-address = "0.0.0.0"
jar-store-rootdir = /tmp/jobserver/jars
context-per-jvm = false
jobdao = spark.jobserver.io.JobFileDAO
filedao {
rootdir = /tmp/spark-job-server/filedao/data
}
datadao {
rootdir = /tmp/spark-jobserver/upload
}
result-chunk-size = 1m
}
context-settings {
num-cpu-cores = 1
memory-per-node = 1G
}
home = "/home/spark/spark-1.6.1-bin-hadoop2.6"
}
感謝@ Daniel-de-Paula的詳細步驟。但我發現,儘管如此,工作服務器並沒有啓動。我在上面的問題描述中包含了env1.sh和env1.conf。在啓動server_start.sh時,我看不到任何事情發生。我可以看到爲作業服務器啓動了一個新的PID。但8090端口沒有打開。因此,所有curl請求都無法通過服務器。任何想法缺少什麼? – Kiran
@Kiran是否在目標計算機(即在'.sh'文件的第一行中配置的計算機)中啓動server_start.sh?也許你可以通過查看'$ LOG_DIR/jobserver'來調試(默認爲'/ var/log/jobserver') –
@ Daneil-de-Paula:是的,我在目標機器上啓動它。這是我從一開始就做的:在本地系統中,sbt使用env1.conf和env1.sh構建了作業服務器。使用server_deploy.sh從本地系統部署到服務器。在目標系統中,啓動了火花主控和一個從屬實例。可以看到在8080端口上運行的羣集。現在嘗試啓動作業服務器,希望端口8090將會打開。但是netstat -l -n不顯示8090端口。但是我看到一個新的進程使用jobserver的新PID運行。 jobserver調試文件不指定是否出現問題。 – Kiran