Here is the ps tree for the two cases.
And I have no idea why Zeppelin fork some sub processes for STTY when
Zeppelin is hanging

* Working
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0   1144     4 ?        Ss   08:24   0:00 /dev/init
-- /usr/local/bin/bootstrap.sh
root         7  0.0  0.0  48696  3132 ?        S    08:24   0:00 su -l h.ren
h.ren       25  0.0  0.0  20144  3816 ?        S    08:25   0:00  \_ -su
h.ren      279  0.0  0.0  36144  3272 ?        R+   08:27   0:00      \_ ps
auxf -G1
h.ren       79  6.0  1.5 6305268 520520 ?      Sl   08:25   0:10
/usr/lib/jvm/java-8-openjdk-amd64/bin/java -Dfile.encoding=UTF-8 -Xms1024m
-Xmx1024m -XX:MaxPermSize=512m -Dlog4j
h.ren      133  0.0  0.0  11492  3124 ?        S    08:27   0:00  \_
/bin/bash /app/zeppelin/bin/interpreter.sh -d
/app/zeppelin/interpreter/spark -c 172.17.0.2 -p 45475 -r : -l
h.ren      145  0.0  0.0  11492  2112 ?        S    08:27   0:00      \_
/bin/bash /app/zeppelin/bin/interpreter.sh -d
/app/zeppelin/interpreter/spark -c 172.17.0.2 -p 45475 -r :
h.ren      146  110  2.0 14354788 670188 ?     Sl   08:27   0:18
\_ /usr/lib/jvm/java-8-openjdk-amd64/bin/java -cp
/app/zeppelin/interpreter/spark/*:/app/zeppelin/lib/in

* Hanging
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.1  0.0   1144     4 ?        Ss   12:56   0:00 /dev/init
-- /usr/local/bin/bootstrap.sh
root         7  0.0  0.0  48696  3128 ?        S    12:56   0:00 su -l h.ren
h.ren       25  0.0  0.0  20152  3832 ?        S    12:56   0:00  \_ -su
h.ren      208  0.0  0.0  36144  3172 ?        R+   12:57   0:00      \_ ps
auxf -g1
h.ren       79 40.2  1.5 6238704 516152 ?      Tl   12:57   0:09
/usr/lib/jvm/java-8-openjdk-amd64/bin/java -Dfile.encoding=UTF-8 -Xms1024m
-Xmx1024m -XX:MaxPermSize=512m -Dlog4j
h.ren      131  0.0  0.0  11492  3088 ?        T    12:57   0:00  \_
/bin/bash /app/zeppelin/bin/interpreter.sh -d
/app/zeppelin/interpreter/spark -c 172.17.0.2 -p 37333 -r : -l
h.ren      143  0.0  0.0  11492  1980 ?        T    12:57   0:00      \_
/bin/bash /app/zeppelin/bin/interpreter.sh -d
/app/zeppelin/interpreter/spark -c 172.17.0.2 -p 37333 -r :
h.ren      144 24.3  0.8 12053996 287476 ?     Tl   12:57   0:03
\_ /usr/lib/jvm/java-8-openjdk-amd64/bin/java -cp
/app/zeppelin/interpreter/spark/*:/app/zeppelin/lib/in
h.ren      205  0.0  0.0   4524   720 ?        T    12:57   0:00
  \_ sh -c stty -icanon min 1 -icrnl -inlcr -ixon < /dev/tty
h.ren      206  0.0  0.0   6136   708 ?        T    12:57   0:00
      \_ stty -icanon min 1 -icrnl -inlcr -ixon

On Thu, Apr 4, 2019 at 12:45 AM Hao Ren <inv...@gmail.com> wrote:

> Hi,
> I am testing zeppelin in docker container by using the official image:
> https://hub.docker.com/r/apache/zeppelin/dockerfile
>
> I notice that the Dockfile above is using "bin/zeppelin.sh" to start
> zeppelin, instead of "bin/zeppelin-daemon start".
>
> I am not clear on the difference between the two scripts. So I did some
> tests.
>
> What I did:
> * remove ENTRYPOINT and CMD from Dockfile
> * build and run the container
> * Inside the container terminal, use "bin/zeppelin-daemon.sh start" to
> start Zeppelin
>
> The problem I met:
> * Zeppelin can be launched
> * However, when executing "spark.version" in notebook, Zeppelin hangs
> * http://localhost:8080/#/interpreter does not show anything
>
> If I stop the daemon and use "bin/zeppelin.sh" to start Zeppelin,
> everything works as expected.
>
> Further investigation shows that the two scripts seem to run the same
> command, except "bin/zeppelin-daemon start" using "nohup nice" to run the
> command in the background. So I tried to run "nohup nice bin/zeppelin.sh",
> unsurprisingly, the problem mentioned above appears again.
>
> Once I bring the process to the foreground, the frozen page works again!
>
> Could anyone explain what has happened? I  am so confused about this. It
> might be related to the way background process works in the docker
> container. I am new to docker and Zeppelin.
> Any help is highly appreciated.
>
> Thank you.
>
> --
> Hao Ren
>
> Software Engineer in Machine Learning @ Criteo
>
> Paris, France
>


-- 
Hao Ren

Software Engineer in Machine Learning @ Criteo

Paris, France

Reply via email to