2016-04-17 6 views
6

मैं कॉर्पोरेट प्रॉक्सी के पीछे बाहरी पैकेज के साथ स्पार्क-खोल चलाने के लिए चाहता हूं। दुर्भाग्य से --packages विकल्प के माध्यम से पारित बाहरी पैकेज हल नहीं किए गए हैं।कॉर्पोरेट प्रॉक्सी के पीछे स्पार्क-खोल के साथ बाहरी पैकेज को कैसे हल करें?

उदाहरण के लिए, जब

bin/spark-shell --packages datastax:spark-cassandra-connector:1.5.0-s_2.10 

कैसेंड्रा कनेक्टर पैकेज का समाधान नहीं होता चल रहा है (अंतिम पंक्ति पर अटक):

Ivy Default Cache set to: /root/.ivy2/cache 
The jars for the packages stored in: /root/.ivy2/jars 
:: loading settings :: url = jar:file:/opt/spark/lib/spark-assembly-1.6.1-hadoop2.6.0.jar!/org/apache/ivy/core/settings/ivysettings.xml 
datastax#spark-cassandra-connector added as a dependency 
:: resolving dependencies :: org.apache.spark#spark-submit-parent;1.0 
     confs: [default] 

कुछ समय के बाद कनेक्शन का समय समाप्त इस तरह त्रुटि संदेश युक्त

:::: ERRORS 
     Server access error at url https://repo1.maven.org/maven2/datastax/spark-cassandra-connector/1.5.0-s_2.10/spark-cassandra-connector-1.5.0-s_2.10.pom (java.net.ConnectException: Connection timed out) 

जब मैं कॉर्पोरेट प्रॉक्सी के साथ वीपीएन को निष्क्रिय करता हूं तो पैकेज हो जाता है हल और तुरंत डाउनलोड किया गया।

क्या मैं अब तक की कोशिश की:

वातावरण चर के रूप में प्रॉक्सी उजागर:

export http_proxy=<proxyHost>:<proxyPort> 
export https_proxy=<proxyHost>:<proxyPort> 
export JAVA_OPTS="-Dhttp.proxyHost=<proxyHost> -Dhttp.proxyPort=<proxyPort>" 
export ANT_OPTS="-Dhttp.proxyHost=<proxyHost> -Dhttp.proxyPort=<proxyPort>" 

अतिरिक्त जावा विकल्पों के साथ चिंगारी से खोल चल रहा है:

bin/spark-shell --conf "spark.driver.extraJavaOptions=-Dhttp.proxyHost=<proxyHost> -Dhttp.proxyPort=<proxyPort>" --conf "spark.executor.extraJavaOptions=-Dhttp.proxyHost=<proxyHost> -Dhttp.proxyPort=<proxyPort>" --packages datastax:spark-cassandra-connector:1.6.0-M1-s_2.10 

कुछ अन्य विन्यास संभावना है मैं गायब हूँ

उत्तर

13

मिले सही सेटिंग्स:

bin/spark-shell --conf "spark.driver.extraJavaOptions=-Dhttp.proxyHost=<proxyHost> -Dhttp.proxyPort=<proxyPort> -Dhttps.proxyHost=<proxyHost> -Dhttps.proxyPort=<proxyPort>" --packages <somePackage> 

दोनों http और https प्रॉक्सी के रूप में अतिरिक्त चालक विकल्पों को सेट किया जाना है। JAVA_OPTS कुछ भी प्रतीत नहीं होता है।

+1

क्या आप जानते हैं कि स्पार्क-सबमिट --मास्टर यार्न - डिप्लॉय-मोड क्लस्टर के साथ ऐसा कैसे करें? – angelcervera

+0

मेरे लिए स्पार्क 2 पर सबमिट करें- सबमिट करें '- ड्रायवर-जावा-विकल्प "-Dhttps.proxyHost = httpproxy -Dhttps.proxyPort = 80"' –

3

यह चिंगारी 1.6.1 में मेरे लिए काम किया:

bin\spark-shell --driver-java-options "-Dhttp.proxyHost=<proxyHost> -Dhttp.proxyPort=<proxyPort> -Dhttps.proxyHost=<proxyHost> -Dhttps.proxyPort=<proxyPort>" --packages <package> 
0

चिंगारी 2.0.0-बिन-hadoop2.7 मैं की तरह %SPARK_HOME%"\spark-2.0.0-bin-hadoop2.7\conf\spark-defaults.conf में spark.driver.extraJavaOptions सेट के साथ विंडोज 7 पर:

spark.driver.extraJavaOptions -Dhttp.proxyHost=hostname -Dhttp.proxyPort=port -Dhttps.proxyHost=host -Dhttps.proxyPort=port 
0

मेरे लिए

spark.driver.extraJavaOptions=-Dhttp.proxyHost=<proxyHost> -Dhttp.proxyPort=<proxyPort> -Dhttps.proxyHost=<proxyHost> -Dhttps.proxyPort=<proxyPort> 

$SPARK_HOME/conf/spark-defaults.conf लिए काम करता है जोड़ें। java.net.useSystemProxies:

--conf "spark.driver.extraJavaOptions=-Djava.net.useSystemProxies=true"

तो प्रॉक्सी होस्ट/पोर्ट और कोई प्रॉक्सी मेजबान विन्यस्त किया जाएगा

0

प्रॉक्सी सही तरीके से अपने ओएस पर कॉन्फ़िगर किया गया है, तो आप जावा संपत्ति का उपयोग कर सकते हैं।

संबंधित मुद्दे