Apache Spark:启动PySpark时出错

jdp*_*sad 5 python hadoop apache-spark pyspark

在Centos机器上,Python v2.6.6和Apache Spark v1.2.1

尝试运行./pyspark时出现以下错误

似乎python的一些问题,但无法弄清楚

15/06/18 08:11:16 INFO spark.SparkContext: Successfully stopped SparkContext
Traceback (most recent call last):
  File "/usr/lib/spark_1.2.1/spark-1.2.1-bin-hadoop2.4/python/pyspark/shell.py", line 45, in <module>
    sc = SparkContext(appName="PySparkShell", pyFiles=add_files)
  File "/usr/lib/spark_1.2.1/spark-1.2.1-bin-hadoop2.4/python/pyspark/context.py", line 105, in __init__
    conf, jsc)
  File "/usr/lib/spark_1.2.1/spark-1.2.1-bin-hadoop2.4/python/pyspark/context.py", line 157, in _do_init
    self._accumulatorServer = accumulators._start_update_server()
  File "/usr/lib/spark_1.2.1/spark-1.2.1-bin-hadoop2.4/python/pyspark/accumulators.py", line 269, in _start_update_server
    server = AccumulatorServer(("localhost", 0), _UpdateRequestHandler)
  File "/usr/lib64/python2.6/SocketServer.py", line 402, in __init__
    self.server_bind()
  File "/usr/lib64/python2.6/SocketServer.py", line 413, in server_bind
    self.socket.bind(self.server_address)
  File "<string>", line 1, in bind
socket.gaierror: [Errno -2] Name or service not known
>>> 15/06/18 08:11:16 INFO remote.RemoteActorRefProvider$RemotingTerminator: Shutting down remote daemon.
15/06/18 08:11:16 INFO remote.RemoteActorRefProvider$RemotingTerminator: Remote daemon shut down; proceeding with flushing remote transports.
Run Code Online (Sandbox Code Playgroud)

小智 7

从日志中看起来pyspark无法理解主机localhost.请检查您的/ etc/hosts文件,如果localhost不可用,请添加一个应该解决此问题的条目.

例如:

[IP] [主机名] localhost

如果您无法更改服务器的主机条目,请编辑/python/pyspark/accumulators.py第269行,如下所示

server = AccumulatorServer(("[ 来自hosts文件的服务器主机名 ]",0),_ UpdatedquestHandler)