0
votes

I am new to Zeppelin and want to install it on my Windows10Pro/WSL machine. These installation scripts are used https://github.com/x4ax/lxss-install-zeppelin .

Since it is three years old, I had to modify it a bit, so I have:

  • Ubuntu 20.04, bash
  • zeppelin-0.9.0-bin-all
  • hadoop-3.3.0
  • spark-3.0.1-bin-hadoop2.7
  • I link python3 to python

Everything is installed, hadoop and spark are successfully tested with provided scripts. At the end I managed to see "Welcome to Zeppelin!" landing page.

First, I go to the provided tutorial python notes, "1.IPython Basic" and run first cell with %md only. I get the error message": "

org.apache.zeppelin.interpreter.InterpreterException: java.io.IOException: Fail to launch interpreter process: null at org.apache.zeppelin.interpreter.remote.RemoteInterpreter.open(RemoteInterpreter.java:129) at org.apache.zeppelin.interpreter.remote.RemoteInterpreter.getFormType(RemoteInterpreter.java:271) at org.apache.zeppelin.notebook.Paragraph.jobRun(Paragraph.java:444) at org.apache.zeppelin.notebook.Paragraph.jobRun(Paragraph.java:72) at org.apache.zeppelin.scheduler.Job.run(Job.java:172) at org.apache.zeppelin.scheduler.AbstractScheduler.runJob(AbstractScheduler.java:132) at org.apache.zeppelin.scheduler.RemoteScheduler$JobRunner.run(RemoteScheduler.java:182) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: java.io.IOException: Fail to launch interpreter process: null at org.apache.zeppelin.interpreter.remote.RemoteInterpreterManagedProcess.start(RemoteInterpreterManagedProcess.java:126) at org.apache.zeppelin.interpreter.ManagedInterpreterGroup.getOrCreateInterpreterProcess(ManagedInterpreterGroup.java:68) at org.apache.zeppelin.interpreter.remote.RemoteInterpreter.getOrCreateInterpreterProcess(RemoteInterpreter.java:104) at org.apache.zeppelin.interpreter.remote.RemoteInterpreter.internal_create(RemoteInterpreter.java:154) at org.apache.zeppelin.interpreter.remote.RemoteInterpreter.open(RemoteInterpreter.java:126) ... 13 more

Info from md-shared.log

INFO [2021-01-14 18:54:46,610] ({RemoteInterpreterServer-Thread} RemoteInterpreterServer.java[run]:193) - Launching ThriftServer at 169.254.120.3:52579 INFO [2021-01-14 18:54:47,785] ({RegisterThread} RemoteInterpreterServer.java[run]:609) - Registering interpreter process ERROR [2021-01-14 18:54:47,790] ({RegisterThread} RemoteInterpreterServer.java[run]:613) - Error while registering interpreter: RegisterInfo(host:169.254.120.3, port:52579, interpreterGroupId:md-shared_process), cause: {} java.lang.RuntimeException: java.io.IOException: org.apache.zeppelin.shaded.org.apache.thrift.transport.TTransportException: java.net.SocketException: Network is unreachable (connect failed)

Which means that there is some network problem

Steps to find solution:

  1. From logs I see the command like this, which is run by RemoteInterpreter java-object:

/usr/local/zeppelin/bin/interpreter.sh -d /usr/local/zeppelin/interpreter/md -c 169.254.120.3 -p 52579 -r : -i md-shared_process -l /usr/local/zeppelin/local-repo/md -g md

It runs silently.

  1. zeppelin-daemon.sh start/stop run ok. 'status' also shows correct status. So, restart does not help.

  2. Reinstall of zeppelin and of wsl did not help.

  3. I also tested problem while firewall was shutdown.

I am puzzled.

1

1 Answers

1
votes

By looking here Hello world in zeppelin failed I managed to run md interpreter by fixing in conf/zeppelin-env.sh

ZEPPELIN_LOCAL_IP=127.0.0.1

I saw some statements (I cannot confirm them!) that:

  • Microsoft WSL blocks random addressing or
  • WSL listens to localhost only if it is really local.

PS. Now, I have difficulty to run python interpreter, but that is another problem. (Besides, it can be linked to my aliasing of python with python3 or similar shell settings).