Github user jongyoul commented on the issue:
https://github.com/apache/zeppelin/pull/2329
@zjffdu Thanks for quick review. I know spark already have yarn-cluster by
itself. In case of Zeppelin, SparkInterpreter will run yarn-client mode which
means driver is still in a process zeppelin launches. at the same time,
SparkInterpreter will run in a yarn cluster as one of application masters and
will launch Spark's application master as a new application master in yarn
cluster. It's fully same as spark-summit does except one thing to spark driver
is also in yarn cluster. If you test it in a cluster, you will see like this:

It's launched as yarn-client mode. The application type of `ZEPPELIN
INTERPRETER` is a driver and one of `SPARK` is a application master spark
launches.
BTW, I searched how livy has been supporting yarn-cluster mode and it's
adoptable for Zeppelin, too. I'll add that feature sooner.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---