spark-shell --driver-java-options "-Dhttp.proxyHost=proxy.example -Dhttp.proxyPort=8080 -Dhttps.proxyHost=proxy.example -Dhttps.proxyPort=8080" --packages group:artifact:version

Nun lanzamento de spark-shell do lado cliente, estas opcións da JVM do controlador chegan antes da resolución de dependencias. Substitúe o punto de conexión ilustrativo e group:artifact:version polos valores previstos empregando opcións que admita a versión de Spark instalada. O nome de host e o porto de Java son propiedades separadas. Para descargas públicas de dependencias permitidas, a lista de proxys HTTP ofrece candidatos para eses campos.

Use esta localización cando --packages falla antes de que o shell estea dispoñible. O código de aplicación introducido despois non pode reparar a descarga anterior. Spark distingue as opcións de lanzamento da configuración programática; en modo cliente a JVM do controlador xa existe cando se executa o código de aplicación.

O modo de despregamento tamén importa para spark.driver.extraJavaOptions: o controlador pode executarse noutra máquina, que necesita a súa propia ruta ao proxy. A solicitude de API posterior dun executor é outro proceso e outra localización de rede; configurar os executores non configura necesariamente a resolución de arranque.

Cando hai opcións de lanzamento pero a descarga falla

Siga o nome de host do repositorio, o tipo de solicitude e o primeiro erro. Os metadatos e artefactos poden vir de varios hosts. Un URL de repositorio compatible con Maven non proba que Spark lea o settings.xml que usa un comando Maven correcto.

O descargador de Java debe admitir o mecanismo de proxy e a autenticación requirida. As propiedades de host/porto non cobren todos os esquemas, e unha propiedade http.proxyUsername inventada non se volve efectiva só porque Java acepte o nome. Manteña xuntas a configuración previa ao lanzamento e a descarga fallida concreta ao diagnosticar esta etapa.

Artigos relacionados