dask分布式客户端中的ImportError

时间:2018-07-17 20:06:28

标签: python distributed dask

在过去的几个月中,我们一直在使用分布在计算集群上的dask。最近,我们升级了所有的python软件包,现在所有的dask客户端似乎都出错,并显示以下消息:

distributed.nanny - INFO -         Start Nanny at: 'tcp://10.38.37.14:40983'
Traceback (most recent call last):
File "PYTHON_INSTALL_DIR/lib/python3.6/multiprocessing/forkserver.py", line 
178, in main
  _serve_one(s, listener, alive _r, handler)
File "PYTHON_INSTALL_DIR/lib/python3.6/multiprocessing/forkserver.py", line 212, in _serve_one 
    code = spawn._main(child_r)
File "PYTHON_INSTALL_DIR/lib/python3.6/multiprocessing/spawn.py", line 115, 
in _main
    self = reduction.pickle.load(from_parent)
ModuleNotFoundError: No module named 'distributed.http'
distributed.nanny - WARNING - Worker process 8566 was killed by unknown signal
distributed.nanny - WARNING - Restarting worker

任何想法都可能导致此问题吗? 仅供参考,我在以下版本的dask相关软件包中收到此错误:

  1. dask-0.18.1
  2. distributed-1.22.0

谢谢

1 个答案:

答案 0 :(得分:1)

distributed.http实际上在最新版本中已删除。 出现此错误表明您的安装中存在不兼容的版本,或者您的路径以某种方式混淆了。您可以检查诸如$PATHwhich pythonwhich dask-workerpython -c 'import sys; print(sys.path)'之类的内容。

我建议安装到新的虚拟或conda env中(我个人更喜欢conda)。