WSL上的齐柏林飞艇。java.io.IOException:无法启动解释器进程

WSL上的齐柏林飞艇。java.io.IOException:无法启动解释器进程,java,python,interpreter,apache-zeppelin,Java,Python,Interpreter,Apache Zeppelin,我是齐柏林飞艇的新手,想在我的Windows10Pro/WSL机器上安装它。 使用这些安装脚本 因为它已经三年了,我不得不对它进行一些修改,所以我: Ubuntu 20.04,bash 齐柏林飞艇-0.9.0-bin-all hadoop-3.3.0 spark-3.0.1-bin-hadoop2.7 我将python3链接到python 一切都已安装,hadoop和spark已使用提供的脚本成功测试。最后,我设法看到了“欢迎来到齐柏林飞艇!”登录页 首先,我转到提供的python说明教程,

我是齐柏林飞艇的新手,想在我的Windows10Pro/WSL机器上安装它。 使用这些安装脚本

因为它已经三年了,我不得不对它进行一些修改,所以我:

  • Ubuntu 20.04,bash
  • 齐柏林飞艇-0.9.0-bin-all
  • hadoop-3.3.0
  • spark-3.0.1-bin-hadoop2.7
  • 我将python3链接到python
一切都已安装,hadoop和spark已使用提供的脚本成功测试。最后,我设法看到了“欢迎来到齐柏林飞艇!”登录页

首先,我转到提供的python说明教程,“1.IPython Basic”并仅使用%md运行第一个单元格。我收到错误消息”: "

org.apache.zeppelin.interpreter.解释器异常:java.io.IOException:无法启动解释器进程: 无效的 位于org.apache.zeppelin.explorer.remote.remoteexplorer.open(remoteexplorer.java:129) 位于org.apache.zeppelin.explorer.remote.remoteexplorer.getFormType(remoteexplorer.java:271) 在org.apache.zeppelin.notebook.paragration.jobRun上(paragration.java:444) 在org.apache.zeppelin.notebook.paragration.jobRun上(paragration.java:72) 位于org.apache.zeppelin.scheduler.Job.run(Job.java:172) 位于org.apache.zeppelin.scheduler.AbstractScheduler.runJob(AbstractScheduler.java:132) 在org.apache.zeppelin.scheduler.RemoteScheduler$JobRunner.run(RemoteScheduler.java:182)上 位于java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 在java.util.concurrent.FutureTask.run(FutureTask.java:266)处 位于java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) 位于java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) 位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 运行(Thread.java:748) 原因:java.io.IOException:无法启动解释器进程: 无效的 位于org.apache.zeppelin.explorer.remote.RemoteExplorerNamedProcess.start(RemoteExplorerNamedProcess.java:126) 位于org.apache.zeppelin.interpreter.ManagedInterpreterGroup.getOrCreateInterpreterProcess(ManagedInterpreterGroup.java:68) 位于org.apache.zeppelin.explorer.remote.remoteexplorer.getorCreateExplorerProcess(remoteexplorer.java:104) 位于org.apache.zeppelin.explorer.remote.remoteexplorer.internal_create(remoteexplorer.java:154) 位于org.apache.zeppelin.explorer.remote.remoteexplorer.open(remoteexplorer.java:126) ... 还有13个

来自md-shared.log的信息

信息[2021-01-14 18:54:46610]({RemoteExpressorServer Thread}RemoteExpressorServer.java[run]:193)-在169.254.120.3:52579启动ThriftServer INFO[2021-01-14 18:54:47785]({RegisterThread}RemoteExpressorServer.java[run]:609)-注册解释器进程 错误[2021-01-14 18:54:47790]({RegisterThread}RemoteExpressorServer.java[run]:613)-注册解释器时出错:RegisterInfo(主机:169.254.120.3,端口:52579,解释器组ID:md-shared_进程),原因:{ java.lang.RuntimeException:java.io.IOException:org.apache.zeppelin.shade.org.apache.thrift.transport.ttTransportException:java.net.SocketException:无法访问网络(连接失败)

这意味着存在一些网络问题

找到解决方案的步骤:

  • 从日志中,我看到如下命令,由Remote解释器java对象运行:
  • /usr/local/zeppelin/bin/translator.sh-d/usr/local/zeppelin/Translator/md-c 169.254.120.3-p 52579-r:-i md-shared_流程-l/usr/local/zeppelin/local repo/md-g md

    它无声地运行

  • zeppelin-daemon.sh启动/停止运行正常。”“状态”也显示正确的状态。因此,重新启动没有帮助

  • 齐柏林飞艇和wsl的重新安装没有帮助

  • 我还测试了防火墙关闭时的问题

  • 我很困惑。

    通过查看这里,我通过在conf/zeppelin env.sh中修复来运行md解释器

    ZEPPELIN_LOCAL_IP=127.0.0.1
    
    我看到一些陈述(我无法证实!),其中包括:

    • Microsoft WSL阻止随机寻址或
    • WSL只在localhost确实是本地主机时才侦听它
    现在,我很难运行python解释器,但这是另一个问题。 (此外,它还可以通过python3或类似的shell设置链接到我的python别名)