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

Asiakaspuolen spark-shell-käynnistyksessä nämä ajurin JVM-asetukset saapuvat ennen riippuvuuksien ratkaisua. Korvaa havainnollistava päätepiste ja group:artifact:version halutuilla arvoilla käyttäen asetuksia, joita asennettu Spark-versio tukee. Javan isäntänimi ja portti ovat erillisiä ominaisuuksia. Sallituille julkisille riippuvuuksien latauksille HTTP-välityspalvelinten luettelo tarjoaa ehdokkaita näille kentille.

Käytä tätä sijoitusta, kun --packages epäonnistuu ennen kuin shell on käytettävissä. Myöhemmin syötetty sovelluskoodi ei voi korjata aiempaa latausta. Spark erottaa käynnistysasetukset ohjelmallisista asetuksista; asiakastilassa ajurin JVM on jo olemassa, kun sovelluskoodi suoritetaan.

Myös käyttöönottotila on tärkeä spark.driver.extraJavaOptions-asetukselle: ajuri voi toimia toisella koneella, joka tarvitsee oman reittinsä välityspalvelimeen. Suorittajan myöhempi API-pyyntö on toinen prosessi ja toinen verkkosijainti; suorittajien määrittäminen ei välttämättä määritä käynnistyksen ratkaisua.

Kun käynnistysasetukset ovat olemassa mutta lataus epäonnistuu

Seuraa tietovaraston isäntänimeä, pyyntötyyppiä ja ensimmäistä virhettä. Metatiedot ja artefaktit voivat tulla usealta isännältä. Maven-yhteensopiva tietovaraston URL ei todista, että Spark lukee settings.xml-tiedostoa, jota onnistunut Maven-komento käyttää.

Javan lataajan on tuettava välityspalvelinmekanismia ja vaadittua todennusta. Isäntä/portti-ominaisuudet eivät kata kaikkia skeemoja, eikä keksitty http.proxyUsername-ominaisuus tule tehokkaaksi vain siksi, että Java hyväksyy nimen. Pidä käynnistystä edeltävä kokoonpano ja tietty epäonnistunut lataus yhdessä tätä vaihetta diagnosoidessasi.

Aiheeseen liittyvät artikkelit