如何设置 Zeppelin 以使用远程 EMR Yarn 集群

How to set up Zeppelin to work with remote EMR Yarn cluster

我有带有 Spark 1.4.1 和 Yarn 资源管理器的 Amazon EMR Hadoop v2.6 集群。 我想在单独的机器上部署 Zeppelin 以允许在没有作业时关闭 EMR 集群 运行。

我尝试按照此处的说明进行操作 https://zeppelin.incubator.apache.org/docs/install/yarn_install.html 没有多少成功。

有人可以解开 Zeppelin 应该如何从不同机器连接到现有 Yarn 集群的步骤吗?

[1] 使用正确的参数安装 Zeppelin:

git clone https://github.com/apache/incubator-zeppelin.git ~/zeppelin;
cd ~/zeppelin;
mvn clean package -Pspark-1.4 -Dhadoop.version=2.6.0 -Phadoop-2.6 -Pyarn -DskipTests

[2] 更新 EMR_MASTER EC2 安全组以接受来自所有端口的传入请求,与 Zeppelin 通信(应该是特定端口,还不知道是哪个)

[3] 将目录 EMR_MASTER:/etc/hadoop/conf 复制到 MY_STANDALONE_SERVER:/home/zeppelin/hadoop-conf.

[4] zeppelin/conf/zeppelin-env.sh 应包含:

export MASTER=yarn-client
export HADOOP_CONF_DIR=/home/zeppelin/hadoop-conf

注意:spark.executor.instances 等 Spark 参数取自解释器设置,在此处指定。