google计算引擎中的作业跟踪url不工作

vuktfyat  于 2021-06-02  发布在  Hadoop
关注(0)|答案(3)|浏览(473)

我使用googlecomputeengine在hadoop上运行mapreduce作业(几乎都是默认配置)。在运行作业时,我得到了表单的跟踪urlhttp://project_name:8088/proxy/application\u x\u y/但无法打开。我忘记配置什么了吗?

tquggr8v

tquggr8v1#

一次更正。你用的是Yarn。所以没有工作追踪者。hadoop1.x中提供了jobtracker。在yarn中,处理层变成了一个通用框架,jobtracker被资源管理器和应用程序主控器取代。你在问题中提到的ui是资源管理器的。对于您的问题,请尝试以下提示。
使用资源管理器示例的公共ip地址,而不是项目名称。
检查8088端口是否打开,以便从外部访问。

x0fgdtte

x0fgdtte2#

另一种(更安全的)方法是使用gcloud compute为部署创建一个ssh隧道,然后启动它。 $ gcloud compute ssh clustername --zone=us-central1-a --ssh-flag="-D 1080" --ssh-flag="-N" --ssh-flag="-n" 您需要用部署的名称替换clustername,并在必要时更改--zone。
从那里,您可以通过它启动chrome,然后访问hadoop作业跟踪url。

$ chrome   --proxy-server="socks5://localhost:1080" \
--host-resolver-rules="MAP * 0.0.0.0 , \ 
EXCLUDE localhost" --user-data-dir=/tmp/clustername
laik7k3q

laik7k3q3#

要详细说明另一个答案中提到的使用google计算引擎vm的“外部ip地址”的选项amal,您可以通过运行 gcloud compute instances describe --zone <your zone> <your master hostname> 以及寻找 natIP .
要打开端口8088,您必须设置防火墙规则来打开该端口,很可能是在您的计算机上 default 谷歌计算引擎网络。您需要指定一个 your.ip.address.here/32 中的地址 --source-ranges 限制传入的流量只允许本地机器拨入vm,否则ip源范围内的任何人都可以访问hadoop页面。
如果你用过 bdutil 要打开集群,有一种更简单、更安全的替代方法;简单地运行

bdutil <your flags used in deployment, like -e hadoop2, --prefix, etc.> socksproxy

使用动态端口转发打开ssh,用作浏览器可以指向的socks5代理。如果您运行的是linux或mac,并且安装了chrome或firefox,那么bdutil还应该打印一个copy/paste命令,用于启动一个新的独立浏览器,该浏览器预先配置为使用socks代理,以便您可以单击所有有用的链接。
如果bdutil没有打印出浏览器命令或者您没有使用bdutil,那么您也可以使用这些指令运行和配置ssh socks代理。基于ssh的socks代理比打开防火墙端口更安全,并且还允许hadoop页面链接工作(否则您必须继续手动将主机名替换为外部ip地址)。

相关问题