Marcelo Vanzin created SPARK-22962:
--------------------------------------

             Summary: Kubernetes app fails if local files are used
                 Key: SPARK-22962
                 URL: https://issues.apache.org/jira/browse/SPARK-22962
             Project: Spark
          Issue Type: Improvement
          Components: Kubernetes
    Affects Versions: 2.3.0
            Reporter: Marcelo Vanzin


If you try to start a Spark app on kubernetes using a local file as the app 
resource, for example, it will fail:

{code}
./bin/spark-submit [[bunch of arguments]] /path/to/local/file.jar
{code}

{noformat}
+ /sbin/tini -s -- /bin/sh -c 'SPARK_CLASSPATH="${SPARK_HOME}/jars/*" &&     
env | grep SPARK_JAVA_OPT_ | sed '\''s/[^=]*=\(.*\)/\1/g'
\'' > /tmp/java_opts.txt &&     readarray -t SPARK_DRIVER_JAVA_OPTS < 
/tmp/java_opts.txt &&     if ! [ -z ${SPARK_MOUNTED_CLASSPATH+x}
 ]; then SPARK_CLASSPATH="$SPARK_MOUNTED_CLASSPATH:$SPARK_CLASSPATH"; fi &&     
if ! [ -z ${SPARK_SUBMIT_EXTRA_CLASSPATH+x} ]; then SP
ARK_CLASSPATH="$SPARK_SUBMIT_EXTRA_CLASSPATH:$SPARK_CLASSPATH"; fi &&     if ! 
[ -z ${SPARK_MOUNTED_FILES_DIR+x} ]; then cp -R "$SPARK
_MOUNTED_FILES_DIR/." .; fi &&     ${JAVA_HOME}/bin/java 
"${SPARK_DRIVER_JAVA_OPTS[@]}" -cp "$SPARK_CLASSPATH" -Xms$SPARK_DRIVER_MEMOR
Y -Xmx$SPARK_DRIVER_MEMORY 
-Dspark.driver.bindAddress=$SPARK_DRIVER_BIND_ADDRESS $SPARK_DRIVER_CLASS 
$SPARK_DRIVER_ARGS'
Error: Could not find or load main class com.cloudera.spark.tests.Sleeper
{noformat}

Using an http server to provide the app jar solves the problem.

The k8s backend should either somehow make these files available to the cluster 
or error out with a more user-friendly message if that feature is not yet 
available.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to