2016-05-13 4 views
1

Wir arbeiten daran, einen Spark-Jobserver auf einem Spark-Cluster zu starten.Kontextfehler auf dem Spark-Jobserver-Cluster

Um den Server zu implementieren, folgen wir der Dokumentation unter github.com/spark-jobserver/spark-jobserver#deployment. Wir implementieren mit ./server_deploy.sh local.

Ich habe hochgeladen unsere local.conf und local.sh auf Pastebin -

local.conf - http://pastebin.com/DWJEuX11

local.sh - http://pastebin.com/S2hjXb8J

Wir starten Sie dann unsere Cluster-Master und Arbeiter die folgenden Befehle aus der Funke Wurzelordner

./sbin/master-start.sh 
./bin/spark-class org.apache.spark.deploy.worker.Worker spark://IP:PORT 

Überprüfung localhost: 8 080 scheint es gut zu funktionieren.

Wir starten dann den Server, indem wir ./server_start.sh --master spark://IP:PORT --deploy-mode cluster ausführen, wieder überprüfen localhost: 8080 können wir sehen, dass der Server läuft und auf einem Kern auf dem Arbeiter läuft. Beim Überprüfen von localhost: 8090 können wir sehen, dass der Spark-Jobserver ebenfalls läuft.

Wir erstellen dann einen benutzerdefinierten Kontext, der CassandraSQLContext enthält (github.com/datastax/spark-cassandra-connector/blob/master/spark-cassandra-connector/src/main/scala/org/apache/spark/sql/ cassandra/CassandraSQLContext.scala) von

curl -d "" 'localhost:8090/contexts/cassandra-context?context-factory=spark.jobserver.context.CassandraContextFactory&num-cpu-cores=4&memory-per-node=512m' 

laufen Wir erhalten dann die folgenden Fehler

{ 
    "status": "CONTEXT INIT ERROR", 
    "result": { 
     "errorClass": "java.lang.NoClassDefFoundError", 
     "cause": "org.apache.spark.sql.cassandra.CassandraSQLContext", 
     "stack": ["java.net.URLClassLoader.findClass(URLClassLoader.java:381)"... 
    } 
} 

Wir haben diesen Fehler zur Festlegung einer Abhängigkeits jar in local.conf einschließlich

dependent-jar-uris = ["file:///path/to/jar.jar"] 

Dies gab den gleichen Fehler.

Wir haben auch versucht, den gesamten Ordner func-cassandra-connector src in unseren Job-Server-Extras einzubeziehen, der den Fehler File line length exceeds 110 characters auf fast jeder Datei gab, wenn ./server_deploy.sh local ausgeführt wurde.

Wir freuen uns über jede mögliche Hilfe.

Antwort

0

Ich würde nur die --packages-Zeile zum Spark-Submit hinzufügen, um den JobServer zu starten. Wahrscheinlich der einfachste Weg, um das zu umgehen.

Siehe

  1. https://github.com/spark-jobserver/spark-jobserver/blob/master/bin/server_start.sh
  2. http://spark-packages.org/package/datastax/spark-cassandra-connector

Sie können nur --packages zu Ihrem Server Startskript hinzufügen ala

./server_start.sh --packages datastax:spark-cassandra-connector:VersionYouWant

+0

Danke für die Antwort, es uns gelungen, um es zu lösen, indem man fehlende Gläser manuell hinzufügt y. –