Gi spark-shell sin pakkeoppløser proxyen ved oppstart
Oppgi JVM-proxyegenskapene til driveren før --packages-oppløsningen; senere shell-kode og executor-innstillinger kan overse den nedlastingen.
spark-shell --driver-java-options "-Dhttp.proxyHost=proxy.example -Dhttp.proxyPort=8080 -Dhttps.proxyHost=proxy.example -Dhttps.proxyPort=8080" --packages group:artifact:versionVed en klientstart av spark-shell kommer disse JVM-innstillingene for driveren før avhengighetsoppløsningen. Erstatt det illustrerende endepunktet og group:artifact:version med de tiltenkte verdiene ved å bruke innstillinger som den installerte Spark-versjonen støtter. Java-vertsnavn og -port er separate egenskaper. For tillatte offentlige avhengighetsnedlastinger tilbyr listen over HTTP-proxyer kandidater for disse feltene.
Bruk denne plasseringen når --packages feiler før shellen blir tilgjengelig. Applikasjonskode som tastes inn etterpå, kan ikke reparere den tidligere nedlastingen. Spark skiller oppstartsvalg fra programmatiske innstillinger; i klientmodus finnes driverens JVM allerede når applikasjonskoden kjører.
Utplasseringsmodus betyr også noe for spark.driver.extraJavaOptions: driveren kan kjøre på en annen maskin, som trenger sin egen vei til proxyen. En executors senere API-forespørsel er en annen prosess og et annet nettverkssted; å konfigurere executors konfigurerer ikke nødvendigvis oppstartsoppløsningen.
Når oppstartsvalgene er der, men nedlastingen feiler
Følg lagerets vertsnavn, forespørselstypen og den første feilen. Metadata og artefakter kan komme fra flere verter. En Maven-kompatibel lager-URL beviser ikke at Spark leser den settings.xml som en vellykket Maven-kommando bruker.
Javas nedlaster må støtte proxy-mekanismen og den påkrevde autentiseringen. Vert/port-egenskaper gir ikke alle skjemaer, og en oppdiktet http.proxyUsername-egenskap blir ikke effektiv bare fordi Java godtar navnet. Hold oppstartskonfigurasjonen og den konkrete mislykkede nedlastingen sammen når du diagnostiserer dette trinnet.