简体   繁体   English

PySpark:[Errno 8] nodename 或 servname 提供,或未知

[英]PySpark: [Errno 8] nodename nor servname provided, or not known

I am using pre-built 'spark-2.0.1-bin-hadoop2.7' and when I try to start pyspark, I get following message.我正在使用预构建的“spark-2.0.1-bin-hadoop2.7”,当我尝试启动 pyspark 时,我收到以下消息。 Any ideas what could be wrong?任何想法可能是错误的? I tried using python3, setting SPARK_LOCAL_IP to 127.0.0.1 but same error.我尝试使用 python3,将 SPARK_LOCAL_IP 设置为 127.0.0.1 但同样的错误。

~ -> cd /Applications/spark-2.0.1-bin-hadoop2.7/bin/
/Applications/spark-2.0.1-bin-hadoop2.7/bin -> pyspark
Python 2.7.12 (default, Oct 11 2016, 05:24:00)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.38)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel).
16/12/19 14:50:47 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
16/12/19 14:50:47 WARN Utils: Your hostname, XXXXXX.com resolves to a loopback address: 127.0.0.1; using XX.XX.XX.XXX instead (on interface en0)
16/12/19 14:50:47 WARN Utils: Set SPARK_LOCAL_IP if you need to bind to another address
Traceback (most recent call last):
  File "/Applications/spark-2.0.1-bin-hadoop2.7/python/pyspark/shell.py", line 43, in <module>
    spark = SparkSession.builder\
  File "/Applications/spark-2.0.1-bin-hadoop2.7/python/pyspark/sql/session.py", line 169, in getOrCreate
    sc = SparkContext.getOrCreate(sparkConf)
  File "/Applications/spark-2.0.1-bin-hadoop2.7/python/pyspark/context.py", line 294, in getOrCreate
    SparkContext(conf=conf or SparkConf())
  File "/Applications/spark-2.0.1-bin-hadoop2.7/python/pyspark/context.py", line 115, in __init__
    conf, jsc, profiler_cls)
  File "/Applications/spark-2.0.1-bin-hadoop2.7/python/pyspark/context.py", line 174, in _do_init
    self._accumulatorServer = accumulators._start_update_server()
  File "/Applications/spark-2.0.1-bin-hadoop2.7/python/pyspark/accumulators.py", line 259, in _start_update_server
    server = AccumulatorServer(("localhost", 0), _UpdateRequestHandler)
  File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 417, in __init__
    self.server_bind()
  File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 431, in server_bind
    self.socket.bind(self.server_address)
  File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/socket.py", line 228, in meth
    return getattr(self._sock,name)(*args)
socket.gaierror: [Errno 8] nodename nor servname provided, or not known

Thanks谢谢

Found it.找到了。 Some how my host mapping was messing it up.我的主机映射是如何搞砸的。 Changing it to point to localhost worked.:将其更改为指向 localhost 有效。:

/etc/host /etc/主机

#127.0.0.1 XXXXXX.com #127.0.0.1 XXXXXX.com

127.0.0.1 localhost 127.0.0.1 本地主机

In cases when you cannot cleanup /etc/hosts (such as it's being tempered with by some VPN solution), here is a workaround:如果您无法清理 /etc/hosts(例如某些 VPN 解决方案对其进行了调整),这里有一个解决方法:

from pyspark.sql import SparkSession

def patch_pyspark_accumulators():
    from inspect import getsource
    import pyspark.accumulators as pa
    exec(getsource(pa._start_update_server).replace("localhost", "127.0.0.1"), pa.__dict__)

patch_pyspark_accumulators()
spark = SparkSession.builder.getOrCreate()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Tweepy:[Errno 8]提供nodename或servname,或者不知道 - Tweepy: [Errno 8] nodename nor servname provided, or not known gaierror:[Errno 8]提供的节点名或服务名,或者未知 - gaierror: [Errno 8] nodename nor servname provided, or not known WSGIServerException:[Errno 8]提供了nodename或servname,或者未知 - WSGIServerException: [Errno 8] nodename nor servname provided, or not known gaierror: [Errno 8] 节点名或服务名已提供,或未知 - gaierror: [Errno 8] nodename nor servname provided, or not known IOError:[Errno套接字错误] [Errno 8]提供的节点名或服务名,或者未知 - IOError: [Errno socket error] [Errno 8] nodename nor servname provided, or not known 提供的节点名或服务名,或者未知 - nodename nor servname provided, or not known easy_install pip == [Errno 8]提供nodename或servname,或者不知道 - easy_install pip == [Errno 8] nodename nor servname provided, or not known gaierror: [Errno 8] nodename 或 servname 提供,或未知(使用 macOS Sierra) - gaierror: [Errno 8] nodename nor servname provided, or not known (with macOS Sierra) 正在获取socket.gaierror:[Errno 8]节点名或服务名已提供,或者未知 - Getting socket.gaierror: [Errno 8] nodename nor servname provided,or not known 网址错误: <urlopen error [errno 8] nodename nor servname provided, or not known></urlopen> - URLError: <urlopen error [Errno 8] nodename nor servname provided, or not known>
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM