¿Cómo agregar un archivo de configuración a classpath de todos los ejecutores de Spark en Spark 1.2.0?
Estoy usando Typesafe Config,https://github.com/typesafehub/config, para parametrizar un trabajo de Spark que se ejecuta en modo yarn-cluster con un archivo de configuración. El comportamiento predeterminado de Typesafe Config es buscar recursos de classpath con nombres que coincidan con una expresión regular y cargarlos en su clase de configuración automáticamente conConfigFactory.load()
(para nuestros propósitos, supongamos que el archivo que busca se llamaapplication.conf
)
Puedo cargar el archivo de configuración en el controlador usando--driver-class-path <directory containing configuration file>
, pero usando--conf spark.executor.extraClassPath=<directory containing configuration file>
no coloca el recurso en el classpath de todos los ejecutores como debería. Los ejecutores informan que no pueden encontrar una determinada configuración para una clave que sí existe en el archivo de configuración que intento agregar a sus classpaths.
¿Cuál es la forma correcta de agregar un archivo a las rutas de clases de todas las JVM ejecutoras que usan Spark?