Dê ao resolvedor de pacotes do spark-shell o seu proxy no arranque
Forneça as propriedades de proxy da JVM do driver antes da resolução de --packages; o código de shell e as configurações de executor posteriores podem perder essa transferência.
spark-shell --driver-java-options "-Dhttp.proxyHost=proxy.example -Dhttp.proxyPort=8080 -Dhttps.proxyHost=proxy.example -Dhttps.proxyPort=8080" --packages group:artifact:versionNum arranque de spark-shell do lado do cliente, estas opções da JVM do driver chegam antes da resolução de dependências. Substitua o ponto final ilustrativo e group:artifact:version pelos valores pretendidos usando opções suportadas pela versão do Spark instalada. O nome do host e a porta Java são propriedades separadas. Para transferências públicas de dependências permitidas, a lista de proxies HTTP oferece candidatos para esses campos.
Use esta colocação quando --packages falha antes de o shell ficar disponível. O código de aplicação introduzido depois não pode reparar a transferência anterior. O Spark distingue opções de arranque de configurações programáticas; no modo cliente a JVM do driver já existe quando o código de aplicação é executado.
O modo de implementação também importa para spark.driver.extraJavaOptions: o driver pode correr noutra máquina, que precisa do seu próprio caminho para o proxy. O pedido de API posterior de um executor é outro processo e outra localização de rede; configurar os executores não configura necessariamente a resolução no arranque.
Quando há opções de arranque mas a transferência falha
Siga o nome do host do repositório, o tipo de pedido e o primeiro erro. Os metadados e artefactos podem vir de vários hosts. Um URL de repositório compatível com Maven não prova que o Spark leia o settings.xml usado por um comando Maven bem-sucedido.
O descarregador Java deve suportar o mecanismo de proxy e a autenticação necessária. As propriedades de host/porta não fornecem todos os esquemas, e uma propriedade http.proxyUsername inventada não se torna eficaz só porque o Java aceita o nome. Mantenha juntas a configuração anterior ao arranque e a transferência falhada específica ao diagnosticar esta fase.