2014-04-29 14 views
5

Ich möchte Spark auf einem lokalen Computer mit Pyspark ausführen. Von here verwende ich die Befehle:Probleme bei der Installation von Pyspark

sbt/sbt assembly 
$ ./bin/pyspark 

Der Abschluss der Installation, aber pyspark ist nicht in der Lage zu laufen, in dem folgenden Fehler führt (vollständig):

138:spark-0.9.1 comp_name$ ./bin/pyspark 
Python 2.7.6 |Anaconda 1.9.2 (x86_64)| (default, Jan 10 2014, 11:23:15) 
[GCC 4.0.1 (Apple Inc. build 5493)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
Traceback (most recent call last): 
    File "/Users/comp_name/Downloads/spark-0.9.1/python/pyspark/shell.py", line 32, in <module> 
    sc = SparkContext(os.environ.get("MASTER", "local"), "PySparkShell", pyFiles=add_files) 
    File "/Users/comp_name/Downloads/spark-0.9.1/python/pyspark/context.py", line 123, in __init__ 
    self._jsc = self._jvm.JavaSparkContext(self._conf._jconf) 
    File "/Users/comp_name/Downloads/spark-0.9.1/python/lib/py4j-0.8.1-src.zip/py4j/java_gateway.py", line 669, in __call__ 
    File "/Users/comp_name/Downloads/spark-0.9.1/python/lib/py4j-0.8.1-src.zip/py4j/protocol.py", line 300, in get_return_value 
py4j.protocol.Py4JJavaError: An error occurred while calling None.org.apache.spark.api.java.JavaSparkContext. 
: java.net.UnknownHostException: 138.7.100.10.in-addr.arpa: 138.7.100.10.in-addr.arpa: nodename nor servname provided, or not known 
    at java.net.InetAddress.getLocalHost(InetAddress.java:1466) 
    at org.apache.spark.util.Utils$.findLocalIpAddress(Utils.scala:355) 
    at org.apache.spark.util.Utils$.localIpAddress$lzycompute(Utils.scala:347) 
    at org.apache.spark.util.Utils$.localIpAddress(Utils.scala:347) 
    at org.apache.spark.util.Utils$.localIpAddressHostname$lzycompute(Utils.scala:348) 
    at org.apache.spark.util.Utils$.localIpAddressHostname(Utils.scala:348) 
    at org.apache.spark.util.Utils$$anonfun$localHostName$1.apply(Utils.scala:395) 
    at org.apache.spark.util.Utils$$anonfun$localHostName$1.apply(Utils.scala:395) 
    at scala.Option.getOrElse(Option.scala:120) 
    at org.apache.spark.util.Utils$.localHostName(Utils.scala:395) 
    at org.apache.spark.SparkContext.<init>(SparkContext.scala:124) 
    at org.apache.spark.api.java.JavaSparkContext.<init>(JavaSparkContext.scala:47) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) 
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 
    at java.lang.reflect.Constructor.newInstance(Constructor.java:526) 
    at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:234) 
    at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:379) 
    at py4j.Gateway.invoke(Gateway.java:214) 
    at py4j.commands.ConstructorCommand.invokeConstructor(ConstructorCommand.java:79) 
    at py4j.commands.ConstructorCommand.execute(ConstructorCommand.java:68) 
    at py4j.GatewayConnection.run(GatewayConnection.java:207) 
    at java.lang.Thread.run(Thread.java:724) 
Caused by: java.net.UnknownHostException: 138.7.100.10.in-addr.arpa: nodename nor servname provided, or not known 
    at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method) 
    at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:894) 
    at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1286) 
    at java.net.InetAddress.getLocalHost(InetAddress.java:1462) 
    ... 22 more 

Alle Ideen, was ich falsch mache? Ich weiß nicht, woher die IP-Adresse 138.7.100.10 stammt. Ich erhalte diesen Fehler, wenn ich (oder nicht) MAMP verwende, um einen localhost zu erstellen. Vielen Dank im Voraus!

Antwort

4

Ich stelle fest, die Java-Version, die ich verwendete, war 1.7. Ich bin ein Macbook Air verwendet wird, läuft 10.9.2

$ java -version 

mir gab:

java version "1.7.0_25" 
Java(TM) SE Runtime Environment (build 1.7.0_25-b15) 
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode) 

auf 1,6 Herabstufung:

$ cd /Library/Java/JavaVirtualMachines 
$ ls 

zurückgegeben:

jdk1.7.0_25.jdk 

Um diese Datei zu löschen (und downgrade ja va und beheben mein Problem):

$ sudo rm -rf jdk1.7.0_25.jdk 

Dann hatte ich:

$ java -version 

, die den Ausgang gab:

java version "1.6.0_65" 
Java(TM) SE Runtime Environment (build 1.6.0_65-b14-462-11M4609) 
Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-462, mixed mode) 

Und schließlich, ich bin in der Lage Funke laufen:

$ ./bin/pyspark 

Und alles ist glücklich:

Welcome to 
     ____    __ 
    /__/__ ___ _____/ /__ 
    _\ \/ _ \/ _ `/ __/ '_/ 
    /__/.__/\_,_/_/ /_/\_\ version 0.9.1 
     /_/ 
10

Die richtige Lösung ist SPARK_LOCAL_IP Umgebungsvariable auf localhost oder was auch immer Sie Ihren Hostnamen zu setzen.

+1

Weit besser als Java downgrade. :) –

5

Ich hatte das gleiche Problem mit Spark und es ist mit Ihrem Laptop IP verwandt.

Meine Lösung:

sudo/etc/hosts

unter

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

127.0.0.1 LAPTOPNAME hinzufügen

Ihre LAPT Opname kann mit dem Terminal gefunden werden und es ist root @ LAPTOPNAME

mit Java1 Es läuft (je nachdem, was Sie während der Installation eingerichtet haben).7

+2

fügen Sie bitte vi oder emacs zu sudo/etc/hosts hinzu, um die Verwendung eines Texteditors zu verdeutlichen – lapolonio

Verwandte Themen