如何从 `yarn application -list` 访问 Tracking-URL?
Posted
技术标签:
【中文标题】如何从 `yarn application -list` 访问 Tracking-URL?【英文标题】:How to access Tracking-URL from `yarn application -list`? 【发布时间】:2017-03-03 23:20:44 【问题描述】:我想查看我在 yarn 中看到的某个工作的 yarn web UI。
当我执行yarn application -list
时,我可以看到跟踪 URL <tracking-URL>
。
所以,我在 chrome 中导航到该页面,它给了我这样的错误:
The 172.12.15.181 page isn't working.
172.12.15.181 didn't send any data.
我显然已经通过 ssh 进入了应该允许我看到它的机器。此外,这份工作绝对是在 YARN 中的status=RUNNING
。那么,是什么阻止我在这个 url 上看到 yarn web UI?
我这样做正确吗?谢谢。
【问题讨论】:
【参考方案1】:yarn应用程序--list中显示的跟踪URL是正确的,问题是您无法正确访问它。
确保你的电脑可以到达运行spark驱动代码的节点,检查网络防火墙。
确保防火墙允许用于 URL 的端口。如果不使用动态端口转发。
在大多数情况下,出于安全原因,防火墙端会阻止未知端口,您需要进行动态转发才能查看 URL。
我个人使用putty创建动态端口转发隧道,然后使用“SwitchySharp”chrome扩展查看spark UI。
【讨论】:
谢谢@RBanerjee。我肯定已经在其他集群中运行过 spark 应用程序(通过简单的 ssh 访问),并且只需单击Tracking URL
即可轻松访问 Web UI。火花作业总是从其他集群上的端口4040
开始,在这个集群上。所以,我想知道为什么这个集群不让我访问端口 4040?但它肯定在其他集群中也有效。
无论如何,我愿意尝试动态端口转发。我该如何设置?
这里很难解释,让我试试,使用putty登录,转到更改设置->连接-> SSH->隧道,仅将源端口设置为9999类型Dynmic和Ipv4。然后申请。现在打开 mozilla,设置-> 高级-> 网络设置-> 手动代理-> 仅设置 SocksHost 为 127.0.0.1 和端口为 9999 ,按确定。它应该可以工作,如果您使用的是比 mozilla 更好的 Chrome,您可以尝试 SwitcySharp,如果不起作用,请尝试将 Socks 版本更改为 v5。尝试谷歌搜索以获取有关动态端口转发的更多信息。
另外端口也不一定是4040,如果4040已经被占用,它会动态变化。所以使用正确的端口来打开 UI。【参考方案2】:
第 1 步: 打开通往您机器的 SSH 隧道:
ssh -i ~/.ssh/<KEY_FILE>.pem -L 4040:localhost:4040 -N <USER>@<SERVER_PUBLIC_IP>
第 2 步:
在浏览器中访问localhost:4040
。
【讨论】:
以上是关于如何从 `yarn application -list` 访问 Tracking-URL?的主要内容,如果未能解决你的问题,请参考以下文章
FlinkFlink on yarn 支持指定 application id 吗? yarn.application.id
Flink on Zeppelin 系列之:Yarn Application 模式支持
YARN 查看/停止 application 状态 常用命令
对Hadoop2.7.2文档的学习-Yarn部分Yarn Application