问题背景
1.登录EMR集群节点,运行SparkStreaming示例,如下所示(不同版本EMR集群spark-examples_xxx.jar的路径略有差异):
[root@emr-header-1 ~]# spark-submit --class org.apache.spark.examples.streaming.NetworkWordCount --master yarn --deploy-mode cluster /opt/apps/ecm/service/spark/2.3.2-1.0.2/package/spark-2.3.2-1.0.2-bin-hadoop2.7/examples/jars/spark-examples_2.11-2.3.2.jar 192.168.0.211 9999参数说明:
192.168.0.211: 监听流数据源地址
9999: 监听流数据源端口
2.提交作业后,通过EMR集群提供的Yarn UI来查看运行在yarn上面作业。

3.点击“ApplicationMaster”,跳转spark界面查看作业详情,切换到“Streaming”可以看到以下界面:

4.点击“Completed Batches”里面的某个完成时间点的Batch,跳转页面会报404错误:
如何解决?
这个问题目前是Knox兼容的一个缺陷,当前的建议是通过端口转发(俗称“打洞”)来访问Yarn UI查看作业,具体步骤如下(本文以Mac客户端为例测试):
1.本机终端输入:ssh-keygen,生成一个公钥:
test:~ root$ cd ~/.ssh/test:.ssh root$ lsid_rsa id_rsa.pub known_hoststest:.ssh root$ cat ~/.ssh/id_rsa.pubssh-rsa AAAAB3NzaC1yc2EAA....此处省略很多个字符..-6c96cfde9ab7.local2.登录到EMR Master 节点,将本机的 id_rsa.pub 内容写入到远程 Master 节点的 ~/.ssh/authorized_keys中:
vim ~/.ssh/authorized_keys3.本机测试免密登录到EMR Master 节点:
local:.ssh root$ ssh root@xx.xx.xx.xxLast login: Thu Aug 1 20:24:25 2019Welcome to Alibaba Cloud Elastic Compute Service ![root@emr-header-1 ~]#4.在本机执行以下命令进行端口转发:
/Applications/Google Chrome.app/Contents/MacOS/Google Chrome --proxy-server="socks5://localhost:8157" --host-resolver-rules="MAP * 0.0.0.0 , EXCLUDE localhost" --user-data-dir=/tmp5.启动 Chrome(在本机新开 terminal 执行)。
/Applications/Google Chrome.app/Contents/MacOS/Google Chrome --proxy-server="socks5://localhost:8157" --host-resolver-rules="MAP * 0.0.0.0 , EXCLUDE localhost" --user-data-dir=/tmp6.EMR控制台进入集群的安全组,放行8088、20888两个端口(可以通过ip.taobao.com获取客户端公网出口IP):
7.在Chrome中通过xx.xx.xx.xx:8088访问
8.点击“ApplicationMaster”,跳转spark界面查看作业详情无法访问,地址中是EMR Master节点的hostname,需要在本地配置下hosts映射:
local:~ root$ sudo vim /etc/hostsxx.xx.xx.xx emr-header-1.cluster-1267849.配置后即可访问。切换到“Streaming”,点击“Completed Batches”列表中的Batch,验证正常访问:
继续阅读与本文标签相同的文章
-
PyTorch专栏(二十):高级:制定动态决策和BI-LSTM CRF
2026-05-22栏目: 教程
-
“Python之父”从Dropbox退休
2026-05-22栏目: 教程
-
理解BERT:一个突破性NLP框架的综合指南
2026-05-22栏目: 教程
-
你都了解吗,直播卖货平台源码的工作原理和开发方式
2026-05-22栏目: 教程
-
商家如何借助O2O模式和小程序实现新突破?
2026-05-22栏目: 教程
