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