Spark UI zeigt 0 Kerne an, auch wenn Kerne in App @ gesetzt werd
Ich habe ein seltsames Problem beim Ausführen einer Anwendung von der Spark-Master-URL, bei der die Benutzeroberfläche unbegrenzt den Status "WAITING" meldet, da in der Tabelle RUNNING APPLICATIONSs (AUSFÜHRENDE ANWENDUNGEN) 0 Kerne angezeigt werden, unabhängig davon, wie ich die Kernanzahl konfiguriere sein
Ich habe meine App mit den folgenden Einstellungen konfiguriert, wobei spark.max.cores = 2 & spark.default.cores = 2 & Speicher auf 3 GB festgelegt ist. Die Maschine ist ein Server der Enterprise-Klasse mit über 24 Kernen.
SparkConf conf = new SparkConf()
.setAppName(Properties.getString("SparkAppName"))
.setMaster(Properties.getString("SparkMasterUrl"))
.set("spark.executor.memory", Properties.getString("SparkExecMem"))
.set("spark.cores.max",Properties.getString("SparkCores"))
.set("spark.driver.memory",Properties.getString("SparkDriverMem"))
.set("spark.eventLog.enabled", "true")
.set("spark.deploy.defaultCores",Properties.getString("SparkDefaultCores"));
//Set Spark context
JavaSparkContext sc = new JavaSparkContext(conf);
JavaStreamingContext jssc = new JavaStreamingContext(sc, new Duration(5000));
Spark WebUI gibt an, dass keine Kerne verwendet werden, und es werden auf unbestimmte Zeit keine Aufgaben ausgeführt. Die Anwendung verwendet auch während der Laufzeit oder der Ausführung der Kerne KEIN SPEICHER und erhält beim Start sofort den Status "Warten".
Spark-defaults.conf
spark.yarn.max_executor.failures 3
spark.yarn.applicationMaster.waitTries 10
spark.history.kerberos.keytab none
spark.yarn.preserve.staging.files False
spark.yarn.submit.file.replication 3
spark.history.kerberos.principal none
spark.yarn.historyServer.address {removed}.{removed}.com:18080
spark.yarn.scheduler.heartbeat.interval-ms 5000
spark.yarn.queue default
spark.yarn.containerLauncherMaxThreads 25
spark.yarn.driver.memoryOverhead 384
spark.history.ui.port 18080
spark.yarn.services org.apache.spark.deploy.yarn.history.YarnHistoryService
spark.yarn.max.executor.failures 3
spark.driver.extraJavaOptions -Dhdp.version=2.2.6.0-2800
spark.history.provider org.apache.spark.deploy.yarn.history.YarnHistoryProvider
spark.yarn.am.extraJavaOptions -Dhdp.version=2.2.6.0-2800
spark.yarn.executor.memoryOverhead 384
Submit script
spark-submit --class {removed}.{removed}.{removed}.sentiment.MainApp --deploy-mode client /path/to/jar
EDITED: 03.02.2016 Nachdem ich mit --master yarn-cluster gelaufen bin, erhalte ich diesen Fehler im Garnprotokoll. Ich habe auch meine aktualisierte Sendekonfiguration @ hinzugefüg
Submit Configuration
spark-submit --class com.removed.removed.sentiment.MainApp
--master yarn-cluster --supervise
/data04/dev/removed/spark/twitternpi/npi.sentiment-1.0-SNAPSHOT-shaded.jar
--jars /usr/hdp/2.2.6.0-2800/spark/lib/datanucleus-core-3.2.10.jar,/usr/hdp/2.2.6.0-2800/spark/lib/datanucleus-api-jdo-3.2.6.jar,/usr/hdp/2.2.6.0-2800/spark/lib/datanucleus-rdbms-3.2.9.jar,/usr/hdp/2.2.6.0-2800/spark/lib/spark-1.2.1.2.2.6.0-2800-yarn-shuffle.jar,/usr/hdp/2.2.6.0-2800/spark/lib/spark-assembly-1.2.1.2.2.6.0-2800-hadoop2.6.0.2.2.6.0-2800.jar
Fehlermeldun
ClassLoaderResolver for class "" gave error on creation : {1}
org.datanucleus.exceptions.NucleusUserException: ClassLoaderResolver for class "" gave error on creation : {1}
at org.datanucleus.NucleusContext.getClassLoaderResolver(NucleusContext.java:1087)
at org.datanucleus.PersistenceConfiguration.validatePropertyValue(PersistenceConfiguration.java:797)
at org.datanucleus.PersistenceConfiguration.setProperty(PersistenceConfiguration.java:714)
at org.datanucleus.PersistenceConfiguration.setPersistenceProperties(PersistenceConfiguration.java:693)
at org.datanucleus.NucleusContext.<init>(NucleusContext.java:273)
at org.datanucleus.NucleusContext.<init>(NucleusContext.java:247)
at org.datanucleus.NucleusContext.<init>(NucleusContext.java:225)